日韩久久网,国产精品免费综合一区视频,国产精品久久久久久亚洲小说,国产精品自拍合集,久久久精品免费视频,www.草草影院

技能帖|談?wù)凞jango的CSRF插件的漏洞


django框架做的網(wǎng)站_制作框架網(wǎng)頁_網(wǎng)站框架搭建需要什么技術(shù)

網(wǎng)站框架搭建需要什么技術(shù)_django框架做的網(wǎng)站_制作框架網(wǎng)頁

今年十月份我的第二本書《基于的電子商務(wù)網(wǎng)站設(shè)計》出版了,在這本書中我不僅介紹了如何利用框架搭建電子商務(wù)網(wǎng)站,也論述了如何利用的類對所創(chuàng)建的電子商務(wù)產(chǎn)品進(jìn)行接口測試。

在書寫極樂口測試代碼過程中,我遇到的最大的困難就是如何通過測試程序繞過的防止CSRF攻擊的插件,通過近一個多月的努力我終于解決了這個問題,但是同時也揭露了框架的防止CSRF攻擊的插件的漏洞。首先我們來看一下什么是CSRF攻擊。

1、什么是CSRF攻擊?

我們假設(shè)一個網(wǎng)站的HTML代碼如下:

網(wǎng)站框架搭建需要什么技術(shù)_django框架做的網(wǎng)站_制作框架網(wǎng)頁

大家都知道,采用驗證碼的目的是為了防止“黑客”,利用機(jī)器來通過窮舉的方法來試圖登錄系統(tǒng)。檢查驗證碼是否正確用的往往是前端做的判斷。這樣,“黑客”可以采用自己的網(wǎng)站建立如下頁面:

django框架做的網(wǎng)站_網(wǎng)站框架搭建需要什么技術(shù)_制作框架網(wǎng)頁

大家可以看見,在這段代碼中驗證碼沒有了,form的變成了絕對路徑,這樣“黑客”就繞過了前端的驗證,可以對自己代碼進(jìn)行編寫自動化腳本實現(xiàn)用窮舉的方法來試圖登錄系統(tǒng)。這個就是CSRF攻擊。

2、的CSRF插件是如何解決CSRF攻擊的

下面讓我們來看一下的CSR插件是如何解決CSRF攻擊的。利用了一個名為..csrf.的中間件(可以在的.py中設(shè)置)利用CSRF令牌的方式來控制。具體方式生成一個一百個字符的隨機(jī)字符串作為CSRF令牌,在表單中產(chǎn)生一個名為的表單,把這個CSRF令牌的值放入這個字段中,然后在提交這個表單的時候產(chǎn)生一個名為的,這個的值也是CSRF令牌的值。

網(wǎng)站框架搭建需要什么技術(shù)_制作框架網(wǎng)頁_django框架做的網(wǎng)站

后臺檢查如果表單的值與的的值一致,則返回200返回碼,進(jìn)入登錄后的頁面,否則返回403返回碼,拒絕進(jìn)入系統(tǒng)。由于這個CSRF令牌是隨機(jī)生成的一百個字符的字符串,“黑客”是很難猜到這個字符的,所以就達(dá)到了CSRF的攻擊防護(hù)。

3、的CSRF插件的漏洞

3.1通過類破解

但是這個CSRF插件是有漏洞的,在頁面.html頁面載入后,黑客可以通過某種手段(比如正則表達(dá)式)獲得這個CSRF令牌(即中的一百個字符值),然后構(gòu)造一個名為的,名為剛才過的的CSRF令牌值,這樣就有了下面的代碼。

網(wǎng)站框架搭建需要什么技術(shù)_制作框架網(wǎng)頁_django框架做的網(wǎng)站

代碼“ =str(re.(r"name=\'\' =\'(.+?)\'/>",text))”是通過re.正則方法獲得CSRF令牌,存在變量中,由于用這個方法獲得的值是“["CSRF令牌值"]”格式的,也就是說去前面多了個“["”,后面多了個“"]”,所以后面用語句“ = [2:-2]”過濾出來,然后利用的post方法,先構(gòu)造post參數(shù):“={"":"","":"","":}”,這里“"":”讓表單仍舊為值。通過 = {"":}構(gòu)造值,通過=作為post參數(shù)傳給后臺。這樣表單的值與的值是一致的,所以,登錄通過。

后來,我驚奇的發(fā)現(xiàn)不用這么麻煩,我們直接把表單的值與的值設(shè)置相同,即:

制作框架網(wǎng)頁_網(wǎng)站框架搭建需要什么技術(shù)_django框架做的網(wǎng)站

3.2通過框架破解

下面的代碼是利用做基于GUI的自動化測試代碼。

網(wǎng)站框架搭建需要什么技術(shù)_制作框架網(wǎng)頁_django框架做的網(wǎng)站

代碼通過 =self..("").("")獲取表單的值,通過elf..({"name":"","":})把這個值放入到名為的中。

3.3通過破解

在也可以破解,如下圖:

django框架做的網(wǎng)站_網(wǎng)站框架搭建需要什么技術(shù)_制作框架網(wǎng)頁

通過正則表達(dá)式提取器獲取.html中的值。

網(wǎng)站框架搭建需要什么技術(shù)_制作框架網(wǎng)頁_django框架做的網(wǎng)站

把獲得的值放入名為的中

制作框架網(wǎng)頁_django框架做的網(wǎng)站_網(wǎng)站框架搭建需要什么技術(shù)

把獲得的值仍舊作為表單參數(shù)傳給后臺處理。

3.4通過破解

在中,錄制完畢,腳本就直接把表單參數(shù)作為名為的傳給后臺,不用做任何代碼修改。正是不可思議。

制作框架網(wǎng)頁_django框架做的網(wǎng)站_網(wǎng)站框架搭建需要什么技術(shù)

文:顧翔

圖源:網(wǎng)絡(luò)


主站蜘蛛池模板: 婷婷综合丁香 | 蜜桃视频一区二区三区四区 | 精品免费国产 | 99伊人精品 | 日韩avapp| 成人精品亚洲人成在线 | 亚洲国产日韩在线人成下载 | 看免费一级毛片 | 国产日韩欧美自拍 | 国产成人精品男人的天堂538 | 久久福利资源国产精品999 | 欧美日a| 97国产影院 | 色亚洲天堂 | 清纯唯美亚洲综合日韩第 | 婷婷免费在线 | 国产裸舞福利在线视频合集 | 青青草国产青春综合久久 | 欧美日韩中文在线观看 | 4444免费观看 | 激情影院网站 | 99久久亚洲综合精品网站 | 欧美福利在线视频 | 久久99国产精品二区不卡 | 国产高清精品自在线看 | 六月色丁香 | 国产三级理论 | 久草综合在线观看 | 国产福利在线永久视频 | 久99久热只有精品国产99 | 久久久久中文 | 久久天天 | 天堂一区二区三区精品 | 久久精品国产国产精品四凭 | 色天天天天综合男人的天堂 | 日本精品久久久中文字幕 | 四虎国产在线 | 成片免费观看视频在线网 | 91亚洲国产成人久久精品网站 | 日韩综合久久 | 日本高清精品 |