<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>笔记 on 知识带给我们自由</title>
    <link>https://yuexuan521.github.io/zh/tags/%E7%AC%94%E8%AE%B0/</link>
    <description>Recent content in 笔记 on 知识带给我们自由</description>
    <image>
      <title>知识带给我们自由</title>
      <url>https://yuexuan521.github.io/%3Clink%20or%20path%20of%20image%20for%20opengraph,%20twitter-cards%3E</url>
      <link>https://yuexuan521.github.io/%3Clink%20or%20path%20of%20image%20for%20opengraph,%20twitter-cards%3E</link>
    </image>
    <generator>Hugo -- 0.160.1</generator>
    <language>en-us</language>
    <copyright>See this site&amp;rsquo;s source code here, licensed under GPLv3 ·</copyright>
    <lastBuildDate>Thu, 23 Jan 2025 12:47:44 +0000</lastBuildDate>
    <atom:link href="https://yuexuan521.github.io/zh/tags/%E7%AC%94%E8%AE%B0/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Packet Tracer - Layer 2 VLAN Security（第二层VLAN安全配置任务）</title>
      <link>https://yuexuan521.github.io/zh/posts/packet-tracer-layer-2-vlan-security%E7%AC%AC%E4%BA%8C%E5%B1%82vlan%E5%AE%89%E5%85%A8%E9%85%8D%E7%BD%AE%E4%BB%BB%E5%8A%A1/</link>
      <pubDate>Thu, 23 Jan 2025 12:47:44 +0000</pubDate>
      <guid>https://yuexuan521.github.io/zh/posts/packet-tracer-layer-2-vlan-security%E7%AC%AC%E4%BA%8C%E5%B1%82vlan%E5%AE%89%E5%85%A8%E9%85%8D%E7%BD%AE%E4%BB%BB%E5%8A%A1/</guid>
      <description>&lt;h2 id=&#34;packettracer---第二层vlan安全配置任务&#34;&gt;PacketTracer - 第二层VLAN安全配置任务&lt;/h2&gt;
&lt;p&gt;
&lt;div class=&#34;post-img-view&#34;&gt;
    &lt;a data-fancybox=&#34;gallery&#34; href=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212730148.png&#34;&gt;
        &lt;img src=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212730148.png&#34; 
             alt=&#34;在这里插入图片描述&#34; 
              
             loading=&#34;lazy&#34;
        /&gt;
    &lt;/a&gt;
&lt;/div&gt;&lt;/p&gt;
&lt;h3 id=&#34;目标&#34;&gt;目标&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;在SW-1和SW-2之间建立新的冗余链路。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;在新连接的SW-1和SW-2之间的干线链路上启用中继并配置安全措施。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<h2 id="packettracer---第二层vlan安全配置任务">PacketTracer - 第二层VLAN安全配置任务</h2>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212730148.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212730148.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="目标">目标</h3>
<ul>
<li>
<p>在SW-1和SW-2之间建立新的冗余链路。</p>
</li>
<li>
<p>在新连接的SW-1和SW-2之间的干线链路上启用中继并配置安全措施。</p>
</li>
<li>
<p>创建一个新的管理VLAN（VLAN 20）并将一台管理PC连接到该VLAN。</p>
</li>
<li>
<p>实施ACL以防止外部用户访问管理VLAN。</p>
</li>
</ul>
<h3 id="背景场景">背景/场景</h3>
<p>一家公司的网络当前使用两个独立的VLAN：VLAN 5和VLAN 10。此外，所有干线端口都已配置为本征VLAN 15。网络管理员希望在交换机SW-1和SW-2之间添加一条冗余链路。这条链路必须启用中继功能，并确保所有必要的安全设置到位。</p>
<p>此外，网络管理员还希望将一台管理PC连接到交换机SW-A。管理员希望这台管理PC能够连接到所有交换机及路由器，但不希望任何其他设备能够连接到管理PC或这些交换机上。因此，管理员计划创建一个新的VLAN 20用于管理目的。</p>
<p>所有设备已经预先配置了以下信息：</p>
<ul>
<li>
<p>启用密码： <strong>ciscoenpa55</strong></p>
</li>
<li>
<p>控制台密码： <strong>ciscoconpa55</strong></p>
</li>
<li>
<p>SSH用户名及密码： <strong>SSHadmin / ciscosshpa55</strong></p>
</li>
</ul>
<h3 id="第一部分验证连通性">第一部分：验证连通性</h3>
<p><strong>步骤1：验证C2（VLAN 10）与C3（VLAN 10）之间的连通性。</strong></p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212732555.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212732555.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212734673.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212734673.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p><strong>步骤2：验证C2（VLAN 10）与D1（VLAN 5）之间的连通性。</strong>
注：如果使用简易PDU GUI包，请确保ping两次以允许ARP过程完成。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212736073.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212736073.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212738694.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212738694.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="第二部分在sw-1和sw-2之间创建冗余链路">第二部分：在SW-1和SW-2之间创建冗余链路</h3>
<p><strong>步骤1：连接SW-1和SW-2。</strong></p>
<p>使用交叉线缆将SW-1的F0/23端口与SW-2的F0/23端口相连。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212740831.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212740831.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p><strong>步骤2：在SW-1和SW-2之间的链路上启用干线功能，包括所有干线安全机制。</strong></p>
<p>已预先配置了所有现存干线接口的干线功能。新链接必须设置为干线，并包括所有干线安全机制。在SW-1和SW-2上，将端口设置为干线模式，将本征VLAN 15分配给干线端口，并禁用自动协商功能。</p>
<blockquote>
<p>SW-1(config)#interface f0/23
SW-1(config-if)#switchport mode trunk
SW-1(config-if)#switchport trunk native vlan 15
SW-1(config-if)#switchport nonegotiate
SW-1(config-if)#no shutdown</p>
</blockquote>
<blockquote>
<p>SW-2(config)#interface f0/23
SW-2(config-if)#switchport mode trunk
SW-2(config-if)#switchport trunk native vlan 15
SW-2(config-if)#switchport nonegotiate
SW-2(config-if)#no shutdown</p>
</blockquote>
<h3 id="第三部分启用vlan-20作为管理vlan">第三部分：启用VLAN 20作为管理VLAN</h3>
<p>网络管理员希望通过管理PC访问所有交换机和路由设备。出于安全原因，管理员希望确保所有受管设备都在一个独立的VLAN中。</p>
<p><strong>步骤1：在SW-A上启用管理VLAN（VLAN 20）。</strong></p>
<p>a. 在SW-A上启用VLAN 20。</p>
<blockquote>
<p>SW-A(config)#vlan 20
SW-A(config-vlan)#exit</p>
</blockquote>
<p>b. 创建VLAN 20接口并在192.168.20.0/24网络内分配一个IP地址。</p>
<blockquote>
<p>SW-A(config)#interface vlan 20
SW-A(config-if)#ip address 192.168.20.1 255.255.255.0</p>
</blockquote>
<p><strong>步骤2：在所有其他交换机上启用相同的管理VLAN。</strong></p>
<p>a. 在SW-B、SW-1、SW-2和中央交换机上创建管理VLAN。</p>
<blockquote>
<p>Central(config)#vlan 20
Central(config-vlan)#exit</p>
</blockquote>
<blockquote>
<p>SW-1(config)#vlan 20
SW-1(config-vlan)#exit</p>
</blockquote>
<blockquote>
<p>SW-2(config)#vlan 20
SW-2(config-vlan)#exit</p>
</blockquote>
<blockquote>
<p>SW-B(config)#vlan 20
SW-B(config-vlan)#exit</p>
</blockquote>
<p>b. 在所有交换机上创建VLAN 20接口，并在192.168.20.0/24网络内分配一个IP地址。</p>
<blockquote>
<p>Central(config)#int vlan 20
Central(config-if)#ip address 192.168.20.2 255.255.255.0</p>
</blockquote>
<blockquote>
<p>SW-1(config)#int vlan 20
SW-1(config-if)#ip address 192.168.20.3 255.255.255.0</p>
</blockquote>
<blockquote>
<p>SW-2(config)#int vlan 20
SW-2(config-if)#ip address 192.168.20.4 255.255.255.0</p>
</blockquote>
<blockquote>
<p>SW-B(config)#int vlan 20
SW-B(config-if)#ip address 192.168.20.5 255.255.255.0</p>
</blockquote>
<p><strong>步骤3：连接并配置管理PC。</strong></p>
<p>将管理PC连接到SW-A的F0/1端口，并确保为其分配192.168.20.0/24网络内的可用IP地址。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212742442.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212742442.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212744001.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212744001.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p><strong>步骤4：在SW-A上确保管理PC属于VLAN 20。</strong></p>
<p>接口F0/1必须是VLAN 20的一部分。</p>
<blockquote>
<p>SW-A(config)#int f0/1
SW-A(config-if)#switchport access vlan 20
SW-A(config-if)#no shutdown</p>
</blockquote>
<p><strong>步骤5：验证管理PC与所有交换机之间的连通性</strong> 。</p>
<p>管理PC应能成功ping通SW-A、SW-B、SW-1、SW-2和中央交换机。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212745938.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212745938.png" 
             alt="请添加图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212748325.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212748325.png" 
             alt="请添加图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="第四部分使管理pc能够访问路由器r1">第四部分：使管理PC能够访问路由器R1</h3>
<p><strong>步骤1：在路由器R1上启用新的子接口。</strong></p>
<p>a. 创建子接口 <strong>g0/0.3</strong> ，并设置封装类型为 <strong>dot1q 20</strong> ，以便支持VLAN 20。</p>
<blockquote>
<p>R1(config)#int g0/0.3
R1(config-subif)#encapsulation dot1Q 20</p>
</blockquote>
<p>b. 分配192.168.20.0/24网络内的IP地址。</p>
<blockquote>
<p>R1(config)#int g0/0.3
R1(config-subif)#ip address 192.168.20.100 255.255.255.0</p>
</blockquote>
<p>步骤2：验证管理PC与R1之间的连通性。</p>
<p>务必在管理PC上配置默认网关以实现连通性。</p>
<p><strong>步骤3：启用安全性。</strong></p>
<p>虽然管理PC必须能够访问路由器，但其他任何PC都不应能够访问管理VLAN。</p>
<p>a. 创建只允许管理PC访问路由器的ACL。</p>
<blockquote>
<p>R1(config)#access-list 101 deny ip any 192.168.20.0 0.0.0.255
R1(config)#access-list 101 permit ip any any
R1(config)#access-list 102 permit ip host 192.168.20.6 any</p>
</blockquote>
<p>b. 将ACL应用到适当的接口上。</p>
<blockquote>
<p>R1(config)#int g0/0.1
R1(config-subif)#ip access-group 101 in
R1(config-subif)#int g0/0.2
R1(config-subif)#ip access-group 101 in</p>
</blockquote>
<blockquote>
<p>R1(config)#line vty 0 4
R1(config-line)#access-class 102 in</p>
</blockquote>
<p>注：可以有多种方式创建ACL来满足必要的安全要求。因此，该活动这一部分的评分基于正确的连通性需求。管理PC必须能够连接到所有交换机和路由器，而所有其他PC则不能连接到管理VLAN内的任何设备。</p>
<p><strong>步骤4：验证安全性。</strong></p>
<p>a. 验证只有管理PC可以访问路由器。使用SSH从管理PC通过用户名SSHadmin和密码ciscosshpa55登录R1。</p>
<blockquote>
<p>PC&gt; ssh -l SSHadmin 192.168.20.100</p>
</blockquote>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212750446.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212750446.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>b. 从管理PC尝试ping SW-A、SW-B和R1，是否成功？请解释结果。

