小众漏洞合集
知识面决定攻击面!
XPath注入
参考文章: XPath注入详解
前提:了解XPath语法,可以在这里——W3C 学习 XPath 语法
概念:XPath注入攻击,是指利用XPath 解析器的松散输入和容错特性,能够在 URL、表单或其它信息上附带恶意的XPath 查询代码,以获得权限信息的访问权并更改这些信息。XPath注入攻击是针对Web服务应用新的攻击方法,它允许攻击者在事先不知道XPath查询相关知 识的情况下,通过XPath查询得到一个XML文档的完整内容。Xpath注入攻击本质上和SQL注入攻击是类似的,都是输入一些恶意的查询等代码字符串,从而对网站进行攻击。
示例:
//users/user[loginID/text()=’abc’ and password/text()=’test123’] 。 这是一个XPath查询语句,获取loginID为abc的所有user数据,用户需要提交正确的loginID和password才能返回结果。如果黑客在 loginID 字段中输入:' or 1=1 并在 password 中输入:' or 1=1 就能绕过校验,成功获取所有user数据 //users/user[LoginID/text()=''or 1=1 and password/text()=''or 1=1]
有回显的注入: $xpath = "//users/user[username/text()='".$_POST["username"]."' and password/text()='".$_POST["password"]."']"; 当构造 Username: ' or '1' = '1 Password: ' or '1' = '1 那么整个 XPath 查询语句就变成了这个样子 $xpath = "//users/user[username/text()='' or '1' = '1' and password/text()='' or '1' = '1']"; 类似于SQL注入 盲注: Username:1' or substring(username(/*[position()=1]),1,1)='r' or '1'='1
CRLF注入
参考文章: CRLF注入 CRLF注入(响应截断)挖掘技巧及实战案例全汇总
前提:CRLF指的是CR回车LF换行。CR、LF的URL编码分别为:%0d、%0a
在HTTP规范中,行应该使用CRLF来结束。首部与主体由两个CRLF分隔,浏览器根据这两个CRLF来获取HTTP内容并显示。 就比如下面访问百度的返回包:
由此可见,浏览器处理返回包的时候,区分响应头与数据部分的标识就是响应包中第一个空行(两个CRLF)出现的位置 因此,当服务器对客户端传输的数据过滤不严并且会将数据放在返回包里传输给客户端的时候,攻击者一旦向请求行或首部中的字段注入恶意的 CRLF ,就能注入一些首部字段或报文主体,并在响应中输出
最常见的两种情况是使用输入参数 创建 Cookie 和 302 跳转location 处。 记得之前有一次在挖洞的时候,Cookie字段中,会存储一个 url=http://xxx.com,但是当时也没接触过 CRLF 注入,所以也就没测
寻找这一类漏洞,主要观察请求包中那些数据会出现在响应包中 比如 发起一个 GET 请求: www.xx.com?url=http://aa.com,并且在响应包中会返回一个响应头 Location: http://aa.com,那么就可以进一步测试是否存在 CRLF 注入
构造:
www.xx.com?url=http://aa.com%0d%0aCrlf:Ture查看是否响应里会出现:
Location: http://aa.com Crlf:Ture
若存在,则可以用来造成 XSS :
www.xx.com?url=http://aa.com%0d%0aX-XSS-Protection:0%0d%0a%0d%0a<svg/onload=alert(!)>
当然很多网站都会做过滤,可以尝试以下url多次编码或者十六进制编码绕过一下,绕不过也就没办法了 之前测试某丰网站的时候,有任意 URL 跳转,提交的时候说不收,然后就试了一下有没有 CRLF 注入,结果毛都没有,直接给我过滤了,出现%0d%0a直接给我替换成空,要是后面接了其他字符,他返回包的 Location 都给你删了,太难了,新手到底该怎样挖洞?
DNS 域传送漏洞
参考文章:DNS域传送漏洞
原因: DNS服务器分为:主服务器、备份服务器和缓存服务器。在主备服务器之间同步数据库,需要使用 DNS 域传送 。域传送是指后备服务器从主服务器拷贝数据,并用得到的数据更新自身数据库。 若DNS服务器配置不当,可能导致匿名用户获取某个域的所有记录。造成整个网络的拓扑结构泄露给潜在的攻击者,包括一些安全性较低的内部主机,如测试服务器。凭借这份网络蓝图,攻击者可以节省很少的扫描时间。
检测方法:
Windows
- nslookup 基本用法
通过 DNS 服务器查询域名的 IP 地址
nslookup cnblogs.com 114.114.114.114 # 也可以不指定 DNS 服务器,使用默认的即可
反向查询一个 IP 地址对应的域名(好像只能通过 IP 查到 DNS 服务器的域名)
nslookup -type=ptr 8.8.8.8
查询某域名使用的 DNS 服务器名称
nslookup -type=ns cnblogs.com
检测是否存在 DNS 域传送漏洞
nslookup -type=ns 域名 # 查询域名使用的 DNS 服务器,当然也可以不使用该步骤,直接使用默认的 DNS 服务器即可 nslookup server DNS服务器域名 # 设置 DNS 服务器为刚刚查询到的 ls 要检测的域名 # 查询 DNS 服务器下对应域下的所有域名
当出现大量数据时即表示存在 DNS 域传送漏洞,上面的例子为不存在
Linux
- dig 基本用法
通过域名查 IP
dig 域名
查询某域名使用的 DNS 服务器名称
dig ns 域名
检测是否存在 DNS 域传送漏洞
dig axfr @DNS服务器 域名 # 使用 axfr 参数,能得到域传送数据,从而检测 DNS 域传送漏洞
当结果中存在 XFR size 字符串,即代表该服务器存在该漏洞 以下结果表示 cnblog 不存在 DNS 域传送漏洞:
- 经典漏洞合集整理备份
- Apache Tomcat安全漏洞列表及整改建议合集
- struts 漏洞合集
- SQL注入天书—注入漏洞全接触
- 推理 arm-linux-gcc/g++ v3.4.1 版本的一个漏洞
- 极客学院录制课程合集
- iOS审核被拒合集
- [04] HEVD 内核漏洞之IntegerOverflow
- 常见SQL Server 2000漏洞及其相关利用
- 织梦系统免疫漏洞安全设置通用方法
- 上传漏洞--前端绕过
- CVE-2017-8464 LNK文件(快捷方式)远程代码执行漏洞复现
- Apache SSI 远程命令执行漏洞复现
- SQLServer2000桌面引擎默认配置空口令漏洞
- Discuz交友插件漏洞附EXP
- 最近发现的两个漏洞
- 用代码来细说Csrf漏洞危害以及防御
- 当黑客就入门 ZenTaoPMS.6.2.stable任意文件上传漏洞复现
- [原创]Yeepay网站安全测试漏洞之跨站脚本注入
- 淘宝网漏洞XSS