# 协议分析作业3 > https://cmd.dayi.ink/pazPEUa9SKC2mnKsL_XDxQ > 更好看的排版在这里OVO,内容完全一样 ## 0. 下载安装华为ENSP 本来想从华为官网下,但好像已经消失了。 ![](https://cmd.dayi.ink/uploads/upload_f00951b4c66896b75c67fb741350b931.png) > 官网好像已经好像已经停止维护了,我从网上下了个 > 链接:https://pan.baidu.com/s/1XqSfHetChnmiaNtHpjS1oA?pwd=4455 > 提取码:4455 一直下一步就好,能不换路径就不要换,能C盘不D盘,能英文目录不中文目录。 ![](https://cmd.dayi.ink/uploads/upload_8f8cf6832859562d10dbf842934b706d.png) 要求好多.. ![](https://cmd.dayi.ink/uploads/upload_ad1968f7a565d9deb8de26af2524f638.png) 然后注册设备(我也不知道有什么用) ![](https://cmd.dayi.ink/uploads/upload_c8cfadae4a4e4964c6db84b2ad90eaa9.png) ## 1. 新建拓扑网络 ### 1.1 拿出来 ![](https://cmd.dayi.ink/uploads/upload_accc84fe848c89e8d9496d4174f80c9e.png) 发现就这一个路由器带串口 (他还卡我网页上了) ![](https://cmd.dayi.ink/uploads/upload_2fefc877adef0d3081b4dd8dbd8271bc.png) ### 1.2 连上线 ![](https://cmd.dayi.ink/uploads/upload_dca5f0872cb4ee5fcb37602f3f549f08.png) ### 1.3 启动 ![](https://cmd.dayi.ink/uploads/upload_29cb5d3e0b98b6f2a765d3acf7496079.png) ## 2. 开启认证 ### 2.1 ①没有认证协议的配置命令如下: > ①没有认证协议的配置命令如下: ```bash AR1 <Huawei>sys [Huawei]in s0/0/0 [Huawei-Serial0/0/0] link-protocol ppp [Huawei-Serial0/0/0]ip address 10.1.1.1 255.255.255.0 AR2 <Huawei>sys [Huawei]in s0/0/0 [Huawei-Serial0/0/0] link-protocol ppp [Huawei-Serial0/0/0]ip address 10.1.1.2 255.255.255.0 ``` R1 ![](https://cmd.dayi.ink/uploads/upload_5f7238b1d597879a8e75e43c71488bd0.png) R2 ![](https://cmd.dayi.ink/uploads/upload_a964e47359beb9a1a6ba409c37b5c5b1.png) ### 2.2 ②Pap认证(AR1是验证方,AR2是被验证方) > ②Pap认证(AR1是验证方,AR2是被验证方) ```bash RA1 <Huawei>sys [Huawei]aaa 启动aaa配置 [Huawei-aaa] local-user aa password cipher 11 在aaa数据库中添加aa用户,密码为11 [Huawei-aaa]quit [Huawei] in s0/0/0 [Huawei-Serial0/0/0]ip address 10.10.10.1 255.255.255.0 [Huawei-Serial0/0/0]ppp authentication-mode pap AR2 <Huawei>sys [Huawei]in s0/0/0 [Huawei-Serial0/0/0]ip address 10.10.10.2 255.255.255.0 [Huawei-Serial0/0/0]ppp pap local-user aa password cipher 11 ``` - PAP(Password Authentication Protocol): 密码认证协议 - cipher : 估计是加密密码存储在设备上 - 好像也只有这个模式 ```bash [Huawei-aaa]local-user dayi password ? cipher User password with cipher text ``` - aaa:我一开始以为是随便的东西 - 但不是这样,他应该是个命令 ![](https://cmd.dayi.ink/uploads/upload_b18aef718ce841300783545c04285f0a.png) - https://support.huawei.com/enterprise/zh/doc/EDOC1100075562/330af205 这里建了用户`dayi`密码`123` R1 ![](https://cmd.dayi.ink/uploads/upload_9993076e209d21d9c3c79be7e30a38cb.png) R2 ![](https://cmd.dayi.ink/uploads/upload_6adae12ecab4c4a17bc92a7766f0e0e8.png) ### 2.3 ③chap认证(AR1是验证方,AR2是被验证方) > ③chap认证(AR1是验证方,AR2是被验证方) ```bash ③chap认证(AR1是验证方,AR2是被验证方) RA1 <Huawei>sys [Huawei]aaa [Huawei-aaa] local-user aa password cipher 11 [Huawei-aaa]quit [Huawei] in s0/0/0 [Huawei-Serial0/0/0]ip address 10.10.10.1 255.255.255.0 [Huawei-Serial0/0/0]link-protocol ppp [Huawei-Serial0/0/0]ppp authentication-mode chap AR2 <Huawei>sys [Huawei]inter s0/0/0 [Huawei-Serial0/0/0]ip address 10.10.10.2 255.255.255.0 [Huawei-Serial0/0/0]link-protocol ppp [Huawei-Serial0/0/0]ppp chap user aa [Huawei-Serial0/0/0]ppp chap password cipher 11 ``` - CHAP: Challenge Handshake Authentication Protocol"(挑战-握手身份验证协议) R1 ![](https://cmd.dayi.ink/uploads/upload_89858d6351c24dd7d5994bba614835c5.png) R2 ![](https://cmd.dayi.ink/uploads/upload_0f61741a728e98618a2a0124dcd31b28.png) ## 3. 抓包 ### 3.1 抓包 右键,然后抓包,选串口0 ![](https://cmd.dayi.ink/uploads/upload_15254f597085c60de3f395081b59ba45.png) ![](https://cmd.dayi.ink/uploads/upload_db656fd2dbff473c9d3714d5b2fa98fa.png) 然后自动打开了wireshark诶 ![](https://cmd.dayi.ink/uploads/upload_ba422f91b616767819fb753085140275.png) ### 3.2 分析 ![](https://cmd.dayi.ink/uploads/upload_301fb16913e6a4665cb4cdda453639f8.png) 差不多是10秒一次请求,然后回应一下,然后一直循环 ```bash # echo req ?? ff 03 c0 21 09 a1 00 08 00 00 29 63 [ FAC ] [协议] [类型] [id] [长度] [FCS?可能是但我感觉不是] ``` - `[null]` 没找到F(flag)帧头帧尾锁定的,可能被wireshark忽略了? - `ff` 地址(A):点到点通信端点唯一,这里就是FF - `03` 控制字段(C): 后面的是协议 - C0 21 : LCP -Link Control Protocol (0xc021)- - C0 23 : PAP - C0 25 : LQR - C2 23 : CHAP - 80 21 : IPCP - 这里因为是C021,也就是LCP协议,于是有了后面的LCP分析 - `09` 类型: echo-request - 其他的类型还有 - configure-req:01 - configure-ack:02 - configure-nak:03 - configure-rej:04 - terminate-req:05 - terminate-ack:06 - code-reject :07 - protocol-reject:08 - echo-request :09 - echo-peply :10 - discard-request:11 ```bash a1 00 08 00 00 29 63 ``` - `a1` ID,报文唯一标识符,也用于匹配请求确认 - `00 08` 长度,包括首部在内的报文字节数。 - `00 00 ` 数据部分 - `29 63` FCS校验,也许不是也许仍然是数据,wireshark识别为魔术包 第一个数据包是一个LCP Echo-Request包,用于请求回应以检查连接状态。 ```bash # echo reply ff 03 c0 21 0a a1 00 08 00 01 46 41 ``` - `ff` A 地址 - `03` 控制 - `c021` lcp协议 - `0a` ID - `0008` 长度 - `46 41 ` 应该不是FCS ## 4. 在路由AR1上 关上口,然后再打开 > 在AR1(或AR2)中关闭Serial 0/0/0口后再打开,观察并总结数据报的变化过程。关闭和打开Serial口的命令是 `shutdown` `undo shutdown` ```bash shutdown undo shutdown (开始捕获) shutdown undo shutdown ``` ![](https://cmd.dayi.ink/uploads/upload_c096f80c70e7178dc16e9242c0de49df.png) 后面的维护链路都是一样的啦。 ![](https://cmd.dayi.ink/uploads/upload_422fbdc4cb7255cbc737e0641fd491c1.png) 过程差不多这样 - 1.配置请求 - 2.配置回复ACK - 3.配置请求 - 4.配置回复ACK,包含了自己想要进行配置的协议 - 5.CHAP 挑战验证请求 Authentication Protocol: Challenge Handshake Authentication Protocol (0xc223) 此时协议发送为0xc223 - 6.CHAP 挑战回应请求,MD5私钥加密对方发送的值和自己的密码(两方都知道的密码)(随机数+秘文) - 7.CHAP 挑战成功,建立链接 - 8. IPCP IP Protocol: Internet Protocol Control Protocol (0x8021) 同时发送本地地址10.10.10.1 - 9. IPCP 如果本地没有IP冲突,则回应报文ACK 图中回应了正常的IP,并且已经接受。 4.图 ![](https://cmd.dayi.ink/uploads/upload_b2b8d71eed30f890da606aae26cb903d.png) 5.图 ![](https://cmd.dayi.ink/uploads/upload_103f018ed5aec3c28dcc7427c2614eae.png) 8.图 ![](https://cmd.dayi.ink/uploads/upload_9143c53929628613f700bc9de10629c4.png) ## 5. 在AR1(或AR2)上Ping AR2(或AR1)观察抓包情况。 > (5)在AR1(或AR2)上Ping AR2(或AR1)观察抓包情况。 ```bash [Huawei-Serial0/0/0] ping 10.10.10.2 ``` ![](https://cmd.dayi.ink/uploads/upload_e733898552a49a9769602357a6403fb4.png) 抓包如下: ![](https://cmd.dayi.ink/uploads/upload_0548b1c919ad81e3c67c8586fb39044a.png) 这里还是PPP 但是 前几位是 `FF 03 0021` 其中0021表示IPV4 后面的就是IPV4的报文了。 IPV4的后面有ICMP协议的相关内容 ![](https://cmd.dayi.ink/uploads/upload_da2b5cbaf9132b59015e14f706556029.png) 具体解析的还是听清楚的。 ## 6. (6)停止分组俘获。在俘获分组列表中(listing of captured packets)中观察并分析数据。 已经分析过了。过程如上。 ## 7. 实验报告 ### 7.1 通过捕获的数据分析PPP的流程; 分析PPP的流程在上文中已经写的比较清晰啦。 ### 7.2 分别给出3种不同的认证情况下PPP协议报文捕获截图,并进行分析。 #### 7.2.1 没有认证协议的配置 反正就几行命令,我直接把那俩路由器删掉了,重新拉一个。 R4 ```bash sys int s0/0/0 link-protocol ppp ip addr 10.1.1.1 255.255.255.0 ``` R5 ```bash sys int s0/0/0 link ppp ip addr 10.1.1.1 255.255.255.0 [开始捕获] shutdown undo shutdown ``` ![](https://cmd.dayi.ink/uploads/upload_53cd4373e6d66df5df1a3d3da87e4083.png) 包如下: ![](https://cmd.dayi.ink/uploads/upload_6f56c2baff60bb64c81b87cf575c635e.png) 感觉就是请求验证协议,然后没有找到协议,请求验证协议,然后没有找到协议,但是空协议也是可以`全部识别可以接受`,于是直接开始IPCP验证,交换IP后,开始ECHO ![](https://cmd.dayi.ink/uploads/upload_1877b2068ca35cbda667386a7849b54b.png) #### 7.2.2 PAP认证协议的配置 R6是验证方 ```bash <Huawei>sys [Huawei]aaa [Huawei-aaa]local-user dayi password cipher 123 [Huawei-aaa]quit [Huawei]int s0/0/0 [Huawei-Serial0/0/0]ip addr 10.233.233.1 255.255.255.0 [Huawei-Serial0/0/0]ppp authentication-mode pap (好多报错的乱码,要命) ``` R7是被验证方 ```bash <Huawei>sys [Huawei]int s0/0/0 [Huawei-Serial0/0/0]ip addr 10.233.233.2 255.255.255.0 [Huawei-Serial0/0/0]ppp pap local-user dayi password cipher 123 [开始抓包在R6] shut undo shut ``` ![](https://cmd.dayi.ink/uploads/upload_f36e511be30de30eabd80ec537742f4c.png) - LCP 请求PAP - LCP 返回ACK ,同意PAP - LCP 请求一个似乎不包含协议的包 - LCP ACK一个同意不包含协议的包 - PAP 请求(被验证端请求) - PAP 同意(ACK) (welcome....) - IPCP 相互请求同意 - IPCP 相互请求同意 配置协议空包: ![](https://cmd.dayi.ink/uploads/upload_099d45110f1a82276b3f8e1dce800959.png) PAP明文请求REQ: ![](https://cmd.dayi.ink/uploads/upload_ed662bb6fd37809a61612e9318d38035.png) PAP同意请求ACK: ![](https://cmd.dayi.ink/uploads/upload_75198287a348e9e146eb997ce3b2df34.png) 新版wireshark截图(直接显示了密码用户名) ![](https://cmd.dayi.ink/uploads/upload_05f5af785c8d10ace09d847ccc109007.png) #### 7.2.3 CHAP认证协议的配置 > 其实前文第一次做的就是CHAP的 还是做一次吧 ![](https://cmd.dayi.ink/uploads/upload_0f7c3fc6d9f9599773734c378c3164df.png) R8 ```bash <Huawei>sys [Huawei]aaa [Huawei-aaa]local-user dayi password cipher 123 [Huawei]int s0/0/0 [Huawei-Serial0/0/0]ip addr 10.233.233.1 255.255.255.0 [Huawei-Serial0/0/0]link ppp [Huawei-Serial0/0/0]ppp [Huawei-Serial0/0/0]ppp authentication-mode chap ``` R9 ```bash <Huawei>sys Enter system view, return user view with Ctrl+Z. [Huawei]int s0/0/0 [Huawei-Serial0/0/0]ip addr 10.233.233.2 255.255.255.0 [Huawei-Serial0/0/0]link ppp [Huawei-Serial0/0/0]ppp chap user dayi [Huawei-Serial0/0/0]ppp chap password cipher 123 [Huawei-Serial0/0/0] 【打开wireshark】 shut undo shut ``` ![](https://cmd.dayi.ink/uploads/upload_696c122e2218a34eca44b8157fa0fc68.png) - LCP 请求 - LCP 回应 - LCP 请求 - LCP 回应 - CHAP 发送挑战! - CHAP 回应挑战 - CHAP 挑战成功! - IPCP 相互发送信息 - ECHO 回应 LCP 协议配置请求: ![](https://cmd.dayi.ink/uploads/upload_a404d773ec2b58c4b9a808b96f586fe2.png) LCP 协议配置请求2(感觉是空配置): ![](https://cmd.dayi.ink/uploads/upload_30da087732cce2bff4e8b61af5d2ff08.png) CHAP 挑战: ![](https://cmd.dayi.ink/uploads/upload_ae3cea60429ad89f94de6b3930c93d83.png) CHAP 回复: ![](https://cmd.dayi.ink/uploads/upload_0b6aa209b7e229c2ad2133a8be708e2c.png) IPCP相互: ![](https://cmd.dayi.ink/uploads/upload_a6f9390753e69dbc23faaf21f6a10363.png) 感觉虽然有一定安全性,但是如果设备强大用户名泄露(第一次建立链接的时候暴漏了用户名),且密码较弱的情况下,暴力迅速对碰还是有可能的。 ## 8.文件下载 ![](https://cmd.dayi.ink/uploads/upload_e41d09a2127c5dfdb73f16d2caa12f0c.png) https://pic.icee.top/blog/pic_bed/2023/09/23-9-16-4_5c79a3be-54ab-11ee-ad2a-9fc460f28a1b.zip
{}