<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212751788.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212751788.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<blockquote>
<p>VLAN20 中的设备不需要通过路由器进行路由，不受ACL的影响。</p>
</blockquote>
<p>c. 从D1尝试ping管理PC，是否成功？请解释结果。

<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212754164.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212754164.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<blockquote>
<p>不同 VLAN 中的设备 ping VLAN20 中的设备，必须进行路由，而路由器具有阻止所有数据包访问 192.168.20.0 目标网络的 ACL。</p>
</blockquote>
<p><strong>步骤5：检查结果。</strong></p>
<p>您的完成度应该为100%。点击“检查结果”查看反馈信息以及已完成的必要组件验证。</p>
<p>如果所有组件都看似正确，但活动仍显示未完成，则可能是由于验证ACL操作的连通性测试出现问题。</p>
<h3 id="实验脚本">实验脚本：</h3>
<p><strong>Part 2:</strong></p>
<p>SW-1、SW-2</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span><span class="lnt">5
</span><span class="lnt">6
</span><span class="lnt">7
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-powershell" data-lang="powershell"><span class="line"><span class="cl"><span class="n">连接SW</span><span class="p">-</span><span class="mf">1</span><span class="err">、</span><span class="n">SW</span><span class="p">-</span><span class="mf">2</span><span class="err">，</span><span class="n">使用交叉线路</span><span class="err">，</span><span class="n">要开端口</span>
</span></span><span class="line"><span class="cl"><span class="n">连接SW-A</span><span class="err">、</span><span class="n">PC</span><span class="err">，</span><span class="n">要开端口</span>
</span></span><span class="line"><span class="cl"><span class="n">interface</span> <span class="n">f0</span><span class="p">/</span><span class="mf">23</span>
</span></span><span class="line"><span class="cl"><span class="n">switchport</span> <span class="n">mode</span> <span class="n">trunk</span>
</span></span><span class="line"><span class="cl"><span class="n">switchport</span> <span class="n">trunk</span> <span class="n">native</span> <span class="n">vlan</span> <span class="mf">15</span>
</span></span><span class="line"><span class="cl"><span class="n">switchport</span> <span class="n">nonegotiate</span>
</span></span><span class="line"><span class="cl"><span class="n">no</span> <span class="n">shutdown</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p><strong>Part 3：</strong></p>
<p>SW-A：</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-powershell" data-lang="powershell"><span class="line"><span class="cl"><span class="n">int</span> <span class="n">f0</span><span class="p">/</span><span class="mf">1</span>
</span></span><span class="line"><span class="cl"><span class="n">switchport</span> <span class="n">access</span> <span class="n">vlan</span> <span class="mf">20</span>
</span></span><span class="line"><span class="cl"><span class="n">no</span> <span class="n">shutdown</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p>SW-1：</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-powershell" data-lang="powershell"><span class="line"><span class="cl"><span class="n">int</span> <span class="n">f0</span><span class="p">/</span><span class="mf">23</span>
</span></span><span class="line"><span class="cl"><span class="n">switchport</span> <span class="n">trunk</span> <span class="n">native</span> <span class="n">vlan</span> <span class="mf">15</span>
</span></span><span class="line"><span class="cl"><span class="n">switchport</span> <span class="n">mode</span> <span class="n">trunk</span> 
</span></span><span class="line"><span class="cl"><span class="n">switchport</span> <span class="n">nonegotiate</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p>SW-2:</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-powershell" data-lang="powershell"><span class="line"><span class="cl"><span class="n">int</span> <span class="n">f0</span><span class="p">/</span><span class="mf">23</span>
</span></span><span class="line"><span class="cl"><span class="n">switchport</span> <span class="n">trunk</span> <span class="n">native</span> <span class="n">vlan</span> <span class="mf">15</span>
</span></span><span class="line"><span class="cl"><span class="n">switchport</span> <span class="n">mode</span> <span class="n">trunk</span> 
</span></span><span class="line"><span class="cl"><span class="n">switchport</span> <span class="n">nonegotiate</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p>SW-A、B、1、2、Central：</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-powershell" data-lang="powershell"><span class="line"><span class="cl"><span class="n">vlan</span> <span class="mf">20</span>
</span></span><span class="line"><span class="cl"><span class="n">int</span> <span class="n">vlan</span> <span class="mf">20</span>
</span></span><span class="line"><span class="cl"><span class="n">ip</span> <span class="n">address</span> <span class="mf">192.168</span><span class="p">.</span><span class="py">20</span><span class="p">.</span><span class="py">XXX</span> <span class="mf">255.255</span><span class="p">.</span><span class="py">255</span><span class="p">.</span><span class="py">0</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p><strong>Part 4:</strong></p>
<p>R1：</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-powershell" data-lang="powershell"><span class="line"><span class="cl"><span class="n">int</span> <span class="n">g0</span><span class="p">/</span><span class="mf">0.3</span>
</span></span><span class="line"><span class="cl"><span class="n">encapsulation</span> <span class="n">dot1Q</span> <span class="mf">20</span>
</span></span><span class="line"><span class="cl"><span class="n">ip</span> <span class="n">address</span> <span class="mf">192.168</span><span class="p">.</span><span class="py">20</span><span class="p">.</span><span class="py">20</span> <span class="mf">255.255</span><span class="p">.</span><span class="py">255</span><span class="p">.</span><span class="py">0</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p>R1：</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
</span><span class="lnt"> 2
</span><span class="lnt"> 3
</span><span class="lnt"> 4
</span><span class="lnt"> 5
</span><span class="lnt"> 6
</span><span class="lnt"> 7
</span><span class="lnt"> 8
</span><span class="lnt"> 9
</span><span class="lnt">10
</span><span class="lnt">11
</span><span class="lnt">12
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-powershell" data-lang="powershell"><span class="line"><span class="cl"><span class="nb">access-list</span> <span class="mf">101</span> <span class="n">deny</span> <span class="n">ip</span> <span class="n">any</span> <span class="mf">192.168</span><span class="p">.</span><span class="py">20</span><span class="p">.</span><span class="py">0</span> <span class="mf">255.255</span><span class="p">.</span><span class="py">255</span><span class="p">.</span><span class="py">0</span>
</span></span><span class="line"><span class="cl"><span class="nb">access-list</span> <span class="mf">101</span> <span class="n">permit</span> <span class="n">ip</span> <span class="n">any</span> <span class="n">any</span> 
</span></span><span class="line"><span class="cl"><span class="nb">access-list</span> <span class="mf">102</span> <span class="n">permit</span> <span class="n">ip</span> <span class="n">host</span> <span class="mf">192.168</span><span class="p">.</span><span class="py">20</span><span class="p">.</span><span class="py">6</span> <span class="n">any</span> 
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="n">int</span> <span class="n">g0</span><span class="p">/</span><span class="mf">0.1</span>
</span></span><span class="line"><span class="cl"><span class="n">ip</span> <span class="nb">access-group</span> <span class="mf">101</span> <span class="k">in</span> 
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="n">int</span> <span class="n">g0</span><span class="p">/</span><span class="mf">0.2</span>
</span></span><span class="line"><span class="cl"><span class="n">ip</span> <span class="nb">access-group</span> <span class="mf">101</span> <span class="k">in</span> 
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="n">line</span> <span class="n">vty</span> <span class="mf">0</span> <span class="mf">4</span>
</span></span><span class="line"><span class="cl"><span class="nb">access-class</span> <span class="mf">102</span> <span class="k">in</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p>PC：</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-powershell" data-lang="powershell"><span class="line"><span class="cl"><span class="n">ssh</span> <span class="n">-l</span> <span class="n">SSHadmin</span> <span class="mf">192.168</span><span class="p">.</span><span class="py">20</span><span class="p">.</span><span class="py">20</span>
</span></span></code></pre></td></tr></table>
</div>
</div>]]></content:encoded>
    </item>
    <item>
      <title>Packet Tracer - Configuring ASA Basic Settings and Firewall Using CLI（使用CLI配置ASA基本设置和防火墙）</title>
      <link>https://yuexuan521.github.io/zh/posts/packet-tracer-configuring-asa-basic-settings-and-firewall-using-cli%E4%BD%BF%E7%94%A8cli%E9%85%8D%E7%BD%AEasa%E5%9F%BA%E6%9C%AC%E8%AE%BE%E7%BD%AE%E5%92%8C%E9%98%B2%E7%81%AB%E5%A2%99/</link>
      <pubDate>Thu, 23 Jan 2025 12:46:18 +0000</pubDate>
      <guid>https://yuexuan521.github.io/zh/posts/packet-tracer-configuring-asa-basic-settings-and-firewall-using-cli%E4%BD%BF%E7%94%A8cli%E9%85%8D%E7%BD%AEasa%E5%9F%BA%E6%9C%AC%E8%AE%BE%E7%BD%AE%E5%92%8C%E9%98%B2%E7%81%AB%E5%A2%99/</guid>
      <description>&lt;h2 id=&#34;packet-tracer---使用cli配置asa基本设置和防火墙&#34;&gt;Packet Tracer - 使用CLI配置ASA基本设置和防火墙&lt;/h2&gt;
&lt;h3 id=&#34;ip地址表&#34;&gt;IP地址表&lt;/h3&gt;
&lt;p&gt;
&lt;div class=&#34;post-img-view&#34;&gt;
    &lt;a data-fancybox=&#34;gallery&#34; href=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212646524.png&#34;&gt;
        &lt;img src=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212646524.png&#34; 
             alt=&#34;在这里插入图片描述&#34; 
              
             loading=&#34;lazy&#34;
        /&gt;
    &lt;/a&gt;
