靶机实战(1):Empire LupinOne

文章详细描述了对EmpireLupinOne靶机的渗透测试,涉及主机发现、端口扫描、SSH与HTTP服务漏洞检测,以及通过Python提权的方法。作者逐步揭示了如何利用组件漏洞、弱口令和权限提升来获取更高权限。
摘要由CSDN通过智能技术生成

01、靶机名称:Empire: LupinOne

02、靶机网址:https://www.vulnhub.com/entry/empire-lupinone,750/

03、参考文章:大余每日一攻防EMPIRE: LUPINONE(七)

04、文章目录:

  1. 主机发现

  2. 端口发现(服务、组件)

  3. 漏洞发现(获取权限)

    1. 22端口/ssh服务

      1. 组件漏洞

      2. 弱口令漏洞

    2. 80端口/http服务

      1. 组件漏洞

      2. URL发现(目录、文件)

    3. 22端口/ssh服务

      1. 私钥泄露

  4. 提升权限

    1. perm

    2. sudo

    3. sudo

一、主机发现

启动虚拟机,直接就获得了主机的IP地址。

2816d68f90d804abb819b9bed36c79c2.png

二、端口发现(服务、组件)

使用命令sudo nmap 10.58.81.112 -n -Pn -p- --reason -sV -sC -O,获得主机开放的端口、提供的服务、使用的组件、组件的版本。

a036b3f29b81df9c8c8aba484badcc94.png

开发的端口

提供的服务

使用的组件

组件的版本

22/tcp

ssh

OpenSSH

8.4p1

80/tcp

http

Apache

httpd 2.4.48

-

-

Linux

4.15 - 5.6

三、漏洞发现(获取权限)

### 22端口/ssh服务

#### 01、组件漏洞

使用命令searchsploit OpenSSH,未发现OpenSSH 8.4p1组件的Nday漏洞。

53b28d62b9dbb3701e22afc2771d8826.png

#### 02、弱口令漏洞

使用命令hydra -C /usr/share/seclists/Passwords/Default-Credentials/ssh-betterdefaultpasslist.txt 10.58.81.112 ssh,未发现弱口令漏洞。

95890a41dad29910b4e24af302871c33.png    

换一个字典,使用命令hydra -C /usr/share/wordlists/legion/ssh-betterdefaultpasslist.txt 10.58.81.112 ssh,仍未发现弱口令漏洞。

45eb13b924c012c92b0af439c330af0c.png

### 80端口/http服务

#### 01、组件漏洞

使用命令searchsploit Apache,未发现Apache httpd 2.4.48组件的Nday漏洞。

d805c6c6f1ceeaa7b8e45e0cbf950ab3.png

使用命令searchsploit Apache | grep -i httpd,未发现Apache httpd 2.4.48组件的Nday漏洞。

84c55ffc01673691e6881b62dd4c8486.png

#### 02、URL发现(目录、文件)

1、访问首页http://10.58.81.112/,发现啥也没有,是静态页面,妥妥的CTF风格。    

93534d0c9f7f16f0e257f147d184c3df.png

2.1、在端口发现(服务、组件)阶段,已经发现存在/robots.txt文件,且暴露了/~myfiles/目录。

4bc900d30f5ce1e20b8282f0e86fdd12.png

http://10.58.81.112/robots.txt

9deec0f443536e1b8b1c55993d74369e.png    

访问http://10.58.81.112/~myfiles/目录,发现啥也没有。

f6cb9719e55a6da78e93a7ffe606b596.png

2.2、使用命令dirb http://10.58.81.112 -r对网站目录和文件进行爆破,未发现新的目录和文件。

7d312c7d9c4d509a31c3f07554bb7d69.png

2.3、使用命令dirb http://10.58.81.112/~myfiles/ -r对/~myfiles/下的目录和文件进行爆破,未发现新的目录和文件。完了,game over了。

2b9ddc5d7d710d7df2c1647dddeb4332.png

3.1、因为目录/~myfiles/前面有个~,是常规目录爆破字典里没有的,这可能是目标网站的特性,所以决定尝试爆破~前缀的目录。

使用命令wfuzz -c -z /usr/share/seclists/Discovery/Web-Content/common.txt –hc 404 http://10.58.81.112/~FUZZ进行模糊测试,还真发现了新的目录。    

8bf6ffd857bd53f1487993f4b19382cf.png

3.2、使用命令dirb http://10.58.81/112/~secret/ -r对/~secret/下的目录和文件进行爆破,发现有个文件/~secret/index.html。

63ede6d1aa4744d013fecd1fe996ab56.png

访问文件/~secret/index.html,发现提示/~secret/目录下存在“我”的SSH私钥文件,看来目录爆破的强度是不够的,得用模糊测试。

同时还提示了“我”的名字是icex64,看来使用账号“icex64”和SSH私钥文件就能登录SSH服务了。

7b68a27bab8bba53d3065059587451ce.png

3.3、使用命令wfuzz -c -w /usr/share/seclists/Discovery/Web-Content/directory-list-2.3-small.txt -z list,".txt"- --hc 403,404 http://10.58.81.112/~secret/FUZZFUZ2Z进行模糊测试,通过无文件后缀和“.txt”文件后缀两种后缀,并未发现SSH私钥文件。    

cab6f675d5f661252ca44c1750b9e397.png

