zoukankan      html  css  js  c++  java
  • XXE靶机实战-vuluhub系列(三)

    这是vulnhub靶机系列文章的第三篇,具体下载连接去vulnhub或者百度、谷歌搜搜就好...开始进入主题

    首先xxe是xml外部实体注入漏洞,可通过进入外部实体进行攻击,例如读取敏感文件,扫描端口等等,实战中感觉出现几率不是很大,唯一一次遇到是某司面试题,当时团队小伙伴遇到了,运气爆棚的我找到了xxe漏洞,顺道内部交流了下hahaha,不扯淡了,开始吧...

     

    #001 寻找靶机ip

    打开kali,用netdiscover -i eth0,扫描一下eth0网卡中存活的ip,发现靶机ip

    #002 靶机渗透

    然后用nmap扫描一下端口情况,开启了80端口,访问一波只是默认页面,没啥用处

     Nmap扫出了有robots.txtxxeadmin.php的目录,尝试访问一波robots.txt,发现一下目录,尝试过访问admin.php访问不了,可能是权限问题。

    访问一下xxe目录,发现是一个登录的页面,尝试简单的弱口令,都不成功

    点击登录抓包分析一下,发现请求的是一段xml的内容,尝试构造xmlpayload

    直接构造外部实体注入的payload,读取/etc/password/目录下的内容,发现能能读出来,证明肯定存在xxe漏洞

    我们再尝试利用php的伪协议filter去读取xxe.php的源码,base64解码之后,并没有发现什么可利用的信息,我们利用这个思路去读取admin.php的源码

    利用filter协议读取admin.php的源码,发现还是一段base64加密的内容

    Base64解码发现是一个php写的登陆页面,并且发现了usernamepassword的信息

    passowrd的内容md5解密一下,得到password的明文为admin@123尝试登陆一下xxe的登陆页面,但是失败了

    刚才用nmap扫的时候扫到了xxe目录下还有一个admin.php,尝试访问一下,并用刚才得到的usernamepassowrd登陆上去,发现了Flag的地址

    点击Flag的链接,但是发现访问不了,但是刚才的思路,我们是可以读取它的源码的

    直接读取flag文件的源码,去base64解密后,发现文件源码明文内容

     

     

    源码:

     

     

     

    源码里发现还有一段加密的内容,看着像base64加密,但是解不出来,然后又尝试base32解密一下,发现解密出来的内容是一层base64编码,解码为 /etc/.flag.php

    继续利用伪协议读取/etc/.flag.php文件的内容,又是base64编码,去解码

    解码出来的内容是一堆完全不认识的字符

    想了想,文件名好像是php的文件,这会不会是变形的php代码?本地用phpstudy搭建了环境,创建xxe.php的文件,将代码复制进去

     然后访问127.0.0.1/xxe.php,发现一堆报错信息,但是在最后一行发现了flag,这里就成功拿到flag,打完收工

     

  • 相关阅读:
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    Javascript事件机制
    DOM模型
    MVC与三层架构解析学习
    BOM基础
    Javascript对象
    Javascript关键字,条件语句,函数及函数相关知识
    单词首字母大写
    HTML5.1 新增的14项特性学习
  • 原文地址:https://www.cnblogs.com/PANDA-Mosen/p/13183950.html
Copyright © 2011-2022 走看看