&lt;/div&gt;&lt;/p&gt;
&lt;h3 id=&#34;目标&#34;&gt;目标&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;验证连接并探索ASA设备&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;使用CLI配置ASA的基本设置和接口安全级别&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;使用CLI配置路由、地址转换和检查策略&lt;/p&gt;</description>
      <content:encoded><![CDATA[<h2 id="packet-tracer---使用cli配置asa基本设置和防火墙">Packet Tracer - 使用CLI配置ASA基本设置和防火墙</h2>
<h3 id="ip地址表">IP地址表</h3>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212646524.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212646524.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="目标">目标</h3>
<ul>
<li>
<p>验证连接并探索ASA设备</p>
</li>
<li>
<p>使用CLI配置ASA的基本设置和接口安全级别</p>
</li>
<li>
<p>使用CLI配置路由、地址转换和检查策略</p>
</li>
<li>
<p>配置DHCP、AAA和SSH服务</p>
</li>
<li>
<p>配置DMZ区域、静态NAT和访问控制列表（ACL）</p>
</li>
</ul>
<h3 id="场景">场景</h3>
<p>您的公司有一个地点通过ISP进行互联网接入。R1代表由ISP管理的CPE设备。R2代表一个互联网路由器中继节点。R3代表一个ISP，它连接着一家网络管理公司的管理员，该管理员受雇远程管理您的网络。ASA是一个边缘CPE安全设备，将内部企业网络和DMZ区域连接到ISP，并为内部主机提供NAT和DHCP服务。ASA将被配置以允许内部网络的管理员以及远程管理员对其进行管理。三层VLAN接口提供了对活动中创建的三个区域——Inside区域、Outside区域和DMZ区域的访问权限。ISP分配了公共IP地址空间209.165.200.224/29，将在ASA上用于地址转换。</p>
<p>所有路由器和交换机设备已预先配置以下信息：</p>
<ul>
<li>
<p>启用密码： <strong>ciscoenpa55</strong></p>
</li>
<li>
<p>控制台密码： <strong>ciscoconpa55</strong></p>
</li>
<li>
<p>管理员用户名及密码： <strong>admin/adminpa55</strong></p>
</li>
</ul>
<p>注意：此Packet Tracer活动并不能替代ASA实验室练习。这个活动提供了额外的实践机会，模拟了大部分ASA 5505设备的配置过程。与真实的ASA 5505相比，在命令输出或部分尚未在Packet Tracer中支持的命令上可能存在细微差别。</p>
<h3 id="第一部分验证连接和探索asa设备">第一部分：验证连接和探索ASA设备</h3>
<p>注：此Packet Tracer活动开始时，有20%的评估项已被标记为已完成。这是为了确保您不会意外更改ASA的某些默认值。例如，默认情况下内部接口名称为“inside”，不应更改。点击“检查结果”查看哪些评估项已经被正确评分。</p>
<p><strong>步骤1：验证网络连接性。</strong></p>
<p>目前ASA尚未配置，但所有路由器、PC以及DMZ服务器都已配置完毕。请确认PC-C可以ping通任何路由器接口。请注意，此时PC-C无法ping通ASA、PC-B或DMZ服务器。</p>
<p><strong>步骤2：确定ASA版本、接口及许可证信息。</strong></p>
<p>使用 <code>show version</code> 命令来了解ASA设备的各种特性。</p>
<p><strong>步骤3：确定文件系统及其闪存内存内容。</strong></p>
<p>a. 进入特权EXEC模式。当前未设置密码，当提示输入密码时直接按回车键。</p>
<p>b. 使用 <code>show file system</code> 命令显示ASA的文件系统，并确定支持哪些前缀。</p>
<p>c. 使用 <code>show flash:</code> 或 <code>show disk0:</code> 命令来显示闪存内存的内容。</p>
<h3 id="第二部分使用cli配置asa设置和接口安全">第二部分：使用CLI配置ASA设置和接口安全</h3>
<p>提示：许多ASA CLI命令与Cisco IOS CLI中的命令相似，甚至相同。此外，在不同配置模式及子模式之间切换的过程本质上是相同的。</p>
<p><strong>步骤1：配置主机名和域名。</strong></p>
<p>a. 配置ASA主机名为 <strong>CCNAS-ASA</strong> 。</p>
<p>b. 配置域名为 <strong>ccnasecurity.com</strong> 。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">ciscoasa(config)#hostname CCNAS-ASA
</span></span><span class="line"><span class="cl">CCNAS-ASA(config)#domain-name ccnasecurity.com
</span></span></code></pre></td></tr></table>
</div>
</div><p><strong>步骤2：配置启用模式密码。</strong></p>
<p>使用 <code>enable password</code> 命令将特权EXEC模式密码更改为 <strong>ciscoenpa55</strong> 。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">CCNAS-ASA(config)#enable password ciscoenpa55
</span></span></code></pre></td></tr></table>
</div>
</div><p><strong>步骤3：设置日期和时间。</strong></p>
<p>使用 <code>clock set</code> 命令手动设置日期和时间（此步骤不计入评分）。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">CCNAS-ASA(config)#clock set 21:42:25 May 11 2023
</span></span></code></pre></td></tr></table>
</div>
</div><p><strong>步骤4：配置内部和外部接口。</strong></p>
<p>此时您只需配置VLAN 1（内部）和VLAN 2（外部）接口。VLAN 3（dmz）接口将在活动的第五部分进行配置。</p>
<p>a. 为内部网络（192.168.1.0/24）配置逻辑VLAN 1接口，并将其安全级别设置为最高值 <strong>100</strong> 。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">CCNAS-ASA(config)# interface vlan 1
</span></span><span class="line"><span class="cl">CCNAS-ASA(config-if)# nameif inside
</span></span><span class="line"><span class="cl">CCNAS-ASA(config-if)# ip address 192.168.1.1 255.255.255.0
</span></span><span class="line"><span class="cl">CCNAS-ASA(config-if)# security-level 100
</span></span></code></pre></td></tr></table>
</div>
</div><p>b. 为外部网络（209.165.200.224/29）创建逻辑VLAN 2接口，将其安全级别设置为最低值 <strong>0</strong> ，并启用VLAN 2接口。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">CCNAS-ASA(config-if)# interface vlan 2
</span></span><span class="line"><span class="cl">CCNAS-ASA(config-if)# nameif outside
</span></span><span class="line"><span class="cl">CCNAS-ASA(config-if)# ip address 209.165.200.226 255.255.255.248
</span></span><span class="line"><span class="cl">CCNAS-ASA(config-if)# security-level 0
</span></span></code></pre></td></tr></table>
</div>
</div><p>c. 使用以下验证命令检查您的配置：</p>
<ol>
<li>使用 <code>show interface ip brief</code> 命令显示所有ASA接口的状态。注意：这个命令与IOS命令show ip interface brief不同。如果之前配置的任何物理或逻辑接口状态不是up/up，请根据需要排查问题后再继续。</li>
</ol>
<p>提示：大多数ASA show命令，包括ping、copy等，无需do命令即可在任意配置模式提示符下执行。</p>
<ol>
<li>
<p>使用 <code>show ip address</code> 命令显示三层VLAN接口的信息。</p>
</li>
<li>
<p>使用 <code>show switch vlan</code> 命令显示ASA上配置的内部和外部VLAN以及分配的端口。</p>
</li>
</ol>
<p><strong>步骤5：测试到ASA的连接性。</strong></p>
<p>a. 应该可以从PC-B成功ping通ASA内部接口地址（192.168.1.1）。如果无法ping通，请按需排查配置问题。

<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212649034.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212649034.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>b. 从PC-B尝试ping VLAN 2（外部）接口的IP地址209.165.200.226。理论上您不应该能ping通这个地址。

<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212651625.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212651625.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="第三部分使用cli配置路由地址转换和检查策略">第三部分：使用CLI配置路由、地址转换和检查策略</h3>
<p><strong>步骤1：为ASA配置静态默认路由。</strong></p>
<p>在ASA外部接口上配置默认静态路由，以便ASA能够访问外部网络。</p>
<p>a. 使用 <code>route</code> 命令创建一个“全零”默认路由，将其与ASA外部接口关联，并将R1 G0/0 IP地址（209.165.200.225）设置为最后手段网关。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">CCNAS-ASA(config)# route outside 0.0.0.0 0.0.0.0 209.165.200.225
</span></span></code></pre></td></tr></table>
</div>
</div><p>b. 发出 <code>show route</code> 命令以验证静态默认路由是否存在于ASA路由表中。</p>
<p>c. 验证ASA能否ping通R1 S0/0/0 IP地址10.1.1.1。如果无法ping通，请按需排查问题。</p>
<p><strong>步骤2：使用PAT和网络对象配置地址转换。</strong></p>
<p>a. 创建名为 <strong>inside-net</strong> 的网络对象，并使用subnet和nat命令为其分配属性。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">CCNAS-ASA(config)# object network inside-net
</span></span><span class="line"><span class="cl">CCNAS-ASA(config-network-object)# subnet 192.168.1.0 255.255.255.0
</span></span><span class="line"><span class="cl">CCNAS-ASA(config-network-object)# nat (inside,outside) dynamic interface
</span></span><span class="line"><span class="cl">CCNAS-ASA(config-network-object)# end
</span></span></code></pre></td></tr></table>
</div>
</div><p>b. ASA将配置拆分为定义要转换的网络的对象部分以及实际的nat命令参数。这些内容会在运行配置中的两个不同位置显示。使用 <code>show run</code> 命令显示NAT对象配置。</p>
<p>c. 从PC-B尝试ping R1 G0/0接口IP地址209.165.200.225。这些ping请求应失败。

<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212653563.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212653563.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>d. 在ASA上发出 <code>show nat</code> 命令查看已翻译和未翻译的命中次数。请注意，来自PC-B的ping请求中有四个被翻译，四个未被翻译。外出的ping（echo请求）已被翻译并发送至目标。返回的echo响应由于防火墙策略而被阻止。您将在本部分活动的第3步配置默认检查策略以允许ICMP流量。</p>
<p><strong>步骤3：修改默认MPF应用检查全局服务策略。</strong></p>
<p>为了实现应用层检查和其他高级选项，Cisco ASA设备提供了MPF功能。</p>
<p>Packet Tracer ASA设备默认没有MPF策略映射。作为修改，我们可以创建一个默认策略映射，用于对内部到外部的流量进行检查。正确配置后，只有由内部发起的流量才被允许回传到外部接口。您需要将ICMP添加到检查列表中。</p>
<p>a. 使用以下命令创建类图、策略映射和服务策略，并在策略映射列表中添加ICMP流量的检查：</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span><span class="lnt">5
</span><span class="lnt">6
</span><span class="lnt">7
</span><span class="lnt">8
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">CCNAS-ASA(config)# class-map inspection_default
</span></span><span class="line"><span class="cl">CCNAS-ASA(config-cmap)# match default-inspection-traffic
</span></span><span class="line"><span class="cl">CCNAS-ASA(config-cmap)# exit
</span></span><span class="line"><span class="cl">CCNAS-ASA(config)# policy-map global_policy
</span></span><span class="line"><span class="cl">CCNAS-ASA(config-pmap)# class inspection_default
</span></span><span class="line"><span class="cl">CCNAS-ASA(config-pmap-c)# inspect icmp
</span></span><span class="line"><span class="cl">CCNAS-ASA(config-pmap-c)# exit
</span></span><span class="line"><span class="cl">CCNAS-ASA(config)# service-policy global_policy global
</span></span></code></pre></td></tr></table>
</div>
</div><p>b. 从PC-B再次尝试ping R1 G0/0接口IP地址209.165.200.225。这次ping应该成功，因为现在ICMP流量正在被检查，合法的返回流量被允许通过。若ping失败，请排查您的配置。

<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212655546.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212655546.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="第四部分配置dhcpaaa和ssh">第四部分：配置DHCP、AAA和SSH</h3>
<p><strong>步骤1：配置ASA作为DHCP服务器。</strong></p>
<p>a. 在ASA内部接口上配置DHCP地址池并启用它。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">CCNAS-ASA(config)# dhcpd address 192.168.1.5-192.168.1.36 inside
</span></span></code></pre></td></tr></table>
</div>
</div><p>b. （可选）指定给客户端提供的DNS服务器IP地址。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">CCNAS-ASA(config)# dhcpd dns 209.165.201.2 interface inside
</span></span></code></pre></td></tr></table>
</div>
</div><p>c. 在ASA内启用DHCP守护进程，使其监听内部接口上的DHCP客户端请求。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">CCNAS-ASA(config)# dhcpd enable inside
</span></span></code></pre></td></tr></table>
</div>
</div><p>d. 将PC-B从静态IP地址更改为DHCP客户端，并验证其是否接收到IP地址信息。如有必要，请解决任何问题。

<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212657871.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212657871.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p><strong>步骤2：配置AAA以使用本地数据库进行身份验证。</strong></p>
<p>a. 使用username命令定义一个名为admin的本地用户，并指定密码adminpa55。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">CCNAS-ASA(config)# username admin password adminpa55
</span></span></code></pre></td></tr></table>
</div>
</div><p>b. 配置AAA以使用本地ASA数据库进行SSH用户身份验证。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">CCNAS-ASA(config)# aaa authentication ssh console LOCAL
</span></span></code></pre></td></tr></table>
</div>
</div><p><strong>步骤3：配置远程访问ASA。</strong></p>
<p>ASA可以配置为接受来自内部或外部网络的单个主机或范围内的主机连接。在此步骤中，外部网络的主机只能通过SSH与ASA通信。SSH会话可用于从内部网络访问ASA。</p>
<p>a. 生成RSA密钥对，这是支持SSH连接所必需的。由于ASA设备已经有RSA密钥存在，当提示替换它们时请输入no。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">CCNAS-ASA(config)# crypto key generate rsa modulus 1024
</span></span></code></pre></td></tr></table>
</div>
</div><p>b. 配置ASA以允许来自内部网络（192.168.1.0/24）和外部网络分支办公室远程管理主机（172.16.3.3）的任何主机通过SSH进行连接。设置SSH超时时间为10分钟（默认为5分钟）。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">CCNAS-ASA(config)# ssh 192.168.1.0 255.255.255.0 inside
</span></span><span class="line"><span class="cl">CCNAS-ASA(config)# ssh 172.16.3.3 255.255.255.255 outside
</span></span><span class="line"><span class="cl">CCNAS-ASA(config)# ssh timeout 10
</span></span></code></pre></td></tr></table>
</div>
</div><p>c. 从PC-C通过SSH建立到ASA（209.165.200.226）的会话。如不成功，请排查问题。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">PC&gt; ssh -l admin 209.165.200.226
</span></span></code></pre></td></tr></table>
</div>
</div><p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212700132.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212700132.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>d. 从PC-B通过SSH建立到ASA（192.168.1.1）的会话。如不成功，请排查问题。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">PC&gt; ssh -l admin 192.168.1.1
</span></span></code></pre></td></tr></table>
</div>
</div><p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212701975.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212701975.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="第五部分配置dmz静态nat和acl">第五部分：配置DMZ、静态NAT和ACL</h3>
<p>R1 G0/0接口与ASA的外部接口分别使用209.165.200.225和.226。您将使用公网地址209.165.200.227，并通过静态NAT提供对服务器的地址转换访问。</p>
<p><strong>步骤1：在ASA上配置DMZ接口VLAN 3。</strong></p>
<p>a. 配置DMZ VLAN 3，该VLAN将是公共访问Web服务器所在的位置。为它分配IP地址192.168.2.1/24，并命名为 <strong>dmz</strong> ，同时为其设置安全级别为 <strong>70</strong> 。由于服务器无需主动与内部用户通信，因此禁用到接口VLAN 1的转发。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span><span class="lnt">5
</span><span class="lnt">6
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">CCNAS-ASA<span class="o">(</span>config<span class="o">)</span><span class="c1"># interface vlan 3</span>
</span></span><span class="line"><span class="cl">CCNAS-ASA<span class="o">(</span>config-if<span class="o">)</span><span class="c1"># ip address 192.168.2.1 255.255.255.0</span>
</span></span><span class="line"><span class="cl">CCNAS-ASA<span class="o">(</span>config-if<span class="o">)</span><span class="c1"># no forward interface vlan 1</span>
</span></span><span class="line"><span class="cl">CCNAS-ASA<span class="o">(</span>config-if<span class="o">)</span><span class="c1"># nameif dmz</span>
</span></span><span class="line"><span class="cl">INFO: Security level <span class="k">for</span> <span class="s2">&#34;dmz&#34;</span> <span class="nb">set</span> to <span class="m">0</span> by default.
</span></span><span class="line"><span class="cl">CCNAS-ASA<span class="o">(</span>config-if<span class="o">)</span><span class="c1"># security-level 70</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p>b. 将ASA物理接口E0/2分配给DMZ VLAN 3并启用此接口。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">CCNAS-ASA<span class="o">(</span>config-if<span class="o">)</span><span class="c1"># interface Ethernet0/2</span>
</span></span><span class="line"><span class="cl">CCNAS-ASA<span class="o">(</span>config-if<span class="o">)</span><span class="c1"># switchport access vlan 3</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p>c. 使用以下验证命令检查您的配置：</p>
<ol>
<li>
<p>使用 <code>show interface ip brief</code> 命令显示所有ASA接口的状态。

<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212704275.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212704275.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
</li>
<li>
<p>使用 <code>show ip address</code> 命令显示第3层VLAN接口的信息。

<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212706400.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212706400.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
</li>
<li>
<p>使用 <code>show switch vlan</code> 命令显示ASA上的inside和outside VLAN配置以及分配的端口信息。

<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212708670.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212708670.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
</li>
</ol>
<p><strong>步骤2：使用网络对象配置到DMZ服务器的静态NAT。</strong></p>
<p>配置一个名为dmz-server的网络对象，并将其分配给DMZ服务器的静态IP地址（192.168.2.3）。在定义对象模式下，使用nat命令指定此对象用于使用静态NAT将DMZ地址翻译为外部地址，并指定公开翻译地址209.165.200.227。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">CCNAS-ASA(config)# object network dmz-server
</span></span><span class="line"><span class="cl">CCNAS-ASA(config-network-object)# host 192.168.2.3
</span></span><span class="line"><span class="cl">CCNAS-ASA(config-network-object)# nat (dmz,outside) static 209.165.200.227
</span></span><span class="line"><span class="cl">CCNAS-ASA(config-network-object)# exit
</span></span></code></pre></td></tr></table>
</div>
</div><p><strong>步骤3：配置ACL以允许从互联网访问DMZ服务器。</strong></p>
<p>配置一个名为OUTSIDE-DMZ的命名访问列表，允许来自任何外部主机到DMZ服务器内部IP地址的TCP协议在端口80上进行通信。将访问列表应用到ASA的外部接口的“IN”方向。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">CCNAS-ASA(config)# access-list OUTSIDE-DMZ permit tcp any host 192.168.2.3 eq 80
</span></span><span class="line"><span class="cl">CCNAS-ASA(config)# access-group OUTSIDE-DMZ in interface outside
</span></span></code></pre></td></tr></table>
</div>
</div><p>注：与IOS ACL不同，ASA ACL的permit语句必须允许对内部私有DMZ地址的访问。外部主机通过服务器的公共静态NAT地址访问服务器，ASA将其翻译成内部主机IP地址，然后应用ACL。</p>
<p><strong>步骤4：测试对DMZ服务器的访问。</strong></p>
<p>在创建Packet Tracer活动时，成功测试外部对DMZ Web服务器的访问功能并未实现；因此，不强制要求成功测试。</p>
<p><strong>步骤5：检查结果。</strong></p>
<p>完成百分比应为100%。点击“Check Results”查看反馈和已完成所需组件的验证。</p>
<h3 id="实验脚本">实验脚本：</h3>
<p><strong>第一部分：验证连接和探索ASA设备</strong></p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">hostname CCNAS-ASA
</span></span><span class="line"><span class="cl">domain-name ccnasecurity.com
</span></span><span class="line"><span class="cl"><span class="nb">enable</span> password ciscoenpa55
</span></span><span class="line"><span class="cl">clock <span class="nb">set</span> 10:38:00 <span class="m">22</span> dec <span class="m">2020</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p><strong>第二部分：使用CLI配置ASA设置和接口安全</strong></p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
</span><span class="lnt"> 2
</span><span class="lnt"> 3
</span><span class="lnt"> 4
</span><span class="lnt"> 5
</span><span class="lnt"> 6
</span><span class="lnt"> 7
</span><span class="lnt"> 8
</span><span class="lnt"> 9
</span><span class="lnt">10
</span><span class="lnt">11
</span><span class="lnt">12
</span><span class="lnt">13
</span><span class="lnt">14
</span><span class="lnt">15
</span><span class="lnt">16
</span><span class="lnt">17
</span><span class="lnt">18
</span><span class="lnt">19
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">interface vlan <span class="m">1</span>
</span></span><span class="line"><span class="cl">nameif inside
</span></span><span class="line"><span class="cl">ip address 192.168.1.1 255.255.255.0
</span></span><span class="line"><span class="cl">security-level <span class="m">100</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">interface vlan <span class="m">2</span>
</span></span><span class="line"><span class="cl">nameif outside
</span></span><span class="line"><span class="cl">ip address 209.165.200.226 255.255.255.248
</span></span><span class="line"><span class="cl">security-level <span class="m">0</span>
</span></span><span class="line"><span class="cl">interface Ethernet0/0
</span></span><span class="line"><span class="cl">switchport access vlan <span class="m">2</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">interface vlan <span class="m">3</span>
</span></span><span class="line"><span class="cl">ip address 192.168.2.1 255.255.255.0
</span></span><span class="line"><span class="cl">no forward interface vlan <span class="m">1</span>
</span></span><span class="line"><span class="cl">nameif dmz
</span></span><span class="line"><span class="cl">security-level <span class="m">70</span>
</span></span><span class="line"><span class="cl">interface Ethernet0/2
</span></span><span class="line"><span class="cl">switchport access vlan <span class="m">3</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p><strong>第三部分：使用CLI配置路由、地址转换和检查策略</strong></p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span><span class="lnt">5
</span><span class="lnt">6
</span><span class="lnt">7
</span><span class="lnt">8
</span><span class="lnt">9
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">route outside 0.0.0.0 0.0.0.0 209.165.200.225
</span></span><span class="line"><span class="cl">class-map inspection_default
</span></span><span class="line"><span class="cl">match default-inspection-traffic
</span></span><span class="line"><span class="cl"><span class="nb">exit</span>
</span></span><span class="line"><span class="cl">policy-map global_policy
</span></span><span class="line"><span class="cl">class inspection_default
</span></span><span class="line"><span class="cl">inspect icmp
</span></span><span class="line"><span class="cl"><span class="nb">exit</span>
</span></span><span class="line"><span class="cl">service-policy global_policy global
</span></span></code></pre></td></tr></table>
</div>
</div><p><strong>第四部分：配置DHCP、AAA和SSH</strong></p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
</span><span class="lnt"> 2
</span><span class="lnt"> 3
</span><span class="lnt"> 4
</span><span class="lnt"> 5
</span><span class="lnt"> 6
</span><span class="lnt"> 7
</span><span class="lnt"> 8
</span><span class="lnt"> 9
</span><span class="lnt">10
</span><span class="lnt">11
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">dhcpd address 192.168.1.5-192.168.1.36 inside
</span></span><span class="line"><span class="cl">dhcpd dns 209.165.201.2 interface inside
</span></span><span class="line"><span class="cl">dhcpd <span class="nb">enable</span> inside
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">username admin password adminpa55
</span></span><span class="line"><span class="cl">crypto key generate rsa modulus <span class="m">1024</span> <span class="c1">#no</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">aaa authentication ssh console LOCAL
</span></span><span class="line"><span class="cl">ssh 192.168.1.0 255.255.255.0 inside
</span></span><span class="line"><span class="cl">ssh 172.16.3.3 255.255.255.255 outside
</span></span><span class="line"><span class="cl">ssh timeout <span class="m">10</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p><strong>第五部分：配置DMZ、静态NAT和ACL</strong></p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
</span><span class="lnt"> 2
</span><span class="lnt"> 3
</span><span class="lnt"> 4
</span><span class="lnt"> 5
</span><span class="lnt"> 6
</span><span class="lnt"> 7
</span><span class="lnt"> 8
</span><span class="lnt"> 9
</span><span class="lnt">10
</span><span class="lnt">11
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">object network dmz-server
</span></span><span class="line"><span class="cl">host 192.168.2.3
</span></span><span class="line"><span class="cl">nat <span class="o">(</span>dmz,outside<span class="o">)</span> static 209.165.200.227
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">object network inside-net
</span></span><span class="line"><span class="cl">subnet 192.168.1.0 255.255.255.0
</span></span><span class="line"><span class="cl">nat <span class="o">(</span>inside,outside<span class="o">)</span> dynamic interface
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">access-list OUTSIDE-DMZ permit icmp any host 192.168.2.3
</span></span><span class="line"><span class="cl">access-list OUTSIDE-DMZ permit tcp any host 192.168.2.3 eq <span class="m">80</span>
</span></span><span class="line"><span class="cl">access-group OUTSIDE-DMZ in interface outside
</span></span></code></pre></td></tr></table>
</div>
</div>]]></content:encoded>
    </item>
    <item>
      <title>Packet Tracer - Configuring a Zone-Based Policy Firewall (配置基于区域的策略防火墙 ZPF)</title>
      <link>https://yuexuan521.github.io/zh/posts/packet-tracer-configuring-a-zone-based-policy-firewall-%E9%85%8D%E7%BD%AE%E5%9F%BA%E4%BA%8E%E5%8C%BA%E5%9F%9F%E7%9A%84%E7%AD%96%E7%95%A5%E9%98%B2%E7%81%AB%E5%A2%99-zpf/</link>
      <pubDate>Thu, 23 Jan 2025 12:41:12 +0000</pubDate>
      <guid>https://yuexuan521.github.io/zh/posts/packet-tracer-configuring-a-zone-based-policy-firewall-%E9%85%8D%E7%BD%AE%E5%9F%BA%E4%BA%8E%E5%8C%BA%E5%9F%9F%E7%9A%84%E7%AD%96%E7%95%A5%E9%98%B2%E7%81%AB%E5%A2%99-zpf/</guid>
      <description>&lt;h2 id=&#34;packet-tracer---配置基于区域的策略防火墙zpf&#34;&gt;Packet Tracer - 配置基于区域的策略防火墙（ZPF）&lt;/h2&gt;
