getshell很简单,目标开放7070/8080端口,都是web服务,7070存在jboss漏洞拿到交互式shell。

拿到shell之后首先做了一些常规的信息收集

目标环境

Linux HSC-V-V-demo 3.10.0-693.11.1.el7.x86_64 #1 SMP Mon Dec 4 23:52:40 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

root权限!!!反正这个内核也是存在漏洞的就算普通用户权限也不慌

外网开放7070/8080

内网ip 10.5.7.47 Mask 255.255.0.0

反弹shell

这个地方让我很头疼,做了一些尝试也是没有成功。这个地方要明确我们是在内网环境中肯定是要一个正向shell,我去连接目标机器。

我就是没搞明白这个道理踩了一些坑。

说道反弹shell我一想肯定是msf神器啊,于是呼msfvenom生成了各种后门木马…shell.elf、jsp木马、python一句话等等。各种反弹就是弹不回来,但是我并没有屈服

这里执行不了,后面的nc也是执行不了,不知是什么原因。

http://www.52bug.cn/%E9%BB%91%E5%AE%A2%E6%8A%80%E6%9C%AF/3962.html
https://www.waitalone.cn/linux-shell-rebound-under-way.html
https://www.0dayhack.com/post-160.html

试了个遍才感觉不对。自己本地测试了一下发现生成的木马都能反弹回来,才想起我在内网中他是连不到我的。当然也算是有收获把反弹shell的方法又练习了一遍。

最后我又用nc试了一下,发现还是行不通。

linux命令写jsp小马

echo base64后的木马内容 |base64 -d > mua.jsp    

这里我是传了个菜刀马上去,方便操作,有个找路径的小技巧就是直接find web下的小图片,logo.gif之类的随便。

到这里我知道行不通了,我的想法是先建立一个socks代理,用的是reGeorg,感觉很方便。

https://github.com/sensepost/reGeorg

这里需要配置下proxychains,把端口加上去就行。

proxychains不支持udp和icmp协议,所以使用nmap要加上-sT -Pn即使用tcp协议且不使用icmp协议。

不过我到这遇到了问题,按理来说代理到本地之后,我的环境与目标端环境应该是一致的应该是可以ping通内网环境的,但是实践中并不能连接到内网不知道为何。

又重新想如何去反弹shell,由于我的攻击机处于内网有很多不便,nc再次尝试无果,想着转变思路。

添加账号

我想着这些操作都不行,那我就简单粗暴直接ssh连接上去,由于不是完全的交互,也不能查看root公钥私钥,于是想着新建用户提权。

涉及到几个问题

1、需要开启22端口

2、非交互shell,创建用户可能不成

3、提权

端口

这个简单,我们已经有代理了,直接proxychains4 user@127.0.0.1 就行了。

创建用户

我直接useradd

发现是添加成功的,但是没有交互没让我输密码,然后尝试删除它的密码,这样空密码进行ssh。

失败。。。

找到一句话添加账号(很黄很暴力)

1、useradd guest;echo 'guest:123456'|chpasswd
2、useradd -p `openssl passwd 123456` guest
3、useradd -p "$(openssl passwd 123456)" guest
4、useradd newuwer;echo -e "123456n123456n" |passwd newuser

提权

内核在那,直接脏牛上了。

额,虽然内核在那,但是是Centos没成功不知为何,尝试好几种exp包括官方的写入测试也是不得。。。同时我也是知道自己思路偏了,都已经有一个root权限了,又去瞎搞当然是不对的。

后记

又尝试下载nmap在目标机上编译但是失败了,
用mimipenguin抓密码,

直接cat不到,后来用菜刀看了一眼什么都没有。

总结一下这次测试,明显感觉到自己水平不行,很多操作明明是很简单,就比如反弹回一个交互shell、msfshell然后添加路由进行进一步内网扫描,这些操作虽然自己看了很多但是真正上手的时候还是不行,一句话纸上学来终觉浅绝知此事要躬行。