QQ乐园首页-提供最新QQ技术网以及QQ业务免费开通乐园网!

搜索

使用Python CGIHTTPServer躲避开CSRF tokens实现SQL注入

2017-11-4 02:07| 发布者: Hide| 查看: 98| 评论: 0

摘要: 一、媒介在Burp上,咱们能够应用多种方法来设置装备摆设宏(macro),以绕过HTML表单上的CSRF tokens,这样一来,咱们就能够应用Burp Active Scans、Burp Intruder、Burp Repeater,乃至也能够应用Burp Proxy停止渗 ...

一、媒介
在Burp上,咱们能够应用多种方法来设置装备摆设宏(macro),以绕过HTML表单上的CSRF tokens,这样一来,咱们就能够应用Burp Active Scans、Burp Intruder、Burp Repeater,乃至也能够应用Burp Proxy停止渗入渗出测试。咱们也能够找到专为Intruder模块计划的Grep-Extract和pitchfork入侵攻击范例。固然,假如咱们乐意的话,也能够开发自己的Burp Extension。Sqlmap上也有-csrf-token和-csrf-url参数来敷衍相似场景,假如不应用这些敕令,咱们能够依照以前描写的方法来设置装备摆设Burp,而后在sqlmap中经由过程-proxy参数与Burp共同应用。
在本文中,咱们会先容另一种方法,那便是应用python中的CGIHTTPServer来实现这一义务。
二、试验情况
咱们结构了一个异常简略的PHP/mysql情况,登录后,你能够拜访某个受限地区。你能够拜访此链接获得试验所用的PHP代码,以便在其余场景做些改动或调剂。不要在乎代码细节,究竟我并非PHP专家,只是热衷于搭建满意必要的测试情况罢了。试验情况有助于咱们懂得测试进程,在实际场景中探求真正目的。
试验所用的CSRF tokens为一串随机天生的SHA256散列字符串,每一个HTTP哀求都对应一个分歧的tokens。

三、面对的成绩
不颠末特别设置装备摆设时,Burp不会检测到这个成绩。

同理,没有应用-csrf-token参数时,sqlmap也力所不及:

我应用了–technique、–dbms和-p参数来加速扫描速率。由于这是一个简略的基于布尔值的SQL注入(boolean-based SQLi),咱们只必要应用默许的-level 1参数便可。但咱们必要将-risk设置为3,由于只要应用较高的风险数值,咱们能力测试OR范例的SQL注入(OR boolean-based SQLi)场景。OR范例的SQL注入异常风险,由于这类语句能够使任何前提的成果为真。好比,在应用WHERE子句的UPDATE或DELETE语句中,应用这类注入方法,你很有可能会不小心更新数据库中一切用户的暗码,或许导出用户的凭证表,而这恰是你在渗入渗出测试中应当努力防止的成果。
在sqlmap中,咱们能够应用–csrf-token=”mytoken”参数检测到OR范例的SQL注入:

由于这是一个登录验表单,很显著会对应一条SELECT语句,这意味着应用最高的风险品级3不会带来任何风险。
固然,假如你有有用的凭证(实际渗入渗出测试中你很难具有这个前提),此时该场景也会受AND范例的SQL注入(AND boolean-based SQLi)影响。但是,即使我领有有用的凭证,我起首照样会应用另一个(有用的)用户名来探求可用的OR范例SQLi,免得不小心锁定账户(假如存在账户锁定机制的话)。
在sqlmap中,咱们能够应用–csrf-token=”mytoken”来检测AND范例的SQL注入:

四、应用CGIHTTPServer

创立以下CGI剧本:

咱们将该剧本命名为mask.py,存放在xxx/cgi-bin/目次中,同时请确保.py文件为可执行文件。创立该文件后,咱们必要在xxx目次中运转python -m CGIHTTPServer敕令。默许情况下,服务器会在8000/tcp端口上监听。
http://www.qqhello.net/
普及network security意识 
不要对network security一无所知





鲜花

握手

雷人

路过

鸡蛋
返回顶部