&lt;h3 id=&#34;地址表&#34;&gt;地址表&lt;/h3&gt;
&lt;p&gt;
&lt;div class=&#34;post-img-view&#34;&gt;
    &lt;a data-fancybox=&#34;gallery&#34; href=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212629252.png&#34;&gt;
        &lt;img src=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212629252.png&#34; 
             alt=&#34;在这里插入图片描述&#34; 
              
             loading=&#34;lazy&#34;
        /&gt;
    &lt;/a&gt;
&lt;/div&gt;&lt;/p&gt;
&lt;h3 id=&#34;目标&#34;&gt;目标&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;在防火墙配置前验证设备之间的连通性。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;在路由器R3上配置基于区域的策略（ZPF）防火墙。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;使用ping、Telnet和网页浏览器验证ZPF防火墙功能。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<h2 id="packet-tracer---配置基于区域的策略防火墙zpf">Packet Tracer - 配置基于区域的策略防火墙（ZPF）</h2>
<h3 id="地址表">地址表</h3>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212629252.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212629252.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="目标">目标</h3>
<ul>
<li>
<p>在防火墙配置前验证设备之间的连通性。</p>
</li>
<li>
<p>在路由器R3上配置基于区域的策略（ZPF）防火墙。</p>
</li>
<li>
<p>使用ping、Telnet和网页浏览器验证ZPF防火墙功能。</p>
</li>
</ul>
<h3 id="背景场景">背景/场景</h3>
<p>基于区域的策略（Zone-Based Policy，ZPF）防火墙是Cisco防火墙技术发展的最新成果。在本活动中，您将在边缘路由器R3上配置一个基本的ZPF防火墙，允许内部主机访问外部资源，并阻止外部主机访问内部资源。然后，从内部和外部主机验证防火墙的功能。</p>
<p>路由器已预先配置了以下内容：</p>
<ul>
<li>
<p>控制台密码： <strong>ciscoconpa55</strong></p>
</li>
<li>
<p>vty线路密码： <strong>ciscovtypa55</strong></p>
</li>
<li>
<p>启用密码： <strong>ciscoenpa55</strong></p>
</li>
<li>
<p>主机名和IP地址配置</p>
</li>
<li>
<p>静态路由配置</p>
</li>
</ul>
<h3 id="第一部分验证基本网络连通性">第一部分：验证基本网络连通性</h3>
<p>在配置基于区域的策略防火墙之前，验证网络连通性。</p>
<p><strong>步骤1：从PC-A命令提示符，ping PC-C的192.168.3.3地址。</strong>

