原创 MySQL 注入筆記

靶場環境:dvwa , 安全等級 low 判斷存在SQL注入 提交'報錯 id=1 和 id =1 and 1=1 返回的結果一樣,id=1 和 id =1 and 1=2 返回的結果不一樣 構造正確的SQL語句 -- 數字型 id=1 o

原创 Vue頁面部署在Node Koa服務器 Data 數據無法顯示

摘要: 一個Vue頁面部署在Node Koa服務器上,在html裏無法顯示vue data的數據, 接下來我會演示從發現問題 > 排查問題 > 解決問題的過程。如果只想知道如何解決問題,直接看解決問題板塊 關鍵字: Node Vue 無法顯

原创 Web前端錯誤監控

腳本運行時錯誤捕獲 window.onerror 監聽全局錯誤發生,發生錯誤會阻止後續的腳本運行 window.onerror = err => {} a console.log(1) // 不會運行 try - catch

原创 Bash Shell 語法快速預覽

易百Bash Shell教程 創建 shell> touch t.sh // t.sh #!/bin/bash echo "Hello, world" 運行 // linux 下直接運行。在window運行可以使用git Bash、cmd

原创 Node搭建靜態資源服務器

起步 mime 獲取文件類型 npm init -y npm i mime koa app.js /* 1. 獲取請求資源路徑 2. 判斷是否存在 3. 獲取請求資源類型,設置http 響應頭 4. 在http響應頭 body 中返回

原创 Node WebSocket 聊天室

在線演示 開始 npm init -y npm i ws 代碼 app.js ws // 1. 客戶端建立連接,先同步聊天記錄 // 2. 接收到客戶端發來的消息,將新消息通知所有已建立連接的客戶端 const WebSocket = r

原创 造成 Provisional headers are shown 的原因總結

跨域使用了json // 後端設置http頭部, 允許跨域使用json數據格式 ctx.set("Content-Type", "application/json;charset=utf-8"); ctx.set('Acce

原创 Node puppeteer 爬蟲

puppeteer 中文文檔 開始 // 設置國內源,否則下載puppeteer很慢 shell> npm config set registry http://registry.npm.taobao.org shell> npm ini

原创 Docker 語法快速預覽

安裝 基本概念 鏡像: 一個操作系統 容器: 一個操作系統的實例 倉庫: 存儲鏡像的地方 鏡像使用 查找鏡像 docker search 獲取鏡像 docker pull ubuntu:18.04 列出本地鏡像 docker image

原创 密碼安全

密碼泄露 服務器被入侵,用戶信息泄露 防禦:密碼不應該明文保存,使用某種算法加密後保存到數據庫中。 密碼破解 在前端登錄時,不斷嘗試不同密碼登錄,直到成功 防禦:設置密碼試錯次數,達到後增加驗證碼 傳輸過程 使用https 前端進行密

原创 sql注入

原理 我要查詢用戶名爲one的用戶 // username = 'one' String username = request.getParameter("username"); String sql = "select * from us

原创 釣魚網站

原理 攻擊者模仿一個和qq郵箱一樣的網站,如果你把賬號和密碼輸入,確定登錄。這時候你就中招了,這時候賬號密碼會發到攻擊者的服務器那邊。 防禦 看域名 看一個網站是否有備案 是否在網上搜到這個網站或公司

原创 文件上傳漏洞

原理 假如服務器環境是php,用戶更新頭像,卻上傳一個php文件,再去訪問這個php文件路徑,這個php文件就在服務器運行了。後果可想而知。 防禦 文件類型檢測(前端、後端) 權限控制(讓上傳的文件不能有可執行權限)

原创 點擊劫持

原理 攻擊者網頁有 iframe嵌套着目標網站b, 定位到最前面,並設置透明。 防禦 X-Frame-Options: 設置http頭,禁止內嵌。

原创 傳輸安全

http是明文傳輸的,別人可以竊聽http裏的數據,篡改數據。 如:用戶賬號密碼的信息,修改頭部重定向到其他網站 解決方案:升級爲https