Node常見的安全處理方法有哪些

這篇文章主要介紹“Node常見的安全處理方法有哪些”,在日常操作中,相信很多人在Node常見的安全處理方法有哪些問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Node常見的安全處理方法有哪些”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

衡陽縣網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián),衡陽縣網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為衡陽縣成百上千提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站制作要多少錢,請找那個售后服務(wù)好的衡陽縣做網(wǎng)站的公司定做!

預(yù)防方式

1、 sql注入

這是一個最原始也最簡單的攻擊, 從 web2.0 開始有了人機交互后就出現(xiàn)的一種攻擊方式

其主要是通過輸入 sql 片段, 最終拼接成一段攻擊的 sql 代碼

當我們使用 node 連接到數(shù)據(jù)庫的時候, 通常會在 node 端寫 sql語句來進行數(shù)據(jù)庫查詢, 例如下方

-- 這是一個簡易的登錄判斷sql語句, 輸入 username 和 password 在 users 表中進行用戶登錄驗證,  然后獲取用戶的地址和年齡
select address, age from users where username=${username} and password=${password}

但是如果我在 username 中做點手腳 使他傳入的是一個sql語句這樣就極其的危險  【相關(guān)教程推薦:nodejs視頻教程、編程教學】

-- username 輸入為 ali -- 
-- 上面這段 sql 就會被解析成這樣 
select address, age from users where username=ali -- and password=${password}

看上面的代碼片段可以發(fā)現(xiàn), -- 在sql中是屬于注釋的存在, 所以如果當我在 sql 查詢動態(tài)獲取用戶輸入的 username 字段中, 如果結(jié)尾是 -- 就會把后面password的條件驗證去掉

也就是代表用戶無論輸入什么 password, 只要 username 字段在數(shù)據(jù)庫中存在就可以拿到對應(yīng)的信息

當然攻擊者也可以在后面繼續(xù)拼接刪庫的 sql 語句,這其實是更加危險的

-- username 輸入為 ali; delete from users where username="ali" --
-- 就會拼接成下面這種語句 這是極其危險的
select address, age from users where username=ali; delete from users where username="ali" -- and password=${password}

處理方案

在 node 開發(fā)中連接數(shù)據(jù)庫, 拼接sql語句是使用 MySQL 這個npm包, 所以在這個包中也有對應(yīng) sql注入 攻擊的處理函數(shù)

可以使用 mysql.escape函數(shù) , 對所有來源于前端的數(shù)據(jù)進行包裹一層, 這個函數(shù)會把 -- 或者其他的特殊字符進行轉(zhuǎn)義,這樣就不會出現(xiàn)在sql語句中會有注釋的情況

2、xss 攻擊

這個攻擊我們作為前端應(yīng)該是很熟悉的了

其攻擊方式就是在頁面的展示內(nèi)中摻雜 Js 的代碼以獲取網(wǎng)頁信息

在我們開發(fā) Node 服務(wù)端的時候, 對前端傳來的數(shù)據(jù)統(tǒng)統(tǒng)處理一下就行了 ,也就是進行特殊字符轉(zhuǎn)義 (所有的轉(zhuǎn)義字符后都需要 加上;這個特殊符號 由于無法演示 我截圖的時候去掉了

Node常見的安全處理方法有哪些

處理方案

開發(fā) Node 服務(wù)端,使用 xss 這個npm包,把前端傳入的數(shù)據(jù)都使用這個包裹一下就行。

3、密碼加密

假如我們數(shù)據(jù)庫被入侵, 其中最不應(yīng)該泄露的就是用的信息了,因為攻擊者可以拿著用戶的賬戶密碼去嘗試登錄其他的系統(tǒng)。

處理方式

這個就需要在數(shù)據(jù)庫不用明文存儲用戶的密碼信息, 在存入數(shù)據(jù)庫之前把密碼通過自定義 key 加密一下, 當然這個 key 需要你自己獨享 不能泄露,或者通過其他密碼算法加密也是可以的。

到此,關(guān)于“Node常見的安全處理方法有哪些”的學習就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

網(wǎng)頁名稱:Node常見的安全處理方法有哪些
分享鏈接:http://bm7419.com/article20/gocdco.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標簽優(yōu)化、定制開發(fā)品牌網(wǎng)站制作、靜態(tài)網(wǎng)站、網(wǎng)站設(shè)計

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運營