<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212631463.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212631463.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p><strong>步骤2：从PC-C命令提示符，通过telnet连接到Router R2 S0/0/1接口的10.2.2.2地址。退出Telnet会话。</strong>

<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212633272.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212633272.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p><strong>步骤3：从PC-C打开一个网页浏览器访问PC-A服务器。</strong></p>
<p>a. 点击桌面标签页并点击Web浏览器应用程序。将PC-A的IP地址 <strong>192.168.1.3</strong> 作为URL输入。此时应显示来自Web服务器的Packet Tracer欢迎页面。

<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212634919.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212634919.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>b. 关闭PC-C上的浏览器。</p>
<h3 id="第二部分在路由器r3上创建防火墙区域">第二部分：在路由器R3上创建防火墙区域</h3>
<p>注意：对于所有配置任务，请确保使用指定的确切名称。</p>
<p><strong>步骤1：创建内部区域。</strong></p>
<p>使用 <strong>zone security</strong> 命令创建名为 <strong>IN-ZONE</strong> 的区域。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">R3(config)# zone security IN-ZONE
</span></span></code></pre></td></tr></table>
</div>
</div><p><strong>步骤2：创建外部区域。</strong></p>
<p>使用 <strong>zone security</strong> 命令创建名为 <strong>OUT-ZONE</strong> 的区域，并退出区域安全配置模式。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">R3(config)# zone security OUT-ZONE
</span></span><span class="line"><span class="cl">R3(config-sec-zone)# exit
</span></span></code></pre></td></tr></table>
</div>
</div><h3 id="第三部分定义流量类别和访问列表">第三部分：定义流量类别和访问列表</h3>
<p><strong>步骤1：创建定义内部流量的ACL。</strong></p>
<p>使用 <code>access-list</code> 命令创建扩展ACL 101，允许来自192.168.3.0/24源网络的所有IP协议到任何目的地。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">R3(config)# access-list 101 permit ip 192.168.3.0 0.0.0.255 any
</span></span></code></pre></td></tr></table>
</div>
</div><p><strong>步骤2：创建引用内部流量ACL的类映射。</strong></p>
<p>使用带有match-all选项的 <code>class-map type inspect</code> 命令创建名为 <strong>IN-NET-CLASS-MAP</strong> 的类映射。使用 <code>match access-group</code> 命令匹配ACL 101。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">R3(config)# class-map type inspect match-all IN-NET-CLASS-MAP
</span></span><span class="line"><span class="cl">R3(config-cmap)# match access-group 101
</span></span><span class="line"><span class="cl">R3(config-cmap)# exit
</span></span></code></pre></td></tr></table>
</div>
</div><p>注：虽然在本Packet Tracer练习中不支持，但可以通过match-any选项指定具体的协议（如HTTP、FTP等），以便对需要检查的流量类型提供更精确的控制。</p>
<h3 id="第四部分指定防火墙策略">第四部分：指定防火墙策略</h3>
<p><strong>步骤1：创建策略映射以确定如何处理匹配的流量。</strong></p>
<p>使用 <code>policy-map type inspect</code> 命令并创建一个名为IN-2-OUT-PMAP的策略映射。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">R3(config)# policy-map type inspect IN-2-OUT-PMAP
</span></span></code></pre></td></tr></table>
</div>
</div><p><strong>步骤2：指定inspect类型的类，并引用类映射IN-NET-CLASS-MAP。</strong></p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">R3(config-pmap)# class type inspect IN-NET-CLASS-MAP
</span></span></code></pre></td></tr></table>
</div>
</div><p><strong>步骤3：为该策略映射指定inspect操作。</strong></p>
<p>使用inspect命令会调用基于上下文的访问控制（其他选项包括pass和drop）。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">R3(config-pmap-c)# inspect
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">%No specific protocol configured in class IN-NET-CLASS-MAP for inspection. All protocols will be inspected.
</span></span></code></pre></td></tr></table>
</div>
</div><p>提示信息表示IN-NET-CLASS-MAP类没有配置特定协议进行检查，因此所有协议都将被检查。</p>
<p>连续两次发出exit命令，退出config-pmap-c模式并返回到config模式。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">R3(config-pmap-c)# exit
</span></span><span class="line"><span class="cl">R3(config-pmap)# exit
</span></span></code></pre></td></tr></table>
</div>
</div><h3 id="第五部分应用防火墙策略">第五部分：应用防火墙策略</h3>
<p><strong>步骤1：创建一对区域。</strong></p>
<p>使用 <code>zone-pair security</code> 命令，创建一个名为 <strong>IN-2-OUT-ZPAIR</strong> 的区域对。指定在任务1中创建的源和目标区域。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">R3(config)# zone-pair security IN-2-OUT-ZPAIR source IN-ZONE destination OUT-ZONE
</span></span></code></pre></td></tr></table>
</div>
</div><p><strong>步骤2：为两个区域之间的流量指定策略映射。</strong></p>
<p>通过 <code>service-policy type inspect</code> 命令将策略映射及其关联操作附加到区域对，并引用之前创建的策略映射IN-2-OUT-PMAP。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">R3(config-sec-zone-pair)# service-policy type inspect IN-2-OUT-PMAP
</span></span><span class="line"><span class="cl">R3(config-sec-zone-pair)# exit
</span></span><span class="line"><span class="cl">R3(config)#
</span></span></code></pre></td></tr></table>
</div>
</div><p><strong>步骤3：将接口分配给相应的安全区域。</strong></p>
<p>在接口配置模式下，使用 <code>zone-member security</code> 命令将Fa0/1分配给IN-ZONE，将S0/0/1分配给OUT-ZONE。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span><span class="lnt">5
</span><span class="lnt">6
</span><span class="lnt">7
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">R3(config)# interface fa0/1
</span></span><span class="line"><span class="cl">R3(config-if)# zone-member security IN-ZONE
</span></span><span class="line"><span class="cl">R3(config-if)# exit
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">R3(config)# interface s0/0/1
</span></span><span class="line"><span class="cl">R3(config-if)# zone-member security OUT-ZONE
</span></span><span class="line"><span class="cl">R3(config-if)# exit
</span></span></code></pre></td></tr></table>
</div>
</div><p><strong>步骤4：将运行配置复制到启动配置。</strong></p>
<h3 id="第六部分从in-zone到out-zone测试防火墙功能">第六部分：从IN-ZONE到OUT-ZONE测试防火墙功能</h3>
<p>验证配置基于区域的策略防火墙后，内部主机仍能访问外部资源。</p>
<p><strong>步骤1：从内部PC-C，ping外部PC-A服务器。</strong></p>
<p>从PC-C命令提示符，ping PC-A的192.168.1.3地址。ping操作应成功。

<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212636519.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212636519.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p><strong>步骤2：从内部PC-C，telnet到路由器R2 S0/0/1接口。</strong></p>
<p>a. 从PC-C命令提示符，telnet到R2的10.2.2.2，并提供vty密码 <strong>ciscovtypa55</strong> 。Telnet会话应成功。

<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212638375.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212638375.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>b. 在活动的Telnet会话中，在R3上执行命令 <code>show policy-map type inspect zone-pair sessions</code> 以查看已建立的会话。

<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212640108.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212640108.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>源IP地址和端口号是什么？</p>
<p>目标IP地址和端口号是什么？</p>
<p><strong>步骤3：从PC-C退出R2上的Telnet会话并关闭命令提示符窗口。</strong></p>
<p><strong>步骤4：从内部PC-C，打开一个网页浏览器访问PC-A服务器的网页。</strong></p>
<p>在浏览器URL字段中输入服务器IP地址192.168.1.3，并点击“Go”。HTTP会话应成功。在HTTP会话活动期间，在R3上执行命令 <code>show policy-map type inspect zone-pair sessions</code> 以查看已建立的会话。</p>
<p>注：如果在您在R3上执行命令之前HTTP会话超时，您需要在PC-C上点击“Go”按钮来生成PC-C与PC-A之间的会话。

