实训作业day01
一、环境安装
1.1 Java(安装JDK)
1.2 Python
二、内外网互联方法
- 端口映射(NAT技术):
端口映射(NAT,网络地址转换)技术允许将内网机器的端口映射到外网IP地址的某个端口上,这样外网用户就可以通过访问这个外网IP地址和端口来访问内网中的特定服务。NAT技术包括静态NAT、动态NAT和端口NAT(PAT)等类型。 - VPN(虚拟专用网络):
VPN通过加密技术在公共网络上建立一个虚拟的私有网络,使内网用户能够安全地访问外网资源,就像在同一个局域网内一样。VPN协议包括PPTP、L2TP、OpenVPN等。 - 代理服务器:
在内网中搭建代理服务器,将内网用户的请求转发到外网,并从外网获取响应后返回给内网用户。这样,内网用户就可以通过代理服务器间接访问外网资源。常用的代理服务器软件有Squid、Nginx、Apache等。 - 内网穿透:
内网穿透是一种通过将内网服务器暴露给公共网络,并使用中间服务器进行转发的方法。内网服务器向中间服务器发送请求,并将响应返回给中间服务器,最终中间服务器将响应返回给外部用户。内网穿透可以通过反向代理、NAT穿透、隧道连接等技术实现。 - 远程桌面协议(RDP)或远程 Shell:
通过远程桌面协议(如在 Windows 中使用 RDP)或远程 Shell(如在 Linux 中使用 SSH)可以远程管理内网服务器。但这种方法需要正确配置远程访问服务,以便外部设备能够访问内部资源。 - 动态域名解析:
动态域名解析是指使用DDNS(DynamicDomainNameSystem)服务,将动态IP地址映射到一个固定的域名上,从而使得外网用户可以通过域名访问内网。DDNS服务可以自动监测动态IP地址的变化,将其同步到域名解析服务商的DNS服务器上。
三、弱口令爆破
1.前期准备
- 安装PHPstudy和BurpSuite后,在PHPstudy中开启Apache和MySQL。
- 在浏览器里设置代理,并导入证书(如果是直接使用BurpSuite的内置浏览器,此步跳过)。
- 在“网站”里选择打开网站或者在浏览器里直接输入网站网址(loclahost/pikachu)。
- 打开BurSuite,改变设置“Proxy setting”里的字体为宋体。
2.开始破解
2.1使用Proxy复现
- 在Pikachu的“基于表单的暴力破解”里的信息输入框随意输入账号和密码,然后在BurpSuite里开启拦截,返回Pikachu点击“Login”后可以查看到抓到的数据。
- 修改BurpSuite里的请求包。
- 点击 Action —> Do intercept —> Response to this request,再点击Forward放行,等待该请求返回响应。
- 点击“Forword”放包可以看到账号验证失败。
2.2使用Intruder复现
-
按照上面的方法拦截登录包,发送到Intruder。
-
2.2.1使用狙击手
-
按照下面的图片设置需要爆破的位置、字典。
-
爆破完成后,在“result”里选中Request为1的行,可以看到系统把账号替换成“admin”,返回状态码200。
-
-
2.2.2使用交叉
-
选择“交叉”方式,设置好爆破位置以及选择的字典后点击“start attack”。
-
在“result”里选中Request为1的行,可以看到系统把账号替换成“admin”,密码替换成“123456”,返回状态码200。
-
-
2.2.3使用集束炸弹
- 选择最后一种方式,设置好爆破位置以及选择的字典。
2.在“Grep-Match”里添加登录失败时响应的字符串“username or password is not exists”,点击“start attack”。
3. 点击“username or password is not exists”就会进行排序,可以看到破解出了3个账户,整理成表格如下,测试登录均成功。
- 选择最后一种方式,设置好爆破位置以及选择的字典。
username | password |
---|---|
admin | 123456 |
pikachu | 000000 |
test | abc123 |
2.3使用Repater复现
- 按照上面的方法拦截登录包,发送到Repeater。
- 在Repeater修改账号、密码为暴力破解后的正确账号信息,点击发送,在浏览器看到信息“登录成功”。