成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

淺談PHP表單安全中Token的實際應用

安全 漏洞
以前做等級保護的時候漏掃經常掃描出來一些網站有CSRF的漏洞,由于一般掃描器提示為中風險必須要解決經常和開發人員扯皮要怎么改怎么改,每次都描述的不清楚經常感覺心累。

背景

以前做等級保護的時候漏掃經常掃描出來一些網站有CSRF的漏洞,由于一般掃描器提示為中風險必須要解決經常和開發人員扯皮要怎么改怎么改,每次都描述的不清楚經常感覺心累。

最近看到OWASP的一本《安全測試指南第四版》的書就隨手翻了二頁其中談到了關于會話管理測試的一欄目比較感興趣就從網上隨便下載了一個開源的CMS做一下黑盒測試,練練手萬一失業了還能轉化寫寫代碼做做測試,過程中發現CMS對于很多表單請求都采用了Token認證做的挺好的于是寫個筆記方便日后來看。

抓包分析

架起代理burpsuit開啟準備大干一場,首先找到了一個表單的提交頁面,表單主要采用Post方法進行提交,隨便填了點數據就提交了。

php表單安全中Token的實際應用

通過burpsuit攔截下來之后看一下各個參數

php表單安全中Token的實際應用

通過Post提交到一個Task的action,看這么多參數萬一有過濾不嚴格的情況方法說不定能出現一些XSS或者sql注入的漏洞于是就稍微看了一下就發送到了scanner。

Proxy放過之后頁面卻出現了異常提示Token驗證不通過。

php表單安全中Token的實際應用

然后認真一看發現除了一些表單提交的參數外還有一個token=20e168c64ce1f1f98f89e4c8ff9e3aba的字段。表單提交之后response數據包當中也有一個新的token”:”e40fe4b3afedc40f95903fef92eb79ed,這樣導致這一個請求包只能請求一次,Burpsuit Scanner基于原有請求包的參數測試的掃描模式就基本上沒有什么用了。

php表單安全中Token的實際應用

Token普遍有二個作用:

  • 防止表單重復提交
  • anti csrf攻擊(跨站點請求偽造)

由于token具有較好的隨機性,不容易被猜測出來具有良好的安全性,于是看一下源碼當中的實現。

源碼分析

通過請求的路徑找到對應的php文件,當請求這個表單的時候會自動執行$label->token()這么一個方法

php表單安全中Token的實際應用

查看label.php的源碼,token這個方法構造hidden表單定義了一個token的變量后賦值Core\Func\CoreFunc::$token

php表單安全中Token的實際應用

繼續再查看CoreFunc的源碼,包含了對token生成的過程

調用microtime生成毫秒數之后打散成數組增加隨機性,通過substr提取數字與隨機數相乘之后計算md5保證了token的不可預測性。

Token的隨機性取決于當前時間、rand隨機、md5散列算法

php表單安全中Token的實際應用

將生成的token存如session服務器會話當中

php表單安全中Token的實際應用

提交的表單主要由task.php處理task類當中只是讀取了session中userid的字段,使用父類Content的 parent::action($jump, $commit)方法進行驗證通過之后再處理表單數據。

php表單安全中Token的實際應用

一層又一層,感覺真復雜。Content類繼承了Controller中的checkToken()檢查

Token無論驗證是否通過都會刪除當前token的值保證了不會被重用

php表單安全中Token的實際應用

總結

session應用相對安全但也繁瑣,同時當多頁面多請求時必須采用多Token同時生成的方法,這樣占用更多資源,執行效率會降低。但是對安全性的提升是明顯的,對于表單的重復提交、基于單個數據包的變形掃描、解決CSRF漏洞也不是一種不錯的方式。

責任編輯:趙寧寧 來源: Freebuf
相關推薦

2018-10-06 05:00:53

2009-11-13 13:30:44

路由器技術

2009-12-02 19:51:54

PHP Switch語

2022-09-08 09:59:23

API網絡安全

2009-11-26 09:06:35

PHP遞歸數組

2010-06-17 10:22:47

PHP

2010-04-23 08:56:12

Oracle DRCP

2009-07-03 13:24:56

JSP表單

2009-08-20 09:41:36

2009-12-01 14:46:16

PHP mb_subs

2010-05-31 14:59:36

PHP + MySQL

2009-11-26 15:35:43

PHP函數eregi(

2009-06-29 17:17:57

Spring

2010-06-28 15:52:17

2011-02-28 13:38:45

PHP垃圾回收算法

2010-01-06 15:21:00

軟交換技術

2011-05-18 16:02:08

XML

2021-08-28 10:06:29

VueJavascript應用

2009-11-25 15:26:03

PHP中反饋表單

2021-11-30 22:51:36

機器學習大數據技術
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 免费一区二区三区 | 欧美极品在线观看 | 亚洲综合色 | 久久国产成人 | 欧美v免费 | 欧美在线观看一区 | 亚洲精品久久久久久宅男 | 999国产精品视频免费 | 午夜伦理影院 | www.国产视频 | 成人欧美一区二区三区在线播放 | 蜜桃臀av一区二区三区 | 国产片侵犯亲女视频播放 | 超碰97人人人人人蜜桃 | 91中文字幕在线观看 | 精品国产乱码久久久 | 精品毛片 | 日本成年免费网站 | av一区二区三区在线观看 | 欧美日韩不卡合集视频 | 亚洲一区二区国产 | 2018国产大陆天天弄 | 国产一区精品 | 日韩精品视频一区二区三区 | 成人羞羞国产免费视频 | 成人国产一区二区三区精品麻豆 | 中日韩av | 色播99 | 高清视频一区 | 成人免费视频观看 | 国产一区二区三区高清 | 91精品亚洲 | 欧美偷偷 | 色综合一区二区 | 中文字幕第一页在线 | 精品久久国产 | 成人精品一区 | 国产高清视频一区 | 爽爽免费视频 | 成人欧美一区二区三区黑人孕妇 | 精久久久 |