<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212641865.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212641865.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>源IP地址和端口号是什么？</p>
<p>目标IP地址和端口号是什么？</p>
<p><strong>步骤5：关闭PC-C上的浏览器。</strong></p>
<h3 id="第七部分从out-zone到in-zone测试防火墙功能">第七部分：从OUT-ZONE到IN-ZONE测试防火墙功能</h3>
<p>验证配置基于区域的策略防火墙后，外部主机无法访问内部资源。</p>
<p><strong>步骤1：从PC-A服务器命令提示符，ping PC-C。</strong></p>
<p>从PC-A命令提示符，ping PC-C的192.168.3.3地址。ping操作应失败。

<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212643452.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212643452.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p><strong>步骤2：从路由器R2，ping PC-C。</strong></p>
<p>从R2，ping PC-C的192.168.3.3地址。ping操作应失败。

<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212645060.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228212645060.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p><strong>步骤3：检查结果。</strong></p>
<p>您的完成百分比应为100%。点击“CheckResults”查看反馈和已完成的必要组件验证。</p>
]]></content:encoded>
    </item>
    <item>
      <title>BUUCTF [WUSTCTF2020]爬 1</title>
      <link>https://yuexuan521.github.io/zh/posts/buuctf-wustctf2020%E7%88%AC-1/</link>
      <pubDate>Fri, 01 Nov 2024 11:40:18 +0000</pubDate>
      <guid>https://yuexuan521.github.io/zh/posts/buuctf-wustctf2020%E7%88%AC-1/</guid>
      <description>&lt;p&gt;
&lt;div class=&#34;post-img-view&#34;&gt;
    &lt;a data-fancybox=&#34;gallery&#34; href=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192257155.png&#34;&gt;
        &lt;img src=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192257155.png&#34; 
             alt=&#34;&#34; 
              
             loading=&#34;lazy&#34;
        /&gt;
    &lt;/a&gt;
&lt;/div&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;BUUCTF: &lt;a href=&#34;https://buuoj.cn/challenges&#34;target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;https://buuoj.cn/challenges&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;相关阅读
&lt;a href=&#34;https://ctf-wiki.org/&#34;target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;CTF Wiki&lt;/a&gt;
&lt;a href=&#34;https://hello-ctf.com/HC_Start/&#34;target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Hello CTF&lt;/a&gt;
&lt;a href=&#34;https://ns.openctf.net/learn/&#34;target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;NewStar CTF&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;
&lt;div class=&#34;post-img-view&#34;&gt;
    &lt;a data-fancybox=&#34;gallery&#34; href=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192259208.png&#34;&gt;
        &lt;img src=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192259208.png&#34; 
             alt=&#34;在这里插入图片描述&#34; 
              
             loading=&#34;lazy&#34;
        /&gt;
    &lt;/a&gt;
&lt;/div&gt;&lt;/p&gt;
&lt;h3 id=&#34;题目描述&#34;&gt;题目描述：&lt;/h3&gt;
&lt;p&gt;得到的 flag 请包上 flag{} 提交。&lt;/p&gt;
&lt;h3 id=&#34;密文&#34;&gt;密文：&lt;/h3&gt;
&lt;p&gt;下载附件，得到一个没有后缀的文件。

&lt;div class=&#34;post-img-view&#34;&gt;
    &lt;a data-fancybox=&#34;gallery&#34; href=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192301260.png&#34;&gt;
        &lt;img src=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192301260.png&#34; 
             alt=&#34;在这里插入图片描述&#34; 
              
             loading=&#34;lazy&#34;
        /&gt;
    &lt;/a&gt;
&lt;/div&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&#34;解题思路&#34;&gt;解题思路：&lt;/h3&gt;
&lt;p&gt;1、文件没有后缀，用010Editor看一下文件类型，是PDF文件。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192257155.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192257155.png" 
             alt="" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p><strong>BUUCTF: <a href="https://buuoj.cn/challenges"target="_blank" rel="noopener noreferrer">https://buuoj.cn/challenges</a></strong></p>
<hr>
<p>相关阅读
<a href="https://ctf-wiki.org/"target="_blank" rel="noopener noreferrer">CTF Wiki</a>
<a href="https://hello-ctf.com/HC_Start/"target="_blank" rel="noopener noreferrer">Hello CTF</a>
<a href="https://ns.openctf.net/learn/"target="_blank" rel="noopener noreferrer">NewStar CTF</a></p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192259208.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192259208.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="题目描述">题目描述：</h3>
<p>得到的 flag 请包上 flag{} 提交。</p>
<h3 id="密文">密文：</h3>
<p>下载附件，得到一个没有后缀的文件。

<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192301260.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192301260.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<hr>
<h3 id="解题思路">解题思路：</h3>
<p>1、文件没有后缀，用010Editor看一下文件类型，是PDF文件。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">Adobe Acrobat <span class="o">(</span>pdf<span class="o">)</span>， 文件头：25 <span class="m">50</span> <span class="m">44</span> <span class="m">46</span> 2D <span class="m">31</span> 2E
</span></span></code></pre></td></tr></table>
</div>
</div><p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192302299.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192302299.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>修改文件后缀为.pdf，打开如下图所示。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192304095.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192304095.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>2、提示flag在图片的后面，但PDF文件是无法修改的。使用电脑上的Word打开PDF文件，转换为word文件进行编辑。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192306428.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192306428.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>删除图片，得到一串十六进制的数据图片。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">0x77637466323032307b746831735f31735f405f7064665f616e645f7930755f63616e5f7573655f70686f7430736830707d
</span></span></code></pre></td></tr></table>
</div>
</div><p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192308325.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192308325.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>3、将这串十六进制数据转换为ASCII字符串，得到flag。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192310311.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192310311.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="flag">flag：</h3>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">flag<span class="o">{</span>th1s_1s_@_pdf_and_y0u_can_use_phot0sh0p<span class="o">}</span>
</span></span></code></pre></td></tr></table>
</div>
</div>]]></content:encoded>
    </item>
    <item>
      <title>BUUCTF 小明的保险箱 1</title>
      <link>https://yuexuan521.github.io/zh/posts/buuctf-%E5%B0%8F%E6%98%8E%E7%9A%84%E4%BF%9D%E9%99%A9%E7%AE%B1-1/</link>
      <pubDate>Fri, 01 Nov 2024 11:37:26 +0000</pubDate>
      <guid>https://yuexuan521.github.io/zh/posts/buuctf-%E5%B0%8F%E6%98%8E%E7%9A%84%E4%BF%9D%E9%99%A9%E7%AE%B1-1/</guid>
      <description>&lt;p&gt;
&lt;div class=&#34;post-img-view&#34;&gt;
    &lt;a data-fancybox=&#34;gallery&#34; href=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192920231.png&#34;&gt;
        &lt;img src=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192920231.png&#34; 
             alt=&#34;&#34; 
              
             loading=&#34;lazy&#34;
        /&gt;
    &lt;/a&gt;
&lt;/div&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;BUUCTF: &lt;a href=&#34;https://buuoj.cn/challenges&#34;target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;https://buuoj.cn/challenges&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;相关阅读
&lt;a href=&#34;https://ctf-wiki.org/&#34;target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;CTF Wiki&lt;/a&gt;
&lt;a href=&#34;https://hello-ctf.com/HC_Start/&#34;target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Hello CTF&lt;/a&gt;
&lt;a href=&#34;https://ns.openctf.net/learn/&#34;target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;NewStar CTF&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;
&lt;div class=&#34;post-img-view&#34;&gt;
    &lt;a data-fancybox=&#34;gallery&#34; href=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192922350.png&#34;&gt;
        &lt;img src=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192922350.png&#34; 
             alt=&#34;在这里插入图片描述&#34; 
              
             loading=&#34;lazy&#34;
        /&gt;
    &lt;/a&gt;
&lt;/div&gt;&lt;/p&gt;
&lt;h3 id=&#34;题目描述&#34;&gt;题目描述：&lt;/h3&gt;
&lt;p&gt;小明有一个保险箱，里面珍藏了小明的日记本，他记录了什么秘密呢？。。。告诉你，其实保险箱的密码四位纯数字密码。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192920231.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192920231.png" 
             alt="" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p><strong>BUUCTF: <a href="https://buuoj.cn/challenges"target="_blank" rel="noopener noreferrer">https://buuoj.cn/challenges</a></strong></p>
<hr>
<p>相关阅读
<a href="https://ctf-wiki.org/"target="_blank" rel="noopener noreferrer">CTF Wiki</a>
<a href="https://hello-ctf.com/HC_Start/"target="_blank" rel="noopener noreferrer">Hello CTF</a>
<a href="https://ns.openctf.net/learn/"target="_blank" rel="noopener noreferrer">NewStar CTF</a></p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192922350.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192922350.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="题目描述">题目描述：</h3>
<p>小明有一个保险箱，里面珍藏了小明的日记本，他记录了什么秘密呢？。。。告诉你，其实保险箱的密码四位纯数字密码。</p>
<h3 id="密文">密文：</h3>
<p>下载附件，得到一张.jpg图片。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192924269.jpeg">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192924269.jpeg" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<hr>
<h3 id="解题思路">解题思路：</h3>
<p>1、读完题目，感觉这是一道图片隐藏文件的题目，另外还需要用到压缩包密码破解的知识。先使用010 Editor查看图片，没有找到PK（zip文件的标志），反而被一个域名和一些HTML源代码扰乱方向，StegSolve上也没有什么帮助。转换方向，使用Kali的binwalk工具，看到图片中隐藏了一个rar压缩包，确定目标。
<a href="https://blog.csdn.net/weixin_45728231/article/details/120988424"target="_blank" rel="noopener noreferrer">Windows平台参考思路</a></p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192925919.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192925919.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>2、我没有直接在Kali平台下直接分离文件，而是在Windows下，通过修改图片文件后缀名为.rar来实现。解压压缩包果然需要密码。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192928061.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192928061.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>3、根据题目的提示，密码为四位纯数字。使用RARP工具暴力破解密码，选定合适的约束条件可以大幅减少破解所需要的时间。破解得到的密码为7869。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192929495.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192929495.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192931547.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192931547.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>3、使用密码来解压压缩包，得到2.txt文件，打开得到flag。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192933191.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192933191.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="flag">flag：</h3>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">flag<span class="o">{</span>75a3d68bf071ee188c418ea6cf0bb043<span class="o">}</span>
</span></span></code></pre></td></tr></table>
</div>
</div>]]></content:encoded>
    </item>
    <item>
      <title>BUUCTF 被嗅探的流量 1</title>
      <link>https://yuexuan521.github.io/zh/posts/buuctf-%E8%A2%AB%E5%97%85%E6%8E%A2%E7%9A%84%E6%B5%81%E9%87%8F-1/</link>
      <pubDate>Tue, 24 Sep 2024 22:49:00 +0000</pubDate>
      <guid>https://yuexuan521.github.io/zh/posts/buuctf-%E8%A2%AB%E5%97%85%E6%8E%A2%E7%9A%84%E6%B5%81%E9%87%8F-1/</guid>
      <description>&lt;p&gt;
&lt;div class=&#34;post-img-view&#34;&gt;
    &lt;a data-fancybox=&#34;gallery&#34; href=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193502458.png&#34;&gt;
        &lt;img src=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193502458.png&#34; 
             alt=&#34;&#34; 
              
             loading=&#34;lazy&#34;
        /&gt;
    &lt;/a&gt;
&lt;/div&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;BUUCTF: &lt;a href=&#34;https://buuoj.cn/challenges&#34;target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;https://buuoj.cn/challenges&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;相关阅读
&lt;a href=&#34;https://ctf-wiki.org/&#34;target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;CTF Wiki&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;
&lt;div class=&#34;post-img-view&#34;&gt;
    &lt;a data-fancybox=&#34;gallery&#34; href=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193504562.png&#34;&gt;
        &lt;img src=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193504562.png&#34; 
             alt=&#34;在这里插入图片描述&#34; 
              
             loading=&#34;lazy&#34;
        /&gt;
    &lt;/a&gt;
