<?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>Zip on 知识带给我们自由</title>
    <link>https://yuexuan521.github.io/zh/tags/zip/</link>
    <description>Recent content in Zip 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, 20 Nov 2025 09:01:00 +0000</lastBuildDate>
    <atom:link href="https://yuexuan521.github.io/zh/tags/zip/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>BUUCTF zip 1</title>
      <link>https://yuexuan521.github.io/zh/posts/buuctf-zip-1/</link>
      <pubDate>Thu, 20 Nov 2025 09:01:00 +0000</pubDate>
      <guid>https://yuexuan521.github.io/zh/posts/buuctf-zip-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/20251228190415529.png&#34;&gt;
        &lt;img src=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228190415529.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/20251228190417993.png&#34;&gt;
        &lt;img src=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228190417993.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;拼在一起解下base64就有flag 注意：得到的 flag 请包上 flag{} 提交&lt;/p&gt;
&lt;h3 id=&#34;密文&#34;&gt;密文：&lt;/h3&gt;
&lt;hr&gt;
&lt;h3 id=&#34;解题思路&#34;&gt;解题思路：&lt;/h3&gt;
&lt;p&gt;1、将下载的压缩包解压，得到68个小压缩包，压缩包内部文件4个字节，符合CRC32爆破条件&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/20251228190415529.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228190415529.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/20251228190417993.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228190417993.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="题目描述">题目描述：</h3>
<p>拼在一起解下base64就有flag 注意：得到的 flag 请包上 flag{} 提交</p>
<h3 id="密文">密文：</h3>
<hr>
<h3 id="解题思路">解题思路：</h3>
<p>1、将下载的压缩包解压，得到68个小压缩包，压缩包内部文件4个字节，符合CRC32爆破条件</p>
<blockquote>
<p>注意：一般数据内容小于5Bytes(&lt;=4Bytes)即可尝试通过爆破CRC32穷举数据内容</p>
</blockquote>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228190419984.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228190419984.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>2、使用CRC32爆破脚本尝试爆破第一个压缩包out0.zip，爆破成功得到文件内容 <code>z5Bz</code> ，根据题目提示，这是base64编码文件的一部分，需要将所有out*.zip压缩包的文件拼接才能拿到完整的文件