3.4、难道是文件后缀不对?还是文件名字典不行?又或者是文件名要加前缀?是加~前缀吗?既然是SSH私钥文件,那就试试加.前缀吧。

使用命令wfuzz -c -w /usr/share/seclists/Discovery/Web-Content/directory-list-2.3-small.txt -z list,".txt"- --hc 403,404 http://10.58.81.112/~secret/.FUZZFUZ2Z进行模式测试,发现SSH私钥文件/~secret/.mysecret.txt。    

10928bcaee76019b0dd04332a24d04e0.png

1e8d748653436a835e1b99a26621e5e5.png

### 22端口/ssh服务

#### 03、私钥泄露

1、一般使用SSH账号和SSH私钥文件就能登录SSH服务了,但这个SSH私钥文件不知道被什么加密或编码了。如果是被加密就没辙了,没有解密算法和密钥。只能碰运气希望是被编码了,最终使用base58解码成功。

ae09dcb79829304daa1517b0e59891fb.png

2.1、使用账号“icex64”和SSH私钥文件登录SSH服务,发现因为SSH私钥文件的文件权限是0644,可以被其它用户访问,不够安全,所以SSH服务就自动跳转成SSH密码登录了。使用命令chmod 0600 mysecret删除其它人访问SSH私钥文件的权限。

591a2d8cffb3ddb1796a258e817ad57d.png

使用账号“icex64”和SSH私钥文件登录SSH服务,发现SSH私钥文件需要解密密钥。各位运维人员,你们看看这是人干的事吗。

d55aa1af5f4a2349eb8b73e12fd4d834.png

2.2、使用命令/usr/share/john/ssh2john.py mysecret >  mysecret.john将SSH私钥文件转成John需要的格式。    

2d6a0ac9138e529d4537864f0b48c06e.png

使用命令john mysecret.john --wordlist=/usr/share/wordlists/fasttrack.txt爆破SSH私钥文件的解密密钥,得到P@55w0rd!。各位运维人员,你们看看这才是人干的事。

22db293065d98544ef8913d2e2b56fb8.png

3、使用账号“icex64”、SSH私钥文件、SSH私钥文件的解密密钥P@55w0rd!,最终成功登录SSH服务。

3d482e5f1c686652cc1385577703dbfb.png

四、提升权限

#### 01、perm

使用命令find -perm 4000 2>/dev/null查看系统中的特权命令,未发现。

ef2f01951c47273ba831ac440ded4dee.png

### 02、sudo

1、使用命令sudo -l查看当前用户的特权命令,发现可以免密使用arsene用户的身份执行/usr/bin/python3.9 /home/arsene/heist.py命令。

ac6ee763e8d2ed55cdd5fbfb4d95ed9d.png

遗憾的是,arsene用户和icex64用户一样,都是普通用户,就算拿到arsened 的用户权限,也只是越权,还不是提权。

f83e2004662025ad3ae885270d862601.png

更遗憾的是,/usr/bin/python3.9和/home/arsene/heist.py命令都没有write权限,无法写入提权命令。

403ca49a9be388e27a0bf0da53fc4a19.png

2、柳暗花明的是,/home/arsene/heist.py文件中import了webbrowser模块文件。如果有webbrowser.py文件的write权限,写入提权命令也是有效的。

6d07aad049230ec0eedf1e721cad48b6.png    

幸运的是,有webbrowser文件的write权限,路径是/usr/lib/python3.9/webbrowser.py。

636ca228c92b566aaca503eb5cdeaed9.png

3、在GTFOBins搜索Python提权命令:

c67cc595f29934c871257be9f2644010.png

f4b603b232fbc4d588e3256d8dfecdbc.png

在/usr/lib/python3.9/webbrowser.py文件中写入提权命令。    

b377cbb233cf7d9397c95bc9bd6fb10d.png

4、免密使用arsene用户的身份执行/usr/bin/python3.9 /home/arsene/heist.py命令,获得arsene用户的权限,成功越权。

29d84a1388924ffa130ed7cab7927497.png

参考文章:

  1. Python提权文章,发布于2021-06-03:Linux Privilege Escalation: Python Library Hijacking[1]

  2. Python提权文章的中文翻译,发布于2021-06-09 :Linux提权:Python脚本利用劫持的三种方法[2]

  3. 该靶机网址,发布于2021-10-21:Empire: LupinOne[3]

  4. 猜测:靶机作者很有可能参考该Python提权文章,设计了该漏洞。

### 03、sudo

1、使用命令sudo -l查看当前用户的特权命令,发现可以免密使用root用户的身份执行/usr/bin/pip命令。

9720e9d6ece1c1e925a795c4221bc92f.png

2、在GTFOBins搜索pip提权命令:

e9861eb829cb4d15149e8a8996253252.png

c44b88cdb8116b002a233421b079c957.png

3、免密使用root用户的身份执行/usr/bin/pip命令,获得root用户的权限,成功提权。    

69e971d549fcf32bdcf4e2fcded5877f.png    

参考资料

[1]

Linux Privilege Escalation: Python Library Hijacking: https://www.hackingarticles.in/linux-privilege-escalation-python-library-hijacking/

[2]

Linux提权:Python脚本利用劫持的三种方法: https://www.4hou.com/posts/o8rj

[3]

Empire: LupinOne: https://www.vulnhub.com/entry/empire-lupinone,750/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值