&lt;/div&gt;&lt;/p&gt;
&lt;h3 id=&#34;题目描述&#34;&gt;题目描述：&lt;/h3&gt;
&lt;p&gt;某黑客潜入到某公司内网通过嗅探抓取了一段文件传输的数据，该数据也被该公司截获，你能帮该公司分析他抓取的到底是什么文件的数据吗？&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193502458.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193502458.png" 
             alt="" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p><strong>BUUCTF: <a href="https://buuoj.cn/challenges"target="_blank" rel="noopener noreferrer">https://buuoj.cn/challenges</a></strong></p>
<hr>
<p>相关阅读
<a href="https://ctf-wiki.org/"target="_blank" rel="noopener noreferrer">CTF Wiki</a></p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193504562.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193504562.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="题目描述">题目描述：</h3>
<p>某黑客潜入到某公司内网通过嗅探抓取了一段文件传输的数据，该数据也被该公司截获，你能帮该公司分析他抓取的到底是什么文件的数据吗？</p>
<h3 id="密文">密文：</h3>
<p>下载附件，解压得到一个.pcapng文件。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193506954.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193506954.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="解题思路">解题思路：</h3>
<p>1、双击.pcapng文件，在Wireshark中打开，开始分析流量。我首先大致浏览了一下流量，发现HTTP协议的流量有上传文件的痕迹。（upload上传）</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193508795.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193508795.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>2、通过在顶部过滤器输入“http”语句，将HTTP流量过滤出来。（也可以使用“http.request.method==POST”语句实现更精确的过滤）</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193511377.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193511377.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>3、我是将每一条上传的流量都追踪HTTP流，最后找到有flag的报文。其实，可以查看流量的提示信息更快的定位目标流量。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193513413.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193513413.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>4、在这条流量的提示信息中，我们看到包含JPEG图像，追踪这条流量的HTTP流，看到很多的数据，在数据的最下面找到flag。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193515560.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193515560.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193516983.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193516983.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="flag">flag：</h3>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">flag<span class="o">{</span>da73d88936010da1eeeb36e945ec4b97<span class="o">}</span>
</span></span></code></pre></td></tr></table>
</div>
</div>]]></content:encoded>
    </item>
    <item>
      <title>BUUCTF 你竟然赶我走 1</title>
      <link>https://yuexuan521.github.io/zh/posts/buuctf-%E4%BD%A0%E7%AB%9F%E7%84%B6%E8%B5%B6%E6%88%91%E8%B5%B0-1/</link>
      <pubDate>Tue, 24 Sep 2024 22:37:55 +0000</pubDate>
      <guid>https://yuexuan521.github.io/zh/posts/buuctf-%E4%BD%A0%E7%AB%9F%E7%84%B6%E8%B5%B6%E6%88%91%E8%B5%B0-1/</guid>
      <description>&lt;p&gt;
&lt;div class=&#34;post-img-view&#34;&gt;
    &lt;a data-fancybox=&#34;gallery&#34; href=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192621766.png&#34;&gt;
        &lt;img src=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192621766.png&#34; 
             alt=&#34;&#34; 
              
             loading=&#34;lazy&#34;
        /&gt;
    &lt;/a&gt;
&lt;/div&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;BUUCTF: &lt;a href=&#34;https://buuoj.cn/challenges&#34;target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;https://buuoj.cn/challenges&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;相关阅读
&lt;a href=&#34;https://ctf-wiki.org/&#34;target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;CTF Wiki&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;
&lt;div class=&#34;post-img-view&#34;&gt;
    &lt;a data-fancybox=&#34;gallery&#34; href=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192624322.png&#34;&gt;
        &lt;img src=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192624322.png&#34; 
             alt=&#34;在这里插入图片描述&#34; 
              
             loading=&#34;lazy&#34;
        /&gt;
    &lt;/a&gt;
&lt;/div&gt;&lt;/p&gt;
&lt;h3 id=&#34;题目描述&#34;&gt;题目描述：&lt;/h3&gt;
&lt;p&gt;下载附件后有一张图片。&lt;/p&gt;
&lt;h3 id=&#34;密文&#34;&gt;密文：&lt;/h3&gt;
&lt;p&gt;
&lt;div class=&#34;post-img-view&#34;&gt;
    &lt;a data-fancybox=&#34;gallery&#34; href=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192625993.jpeg&#34;&gt;
        &lt;img src=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192625993.jpeg&#34; 
             alt=&#34;在这里插入图片描述&#34; 
              
             loading=&#34;lazy&#34;
        /&gt;
    &lt;/a&gt;
&lt;/div&gt;&lt;/p&gt;
&lt;h3 id=&#34;解题思路&#34;&gt;解题思路：&lt;/h3&gt;
&lt;p&gt;有两种解题方法&lt;/p&gt;
&lt;h4 id=&#34;方法一&#34;&gt;方法一：&lt;/h4&gt;
&lt;p&gt;1、使用StegSolve打开图片。&lt;/p&gt;
&lt;p&gt;
&lt;div class=&#34;post-img-view&#34;&gt;
    &lt;a data-fancybox=&#34;gallery&#34; href=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192627438.png&#34;&gt;
        &lt;img src=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192627438.png&#34; 
             alt=&#34;在这里插入图片描述&#34; 
              
             loading=&#34;lazy&#34;
        /&gt;
    &lt;/a&gt;
&lt;/div&gt;&lt;/p&gt;
&lt;p&gt;2、打开FileFormat（文件格式）&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192621766.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192621766.png" 
             alt="" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p><strong>BUUCTF: <a href="https://buuoj.cn/challenges"target="_blank" rel="noopener noreferrer">https://buuoj.cn/challenges</a></strong></p>
<hr>
<p>相关阅读
<a href="https://ctf-wiki.org/"target="_blank" rel="noopener noreferrer">CTF Wiki</a></p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192624322.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192624322.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="题目描述">题目描述：</h3>
<p>下载附件后有一张图片。</p>
<h3 id="密文">密文：</h3>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192625993.jpeg">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192625993.jpeg" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="解题思路">解题思路：</h3>
<p>有两种解题方法</p>
<h4 id="方法一">方法一：</h4>
<p>1、使用StegSolve打开图片。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192627438.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192627438.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>2、打开FileFormat（文件格式）</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192628780.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192628780.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>3、拉到最下面，找到flag。（注意要消除所有的空格）</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192633841.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192633841.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h4 id="方法二">方法二：</h4>
<p>1、使用WinHex打开图片，找到flag。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192635420.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228192635420.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="flag">flag：</h3>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">flag<span class="o">{</span>stego_is_s0_bor1ing<span class="o">}</span>
</span></span></code></pre></td></tr></table>
</div>
</div>]]></content:encoded>
    </item>
    <item>
      <title>BUUCTF 金三 1</title>
      <link>https://yuexuan521.github.io/zh/posts/buuctf-%E9%87%91%E4%B8%89-1/</link>
      <pubDate>Tue, 24 Sep 2024 22:36:19 +0000</pubDate>
      <guid>https://yuexuan521.github.io/zh/posts/buuctf-%E9%87%91%E4%B8%89-1/</guid>
      <description>&lt;p&gt;
&lt;div class=&#34;post-img-view&#34;&gt;
    &lt;a data-fancybox=&#34;gallery&#34; href=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193543814.png&#34;&gt;
        &lt;img src=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193543814.png&#34; 
             alt=&#34;&#34; 
              
             loading=&#34;lazy&#34;
        /&gt;
    &lt;/a&gt;
&lt;/div&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;BUUCTF: &lt;a href=&#34;https://buuoj.cn/challenges&#34;target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;https://buuoj.cn/challenges&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;相关阅读
&lt;a href=&#34;https://ctf-wiki.org/&#34;target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;CTF Wiki&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;
&lt;div class=&#34;post-img-view&#34;&gt;
    &lt;a data-fancybox=&#34;gallery&#34; href=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193545912.png&#34;&gt;
        &lt;img src=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193545912.png&#34; 
             alt=&#34;在这里插入图片描述&#34; 
              
             loading=&#34;lazy&#34;
        /&gt;
    &lt;/a&gt;
&lt;/div&gt;&lt;/p&gt;
&lt;h3 id=&#34;题目描述&#34;&gt;题目描述：&lt;/h3&gt;
&lt;p&gt;只有一个附件，下载下来有一张GIF图片。&lt;/p&gt;
&lt;h3 id=&#34;解题思路&#34;&gt;解题思路：&lt;/h3&gt;
&lt;p&gt;本题一共有2种解法（本人找到的）&lt;/p&gt;
&lt;h4 id=&#34;方法一&#34;&gt;方法一：&lt;/h4&gt;
&lt;p&gt;1、打开这张GIF图片，观察到不正常闪动，似乎有东西藏在图片中。
2、使用StegSolve工具，对图片进行逐帧查看。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193543814.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193543814.png" 
             alt="" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p><strong>BUUCTF: <a href="https://buuoj.cn/challenges"target="_blank" rel="noopener noreferrer">https://buuoj.cn/challenges</a></strong></p>
<hr>
<p>相关阅读
<a href="https://ctf-wiki.org/"target="_blank" rel="noopener noreferrer">CTF Wiki</a></p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193545912.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193545912.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="题目描述">题目描述：</h3>
<p>只有一个附件，下载下来有一张GIF图片。</p>
<h3 id="解题思路">解题思路：</h3>
<p>本题一共有2种解法（本人找到的）</p>
<h4 id="方法一">方法一：</h4>
<p>1、打开这张GIF图片，观察到不正常闪动，似乎有东西藏在图片中。
2、使用StegSolve工具，对图片进行逐帧查看。</p>
<p>在StegSolve中打开GIF图片</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193547762.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193547762.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>打开逐帧查看</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193549564.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193549564.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>在这里可以逐帧查看图片（理论上可以在这里看到逐帧的图片，但我这显示不出来）</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193551191.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193551191.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>3、找到三张带有flag的图片，拼在一起得到flag。(中间的那张图片“he11o”，中间是两个数字1)</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193552982.bmp">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193552982.bmp" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193554839.bmp">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193554839.bmp" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193556699.bmp">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193556699.bmp" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h4 id="方法二">方法二：</h4>
<p>1、使用Photoshop打开GIF图片，也可以逐帧查看图片。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193558520.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193558520.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="flag">flag：</h3>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">flag<span class="o">{</span>he11ohongke<span class="o">}</span>
</span></span></code></pre></td></tr></table>
</div>
</div>]]></content:encoded>
    </item>
    <item>
      <title>Misc | 相当于签到 第二届“奇安信”杯网络安全技能竞赛</title>
      <link>https://yuexuan521.github.io/zh/posts/misc-_-%E7%9B%B8%E5%BD%93%E4%BA%8E%E7%AD%BE%E5%88%B0-%E7%AC%AC%E4%BA%8C%E5%B1%8A%E5%A5%87%E5%AE%89%E4%BF%A1%E6%9D%AF%E7%BD%91%E7%BB%9C%E5%AE%89%E5%85%A8%E6%8A%80%E8%83%BD%E7%AB%9E%E8%B5%9B/</link>
      <pubDate>Tue, 24 Sep 2024 22:33:24 +0000</pubDate>
      <guid>https://yuexuan521.github.io/zh/posts/misc-_-%E7%9B%B8%E5%BD%93%E4%BA%8E%E7%AD%BE%E5%88%B0-%E7%AC%AC%E4%BA%8C%E5%B1%8A%E5%A5%87%E5%AE%89%E4%BF%A1%E6%9D%AF%E7%BD%91%E7%BB%9C%E5%AE%89%E5%85%A8%E6%8A%80%E8%83%BD%E7%AB%9E%E8%B5%9B/</guid>
      <description>&lt;hr&gt;
