运用Python CGIHTTPServer绕过注入时的CSRF Token防护

访客5年前黑客资讯948

CSRF tokens是服务器生成的一串随机值,其主要作用是防止表单重复提交以及恳求假造进犯。由于该生成值具有随机性,一次性,而且是根据服务器端的前一个恳求生成的,因而黑客简直不可能假造它。
Burp Suite
虽然无法假造,但并不代表咱们就不能绕过它。这儿,不得不提及一款web浸透神器Burp Suite。在Burp上有多种装备其运用宏来绕过HTML表单上CSRF tokens的办法,例如咱们能够运用Burp Active Scans,Burp Intruder,Burp Repeater,乃至Burp Proxy。还有专门用于Intruder模块的Grep-Extract和pitchfork进犯类型。假如你还觉得不行,Burp完美的扩展性支撑你开发自己的Burp插件。
除了Burp外,另一款神器Sqlmap也为咱们供给了相似的功用。Sqlmap中有一个–csrf-token和–csrf-url参数,可用于绕过CSRF tokens。或许你也能够像我刚说的那样,装备Burp运用–proxy经过Burp运转sqlmap。
但今日我要介绍另一种绕过办法,即运用Python CGIHTTPServer。
试验环境
我的测验环境是一个简略的PHP+mysql,我能够登录并拜访受限区域。我在这儿上传了PHP代码,你能够下载进行测验。代码可能写的并不完美,但用于测验意图应该问题不大。
CSRF tokens是随机生成的数字的SHA256哈希值,而且每个HTTP恳求的哈希值都不同。

因而,假如不对Burp进行针对性的装备,它将无法检测到该问题的存在。

sqlmap也相同。

我运用–technique,–dbms和-p选项来加快扫描。由于这仅仅一个简略的根据布尔的SQLi,因而–level 1(默许值)就足够了。可是,假如凭证不正确的话,则必须将–risk设置为3才行。由于只要危险等级为3的情况下,根据布尔的SQLi才干被检测到。根据布尔的SQLi是十分危险的,由于它们能够使任何条件为真。例如当UPDATE或DELETE句子的WHERE子句存在这种注入,进犯者就能够完成更改数据库中用户暗码,转储凭证等。
这儿,我运用sqlmap的SQLi –csrf-token =“mytoken”选项,检测到了一个根据OR的SQLi:

这是一个登录验证表单,明显这儿是一个SELECT句子,这意味着危险等级3没有损害。
当然,假如你有有用凭证,它还简单遭到根据AND的SQLi进犯。但即便我具有有用凭证,我也会先用另一个(有用)用户名来进行测验,先找到根据OR的SQLi。这样做能够防止账户被以外的确定。
此外,运用sqlmap的SQLi –csrf-token =“mytoken”选项,我还检测到了一个根据AND的SQLi:

CGIHTTPServer
首要,咱们来创立CGI脚本:

这个脚本需求创立在folder_whatever/cgi-bin/目录中。咱们将其称为mask.py,并保证其是可执行的。创立完成后,咱们从“folder_whatever”目录中运转“python -m CGIHTTPServer”。默许情况下,它将侦听8000/tcp端口。

你能够运用正确的暗码对其进行测验:

以及运用一个过错暗码:

现在,咱们无需对Burp和sqlmap进行特定装备,就能轻松的检测到安全漏洞。

相关文章

第六届全国网络安全大赛代码审计全解

 XDCTF是一项面向全国在校大学生的信息安全类竞赛,由西电信息安全协会与网络攻防实训基地联合举行。旨在增强学生对网络常识的爱好,进步学生学习网络技术的积极性,培育学生的立异 认识、协作精力和理论联系...

TA505在最新攻击活动中使用HTML, RAT和其他技术-黑客接单平台

TA505以运用歹意垃圾邮件和不同的歹意软件来进犯金融安排和零售企业而臭名远扬。研究人员在曩昔2个月检测到与TA505相关的进犯活动。在该安排的最近活动中,运用了HTML附件来传达歹意XLS文件,XL...

一次射中可疑要挟情报的剖析探究

由于最近一段时刻里”驱动人生”这个病毒还挺抢手,最近发现经过一些安全厂商的设备发现内网里边有许多的主机都中了这个病毒瞬间吓哭了。后续经过对主机进行查看,竟然没有发现什么问题,后续发现是安全设备命中了一...

SP eric靶机通关攻略-黑客接单平台

咱们好,今日给咱们带来的靶机是SP eric,这个靶机有两个flag,咱们的方针便是把它们都找出来,flag的方位现已供给,如下: · /root/flag.txt · /root/eric/flag...

根据Session的身份盗取

一、Session是什么 暗码与证书等认证手法,一般用于登录进程。用户登录之后,服务器通常会树立一个新的Session保存用户的状况和相关信息,用以盯梢用户的状况。每个Session对应一个标识符Se...

Python中eval带来的潜在危险

eval是Python用于履行python表达式的一个内置函数,运用eval,能够很便利的将字符串动态履行。比方下列代码: >>> eval("1+2") >>>...