<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228190421759.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228190421759.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>编写Python脚本进行自动化爆破，借鉴其他人的脚本</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><span class="lnt">20
</span><span class="lnt">21
</span><span class="lnt">22
</span><span class="lnt">23
</span><span class="lnt">24
</span><span class="lnt">25
</span><span class="lnt">26
</span><span class="lnt">27
</span><span class="lnt">28
</span><span class="lnt">29
</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 class="c1">#python3</span>
</span></span><span class="line"><span class="cl">import zipfile
</span></span><span class="line"><span class="cl">import string
</span></span><span class="line"><span class="cl">import binascii
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">def CrackCrc<span class="o">(</span>crc<span class="o">)</span>:
</span></span><span class="line"><span class="cl">	<span class="k">for</span> i in dic:
</span></span><span class="line"><span class="cl">		<span class="k">for</span> j in dic:
</span></span><span class="line"><span class="cl">			<span class="k">for</span> k in dic:
</span></span><span class="line"><span class="cl">				<span class="k">for</span> h in dic:
</span></span><span class="line"><span class="cl">					<span class="nv">s</span> <span class="o">=</span> i + j + k + h
</span></span><span class="line"><span class="cl">					<span class="k">if</span> <span class="nv">crc</span> <span class="o">==</span> <span class="o">(</span>binascii.crc32<span class="o">(</span>s.encode<span class="o">()))</span>:
</span></span><span class="line"><span class="cl">						f.write<span class="o">(</span>s<span class="o">)</span>
</span></span><span class="line"><span class="cl">						<span class="k">return</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">def CrackZip<span class="o">()</span>:
</span></span><span class="line"><span class="cl">	<span class="k">for</span> i in range<span class="o">(</span>0,68<span class="o">)</span>:
</span></span><span class="line"><span class="cl">		<span class="c1"># 压缩包文件路径</span>
</span></span><span class="line"><span class="cl">		<span class="nv">file</span> <span class="o">=</span> <span class="s1">&#39;out&#39;</span>+str<span class="o">(</span>i<span class="o">)</span>+<span class="s1">&#39;.zip&#39;</span>
</span></span><span class="line"><span class="cl">		<span class="nv">crc</span> <span class="o">=</span> zipfile.ZipFile<span class="o">(</span>file,<span class="s1">&#39;r&#39;</span><span class="o">)</span>.getinfo<span class="o">(</span><span class="s1">&#39;data.txt&#39;</span><span class="o">)</span>.CRC
</span></span><span class="line"><span class="cl">		CrackCrc<span class="o">(</span>crc<span class="o">)</span>
</span></span><span class="line"><span class="cl">		print<span class="o">(</span><span class="s1">&#39;\r&#39;</span>+<span class="s2">&#34;loading：{:%}&#34;</span>.format<span class="o">(</span>float<span class="o">((</span>i+1<span class="o">)</span>/68<span class="o">))</span>,end<span class="o">=</span><span class="s1">&#39;&#39;</span><span class="o">)</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="nv">dic</span> <span class="o">=</span> string.ascii_letters + string.digits + <span class="s1">&#39;+/=&#39;</span>
</span></span><span class="line"><span class="cl"><span class="nv">f</span> <span class="o">=</span> open<span class="o">(</span><span class="s1">&#39;out.txt&#39;</span>,<span class="s1">&#39;w&#39;</span><span class="o">)</span>
</span></span><span class="line"><span class="cl">print<span class="o">(</span><span class="s2">&#34;\nCRC32begin&#34;</span><span class="o">)</span>
</span></span><span class="line"><span class="cl">CrackZip<span class="o">()</span>
</span></span><span class="line"><span class="cl">print<span class="o">(</span><span class="s2">&#34;CRC32finished&#34;</span><span class="o">)</span>
</span></span><span class="line"><span class="cl">f.close<span class="o">()</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p>运行脚本，得到out.txt文件</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">z5BzAAANAAAAAAAAAKo+egCAIwBJAAAAVAAAAAKGNKv+a2MdSR0zAwABAAAAQ01UCRUUy91BT5UkSNPoj5hFEVFBRvefHSBCfG0ruGnKnygsMyj8SBaZHxsYHY84LEZ24cXtZ01y3k1K1YJ0vpK9HwqUzb6u9z8igEr3dCCQLQAdAAAAHQAAAAJi0efVT2MdSR0wCAAgAAAAZmxhZy50eHQAsDRpZmZpeCB0aGUgZmlsZSBhbmQgZ2V0IHRoZSBmbGFnxD17AEAHAA<span class="o">==</span>
</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/20251228190423301.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228190423301.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>3、使用在线工具进行解密，看到解出的明文中有如下提示信息：
<a href="https://the-x.cn/encodings/Base64.aspx"target="_blank" rel="noopener noreferrer">Base64 在线解码、编码</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></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.txt
</span></span><span class="line"><span class="cl">fix the file and get the flag
</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/20251228190424904.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228190424904.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>提示我们修复这个文件，可以拿到flag。文件尾与RAR文件尾一致（ <code>C4 3D 7B 00 40 07 00</code> ），可以确定为rar压缩包，但缺少文件头，需要补上缺失的文件头。

<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228190426964.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228190426964.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></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 class="m">52</span> <span class="m">61</span> <span class="m">72</span> <span class="m">21</span> 1A <span class="m">07</span> <span class="m">00</span>   <span class="c1"># RAR文件头</span>
</span></span><span class="line"><span class="cl">C4 3D 7B <span class="m">00</span> <span class="m">40</span> <span class="m">07</span> <span class="m">00</span>   <span class="c1"># RAR文件尾</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p>用010 Editor打开，补上文件头，另存为.rar文件。

<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228190429011.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228190429011.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>最后在rar压缩包的注释中找到flag。

<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228190430981.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228190430981.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>nev3r_enc0de_t00_sm4ll_fil3_w1th_zip<span class="o">}</span>
</span></span></code></pre></td></tr></table>
</div>
</div>]]></content:encoded>
    </item>
    <item>
      <title>BUUCTF [GUET-CTF2019]zips 1</title>
      <link>https://yuexuan521.github.io/zh/posts/buuctf-guet-ctf2019zips-1/</link>
      <pubDate>Sun, 21 Apr 2024 20:14:36 +0000</pubDate>
      <guid>https://yuexuan521.github.io/zh/posts/buuctf-guet-ctf2019zips-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/20251228191059911.png&#34;&gt;
        &lt;img src=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228191059911.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/20251228191101989.png&#34;&gt;
        &lt;img src=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228191101989.png&#34; 
             alt=&#34;image-20240521144712363&#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;得到一个attachment.zip文件&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&#34;解题思路&#34;&gt;解题思路：&lt;/h3&gt;
&lt;p&gt;1、解压attachment.zip，得到222.zip文件。尝试解压需要密码，使用Ziperello爆破密码，先尝试1~9位纯数字暴力破解，得到密码723456&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/20251228191059911.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228191059911.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/20251228191101989.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228191101989.png" 
             alt="image-20240521144712363" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="题目描述">题目描述：</h3>
<p>得到的 flag 请包上 flag{} 提交。</p>
<h3 id="密文">密文：</h3>
<p>得到一个attachment.zip文件</p>
<hr>
<h3 id="解题思路">解题思路：</h3>
<p>1、解压attachment.zip，得到222.zip文件。尝试解压需要密码，使用Ziperello爆破密码，先尝试1~9位纯数字暴力破解，得到密码723456</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"></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/20251228191103382.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228191103382.png" 
             alt="屏幕截图 2024-05-19 164506" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>2、解压222.zip，得到111.zip文件。使用Ziperello打开111.zip文件，提示没有读取到加密文件，猜测存在zip伪加密。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228191105384.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228191105384.png" 
             alt="屏幕截图 2024-05-19 164527" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228191107184.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228191107184.png" 
             alt="屏幕截图 2024-05-19 164638" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p><a href="https://blog.csdn.net/qq_26187985/article/details/83654197"target="_blank" rel="noopener noreferrer">zip伪加密原理</a></p>
<p><a href="https://blog.csdn.net/YueXuan_521/article/details/134055375?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522171627454816800197088397%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&amp;request_id=171627454816800197088397&amp;biz_id=0&amp;utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-1-134055375-null-null.nonecase&amp;utm_term=%E4%BC%AA%E5%8A%A0%E5%AF%86&amp;spm=1018.2226.3001.4450"target="_blank" rel="noopener noreferrer">zip伪加密例子</a></p>
<p>使用010Editor打开111.zip文件，修改压缩源文件数据区和目录区的全局方式位标记，达到将伪压缩文件恢复到未加密的状态的目的。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228191109292.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228191109292.png" 
             alt="image-20240521151732976" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>解压得到一个zip压缩包和脚本文件</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228191111146.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228191111146.png" 
             alt="image-20240521152003008" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>3、尝试解压flag.zip需要密码。使用记事本打开setup.sh文件，如下：</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-bash" data-lang="bash"><span class="line"><span class="cl"><span class="cp">#!/bin/bash
</span></span></span><span class="line"><span class="cl"><span class="c1">#</span>
</span></span><span class="line"><span class="cl">zip -e --password<span class="o">=</span><span class="sb">`</span>python -c <span class="s2">&#34;print(__import__(&#39;time&#39;).time())&#34;</span><span class="sb">`</span> flag.zip flag
</span></span></code></pre></td></tr></table>
</div>
</div><blockquote>
<ol>
<li>
<p><code>#!/bin/bash</code> : 这是一个Shebang行，指定了该脚本应使用 <code>/bin/bash</code> 解释器执行。它是Unix/Linux系统中可执行脚本的标准起始行。</p>
</li>
<li>
<p><code>zip -e --password=</code> : 这部分命令调用了 <code>zip</code> 程序来创建或更新一个ZIP归档文件，并使用 <code>-e</code> 选项指明需要对存档中的文件进行加密。</p>
</li>
<li>
<p><code>python -c &quot;print(__import__('time').time())&quot;</code> : 这里嵌入了一个Python命令，用于执行一段Python代码。具体来说，它导入了 <code>time</code> 模块，并调用其 <code>time()</code> 函数来获取当前的Unix时间戳。这个时间值将作为接下来操作的密码。</p>
</li>
<li>
<p><code>flag.zip flag</code> : 表示要创建或更新的ZIP文件名为 <code>flag.zip</code> ，并且要将当前目录下的一个名为 <code>flag</code> 的文件添加到此ZIP文件中。由于前面设置了 <code>-e</code> 和 <code>--password</code> ，所以在添加过程中会对 <code>flag</code> 文件进行加密，并使用由Python计算出的时间戳作为加密密码。</p>
</li>
</ol>
</blockquote>
<p>这段脚本是用Bash编写的，其主要功能是使用Python计算当前时间（以Unix时间戳形式表示，即从1970年1月1日00:00:00 UTC以来的秒数）并以此时间为密码来加密一个名为 <code>flag.zip</code> 的ZIP文件，其中包含一个名为 <code>flag</code> 的文件。</p>
<p>截取其中的 <code>print(__import__('time').time())</code> python代码，在Python2环境下运行，得到时间戳格式（Python2与Python3得到的时间戳格式不一样）</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">1716272025.41
</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/20251228191112198.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228191112198.png" 
             alt="image-20240521153241328" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>当我们知道密码格式后就可以采用掩码爆破节约时间，使用Ziperello进行掩码爆破，首先定义掩码字符模板，再设置密码模板，选择起始密码就可以开始爆破。（这里我已经知道大致密码，所以为了节约时间，从1500000000.00开始）</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228191114100.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228191114100.png" 
             alt="image-20240521153442653" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>得到密码1558080832.15</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228191116037.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228191116037.png" 
             alt="image-20240521152729804" 
              
             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></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">1558080832.15
</span></span></code></pre></td></tr></table>
</div>
</div><p>使用密码解压flag.zip，得到flag文件，打开得到flag。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228191119379.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228191119379.png" 
             alt="image-20240521152847067" 
              
             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>fkjabPqnLawhvuikfhgzyffj<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-%E7%A5%9E%E7%A7%98%E9%BE%99%E5%8D%B7%E9%A3%8E-1/</link>
      <pubDate>Wed, 24 Jan 2024 16:40:33 +0000</pubDate>
      <guid>https://yuexuan521.github.io/zh/posts/buuctf-%E7%A5%9E%E7%A7%98%E9%BE%99%E5%8D%B7%E9%A3%8E-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/20251228193158696.png&#34;&gt;
        &lt;img src=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193158696.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/20251228193200847.png&#34;&gt;
        &lt;img src=&#34;https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193200847.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;下载附件，解压得到一个.rar压缩包。&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/20251228193158696.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193158696.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/20251228193200847.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193200847.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<h3 id="题目描述">题目描述：</h3>
<p>神秘龙卷风转转转，科学家用四位数字为它命名，但是发现解密后居然是一串外星人代码！！好可怕！</p>
<h3 id="密文">密文：</h3>
<p>下载附件，解压得到一个.rar压缩包。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193202425.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193202425.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<hr>
<h3 id="解题思路">解题思路：</h3>
<p>1、解压压缩包需要密码，根据题目得知密码为四位纯数字，在RARP中打开压缩包，选择字符范围和密码长度，点击开始破解。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193203655.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193203655.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>得到压缩包密码为5463。</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193205887.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193205887.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>2、解压压缩包，得到神秘龙卷风.txt文件。打开后，显示内容如下：</p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193207460.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193207460.png" 
             alt="在这里插入图片描述" 
              
             loading="lazy"
        />
    </a>
</div></p>
<p>内容由“+”、“.”、“&gt;”三种符号组成，我刚开始认为这是一种密文，经过搜索，确认这是一种名为“Brainfuck”的计算机语言。
<a href="https://baike.baidu.com/item/Brainfuck"target="_blank" rel="noopener noreferrer">Brainfuck</a></p>
<p>3、结合题目提示的“代码”，我找到一个brainfuck 在线工具可以运行brainfuck代码。将记事本中的代码复制到在线工具中，运行得到flag。
<a href="https://www.w3cschool.cn/tryrun/runcode?lang=brainfuck"target="_blank" rel="noopener noreferrer">Brainfuck 在线工具</a></p>
<p>
<div class="post-img-view">
    <a data-fancybox="gallery" href="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193209294.png">
        <img src="https://cdn.jsdelivr.net/gh/yuexuan521/image/20251228193209294.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>e4bbef8bdf9743f8bf5b727a9f6332a8<span class="o">}</span>
</span></span></code></pre></td></tr></table>
</div>
</div>]]></content:encoded>
    </item>
  </channel>
</rss>