&lt;p&gt;相关阅读
&lt;a href=&#34;https://ctf-wiki.org/&#34;target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;CTF Wiki&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;
&lt;div class=&#34;post-img-view&#34;&gt;
    &lt;a data-fancybox=&#34;gallery&#34; href=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459175.png&#34;&gt;
        &lt;img src=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459175.png&#34; 
             alt=&#34;在这里插入图片描述&#34; 
              
             loading=&#34;lazy&#34;
        /&gt;
    &lt;/a&gt;
&lt;/div&gt;&lt;/p&gt;
&lt;h3 id=&#34;题目描述&#34;&gt;题目描述：&lt;/h3&gt;
&lt;p&gt;图片似乎经过了什么处理，你能否将其复原呢？&lt;/p&gt;
&lt;h3 id=&#34;密文&#34;&gt;密文：&lt;/h3&gt;
&lt;p&gt;下载附件，解压得到一张.jpg图片。&lt;/p&gt;
&lt;p&gt;
&lt;div class=&#34;post-img-view&#34;&gt;
    &lt;a data-fancybox=&#34;gallery&#34; href=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459176.jpeg&#34;&gt;
        &lt;img src=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459176.jpeg&#34; 
             alt=&#34;在这里插入图片描述&#34; 
              
             loading=&#34;lazy&#34;
        /&gt;
    &lt;/a&gt;
&lt;/div&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&#34;解题思路&#34;&gt;解题思路：&lt;/h3&gt;
&lt;p&gt;1、一张图片，典型的图片隐写。放到Kali中，使用binwalk检测，确认图片中隐藏zip压缩包。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<hr>
<p>相关阅读
<a href="https://ctf-wiki.org/"target="_blank" rel="noopener noreferrer">CTF Wiki</a></p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459175.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459175.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="题目描述">题目描述：</h3>
<p>图片似乎经过了什么处理，你能否将其复原呢？</p>
<h3 id="密文">密文：</h3>
<p>下载附件，解压得到一张.jpg图片。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459176.jpeg">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459176.jpeg" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<hr>
<h3 id="解题思路">解题思路：</h3>
<p>1、一张图片，典型的图片隐写。放到Kali中，使用binwalk检测，确认图片中隐藏zip压缩包。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459177.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459177.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>使用foremost分离图片中的压缩包，在output目录中找到隐藏的zip压缩包。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459178.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459178.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459179.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459179.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>2、尝试解压得到的压缩包，需要密码。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459180.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459180.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>因为没有关于密码的提示，尝试用4位纯数字进行爆破，出现提示“no usable files found”（未找到可用文件）。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459181.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459181.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p><a href="https://blog.csdn.net/qq_26187985/article/details/83654197"target="_blank" rel="noopener noreferrer">zip伪加密原理</a>
猜测该zip压缩包为伪加密，通过010Editor修改压缩源文件数据区和目录区的全局方式位标记（下图红色标识），将伪压缩文件恢复到未加密的状态。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459182.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459182.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459183.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459183.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
</span><span class="lnt"> 2
</span><span class="lnt"> 3
</span><span class="lnt"> 4
</span><span class="lnt"> 5
</span><span class="lnt"> 6
</span><span class="lnt"> 7
</span><span class="lnt"> 8
</span><span class="lnt"> 9
</span><span class="lnt">10
</span><span class="lnt">11
</span><span class="lnt">12
</span><span class="lnt">13
</span><span class="lnt">14
</span><span class="lnt">15
</span><span class="lnt">16
</span><span class="lnt">17
</span><span class="lnt">18
</span><span class="lnt">19
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">未加密：
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">文件头中的全局方式位标记为00 <span class="m">00</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">目录中源文件的全局方式位标记为00 <span class="m">00</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">伪加密：
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">文件头中的全局方式位标记为00 <span class="m">00</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">目录中源文件的全局方式位标记为09 <span class="m">00</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">真加密：
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">文件头中的全局方式位标记为09 <span class="m">00</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">目录中源文件的全局方式位标记为09 <span class="m">00</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">ps:也不一定要09 00或00 00，只要是奇数都视为加密，而偶数则视为未加密
</span></span></code></pre></td></tr></table>
</div>
</div><p>3、修改后，解压压缩包不需要密码，解压成功，得到一张.png图片。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459184.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459184.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>从这里也可以看出图片经过修改，无法正常显示。在010 Editor中打开，提示CRC校验错误，结合题目提示“图片似乎经过了什么处理”，认为图片被修改了宽高。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459185.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459185.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>通过爆破宽高，得到正确的宽高，然后修改图片的宽高数据，得到正确的图片。爆破所用代码如下。</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
</span><span class="lnt"> 2
</span><span class="lnt"> 3
</span><span class="lnt"> 4
</span><span class="lnt"> 5
</span><span class="lnt"> 6
</span><span class="lnt"> 7
</span><span class="lnt"> 8
</span><span class="lnt"> 9
</span><span class="lnt">10
</span><span class="lnt">11
</span><span class="lnt">12
</span><span class="lnt">13
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-python" data-lang="python"><span class="line"><span class="cl"><span class="kn">import</span> <span class="nn">os</span>
</span></span><span class="line"><span class="cl"><span class="kn">import</span> <span class="nn">binascii</span>
</span></span><span class="line"><span class="cl"><span class="kn">import</span> <span class="nn">struct</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="n">crcbp</span> <span class="o">=</span> <span class="nb">open</span><span class="p">(</span><span class="s2">&#34;repair.png&#34;</span><span class="p">,</span> <span class="s2">&#34;rb&#34;</span><span class="p">)</span><span class="o">.</span><span class="n">read</span><span class="p">()</span>    <span class="c1">#打开图片（修改图片路径）</span>
</span></span><span class="line"><span class="cl"><span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">2000</span><span class="p">):</span>
</span></span><span class="line"><span class="cl">    <span class="k">for</span> <span class="n">j</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">2000</span><span class="p">):</span>
</span></span><span class="line"><span class="cl">        <span class="n">data</span> <span class="o">=</span> <span class="n">crcbp</span><span class="p">[</span><span class="mi">12</span><span class="p">:</span><span class="mi">16</span><span class="p">]</span> <span class="o">+</span> \
</span></span><span class="line"><span class="cl">            <span class="n">struct</span><span class="o">.</span><span class="n">pack</span><span class="p">(</span><span class="s1">&#39;&gt;i&#39;</span><span class="p">,</span> <span class="n">i</span><span class="p">)</span><span class="o">+</span><span class="n">struct</span><span class="o">.</span><span class="n">pack</span><span class="p">(</span><span class="s1">&#39;&gt;i&#39;</span><span class="p">,</span> <span class="n">j</span><span class="p">)</span><span class="o">+</span><span class="n">crcbp</span><span class="p">[</span><span class="mi">24</span><span class="p">:</span><span class="mi">29</span><span class="p">]</span>
</span></span><span class="line"><span class="cl">        <span class="n">crc32</span> <span class="o">=</span> <span class="n">binascii</span><span class="o">.</span><span class="n">crc32</span><span class="p">(</span><span class="n">data</span><span class="p">)</span> <span class="o">&amp;</span> <span class="mh">0xffffffff</span>
</span></span><span class="line"><span class="cl">        <span class="k">if</span><span class="p">(</span><span class="n">crc32</span> <span class="o">==</span> <span class="mh">0x9BF1293B</span><span class="p">):</span>    <span class="c1">#图片当前CRC（修改CRC）</span>
</span></span><span class="line"><span class="cl">            <span class="nb">print</span><span class="p">(</span><span class="n">i</span><span class="p">,</span> <span class="n">j</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">            <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;hex:&#39;</span><span class="p">,</span> <span class="nb">hex</span><span class="p">(</span><span class="n">i</span><span class="p">),</span> <span class="nb">hex</span><span class="p">(</span><span class="n">j</span><span class="p">))</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p>得到正确的宽高值。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459186.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459186.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>修改图片中的宽高参数，然后保存图片查看。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459187.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459187.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>获得flag。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459188.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251210144459188.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="flag">flag：</h3>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">flag<span class="o">{</span>bdbace45-506b-f530-aa4d-57884b2025e<span class="o">}(</span>”-“可能为“_“<span class="o">)</span>
</span></span></code></pre></td></tr></table>
</div>
</div>]]></content:encoded>
    </item>
    <item>
      <title>Crypto | Affine password 第二届“奇安信”杯网络安全技能竞赛</title>
      <link>https://yuexuan521.github.io/zh/posts/crypto-_-affine-password-%E7%AC%AC%E4%BA%8C%E5%B1%8A%E5%A5%87%E5%AE%89%E4%BF%A1%E6%9D%AF%E7%BD%91%E7%BB%9C%E5%AE%89%E5%85%A8%E6%8A%80%E8%83%BD%E7%AB%9E%E8%B5%9B/</link>
      <pubDate>Tue, 24 Sep 2024 22:29:43 +0000</pubDate>
      <guid>https://yuexuan521.github.io/zh/posts/crypto-_-affine-password-%E7%AC%AC%E4%BA%8C%E5%B1%8A%E5%A5%87%E5%AE%89%E4%BF%A1%E6%9D%AF%E7%BD%91%E7%BB%9C%E5%AE%89%E5%85%A8%E6%8A%80%E8%83%BD%E7%AB%9E%E8%B5%9B/</guid>
      <description>&lt;hr&gt;
&lt;p&gt;相关阅读
&lt;a href=&#34;https://ctf-wiki.org/&#34;target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;CTF Wiki&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;
&lt;div class=&#34;post-img-view&#34;&gt;
    &lt;a data-fancybox=&#34;gallery&#34; href=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/202512081856849.png&#34;&gt;
        &lt;img src=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/202512081856849.png&#34; 
             alt=&#34;在这里插入图片描述&#34; 
              
             loading=&#34;lazy&#34;
        /&gt;
    &lt;/a&gt;
&lt;/div&gt;&lt;/p&gt;
&lt;h3 id=&#34;题目描述&#34;&gt;题目描述：&lt;/h3&gt;
&lt;p&gt;明文经过仿射函数y=3x+9加密之后变为JYYHWVPIDCOZ，请对其进行解密，flag的格式为flag{明文的大写形式}。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<hr>
<p>相关阅读
<a href="https://ctf-wiki.org/"target="_blank" rel="noopener noreferrer">CTF Wiki</a></p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/202512081856849.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/202512081856849.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="题目描述">题目描述：</h3>
<p>明文经过仿射函数y=3x+9加密之后变为JYYHWVPIDCOZ，请对其进行解密，flag的格式为flag{明文的大写形式}。</p>
<h3 id="密文">密文：</h3>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">JYYHWVPIDCOZ
</span></span></code></pre></td></tr></table>
</div>
</div><hr>
<h3 id="解题思路">解题思路：</h3>
<p>1、使用在线网站直接破解或手工计算破解，获得flag。（参数a=3，b=9，对应仿射函数y=3x+9）
<a href="http://www.metools.info/code/affinecipher183.html"target="_blank" rel="noopener noreferrer">仿射密码加密_仿射密码解密</a></p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/202512081856851.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/202512081856851.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>手工计算使用解密函数为D(x) = a^-1(x - b) (mod m)，也可以获得flag。</p>
<h3 id="flag">flag：</h3>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">AFFINECRYPTO
</span></span></code></pre></td></tr></table>
</div>
</div><h3 id="仿射密码简介">仿射密码简介：</h3>
<p>单码加密法的另一种形式称为仿射加密法（affinecipher）。在仿射加密法中，字母表的字母被赋予一个数字。例如a=0，b=1，c=2…z=25。仿射加密法的密钥为0-25直接的数字对。</p>
]]></content:encoded>
    </item>
  </channel>
</rss>
