更多黑客技能 公众号:暗网黑客
本篇来自三期学员秋水投稿,现在都成了大佬啦~
之所以投稿在社区闲聊版块,是因为测试方法及步骤不可取,只是谈一谈,不想错过这么一个包含,这种漏洞大家都能发现,就是给同学们康康你不止可以手测SQL注入哦。
打码可能会略微狠,挂名china的
目标基本信息:
内部邮件系统
可外网直接访问无限制
不需要去收集目标子域
可根据apache信息对目录及文件进行fuzz,但是比较有限
可适当对内部员工姓名进行收集,尝试弱口令
可对js接口中的文件进行信息搜集,尝试是否存在未授权
文件包含
经过上面的基础测试吧,发现一些后台接口可以访问,但是无法完成操作,这时把思路提到这个单纯的登陆页面上来
随便输入抓取登陆页面的数据包
看到这一堆传输的数据,可能有人会选择性放弃,尤其是,传参貌似还是数组的,乱呼呼的啥玩意。
这个时候你只需要简简单单进行url解个码,你就可能超过了百分之五的人儿。.
这个时候你在仔细的看看数据包,就会离成功又近了一步,大概就包括ua、ip、用户名、密码等等
这里提一下,为啥我说我测试步骤绕了很大的弯弯,就是很明显的某个参数co_language_select,这真的很明显,就像是包含了一个语言的php文件。
直接尝试/etc/passwd,成功包含
至于这里的区分文件包含和文件读取,就是当你包含一个php文件的时候,会首先被解析,如下图
在这里我尝试了好多,因为一个单纯的文件包含,没什么可上传的地方
测试发现如果存在的目录或文件,如果有权限可被包含,如果没有权限则是服务器500,如下图
如果不存在访问的目录或文件,返回包如下
通过这种方式探测了下apache的存在位置,也读取了配置文件,从里面看并没有对日志文件有什么更改,就是默认配置
但是直接包含的时候,返回的数据包告诉我没文件,原因后面会提,至于php.ini文件一致没有找到,后面也会提,黑盒不大可能找到
总体下来各种东西包含的挺多的,就是没啥突破
尝试各种日志文件,不是没文件就是没权限
想试试php的自包含,但是两个难点,这根本模模糊糊的不知道哪个文件属于存在漏洞的文件而且要经过xml解码,再加上linux系统生成tmp文件的规则不通
缓存文件命令php+六位随机字符,这个各位可以试试
windows下的缓存文件名可爆破,linux较难
一时间有点僵局,当不知道怎么做的时候,让我们回到最初的起点,再看看数据包,没有其他功能点,倒是可以试试,根据返回包探测下用户名,然后再通过一些弱口令进入系统,去寻找一个上传点
此操作费时费力可能没回报作为此选项,来尝试大家都耳熟能详SQL注入?
这里一定是字符型的,加个单引号
没什么变化。。放弃吧?猜测经过一层xml处理会不会有些不太一样呢?
惊喜来了哦
尝试进入系统
放包后会发现,跳转系统页面,但是细心一点会发现没有session
这也导致了接下来会被直接302跳转登录超时
其实没太细究,应该是多了某些垃圾东西,我后面才发现,直接抓包,尝试万能密码就可以登录来着,可能是我测试数据包多了,有些自己加的垃圾东西,这里可略过,被自己菜了一把
后面测试了下还是个未授权的上传,不需要cookie
直接上传的位置废掉了,
慢慢找,再下面的HTML编辑中找到了个编辑器
试了下还是没办法直接传php的,那正好文件上传+文件包含=>>RCE
其他步骤省略了,shell拿到
连接出了一点点问题,一路飙红
可能是服务器对流量有检测,可以随便做一下流量混淆,蚁剑都自带的
成功连接
未授权上传证明
截图