{"componentChunkName":"component---src-templates-post-template-js","path":"/ctf-duc-ctf-2023-en","result":{"data":{"markdownRemark":{"id":"75b70485-3418-54a7-959e-f43bbf8e2549","html":"<blockquote>\n<p>This page has been machine-translated from the <a href=\"/ctf-duc-ctf-2023\">original page</a>.</p>\n</blockquote>\n<p>We participated in DUCTF 2023, which started on September 1, as 0nePadding, and placed 124th out of 1,424 teams.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 960px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/697639321fd0705c37e8032f3dce50ff/fe9e8/image-20230903214642827.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 34.166666666666664%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAHCAYAAAAIy204AAAACXBIWXMAAAsTAAALEwEAmpwYAAAA2klEQVQoz5WRSW7DMAxFfYwMli1KpCbH6ao1UHS4/6l+RRoB0kWAZPEgisMXSQ3b9omv75/OL94/NoQokFRAQQzmDJaM2M/jyeFwHOGJkXKzPPXXekHpaP7QlivqpaCsjLwwKAZMs0LG7G/3gNHNOI8z3OTNr6jNUkxc44OkCs4RMZMlj84/RIuVe5/W3KZRe6jtirJk627vhl7grkMp9kAXXFHXhPbGmDz1BHpJVEXERq67oC4zVUGQ8G+s5yDbW4ypf07aRzbB1n9t6cFpX/qzqNjp7ExMUfsPSdLCkM+HAOgAAAAASUVORK5CYII='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/697639321fd0705c37e8032f3dce50ff/8ac56/image-20230903214642827.webp 240w,\n/static/697639321fd0705c37e8032f3dce50ff/d3be9/image-20230903214642827.webp 480w,\n/static/697639321fd0705c37e8032f3dce50ff/e46b2/image-20230903214642827.webp 960w,\n/static/697639321fd0705c37e8032f3dce50ff/b28d4/image-20230903214642827.webp 1146w\"\n              sizes=\"(max-width: 960px) 100vw, 960px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/697639321fd0705c37e8032f3dce50ff/8ff5a/image-20230903214642827.png 240w,\n/static/697639321fd0705c37e8032f3dce50ff/e85cb/image-20230903214642827.png 480w,\n/static/697639321fd0705c37e8032f3dce50ff/d9199/image-20230903214642827.png 960w,\n/static/697639321fd0705c37e8032f3dce50ff/fe9e8/image-20230903214642827.png 1146w\"\n            sizes=\"(max-width: 960px) 100vw, 960px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/697639321fd0705c37e8032f3dce50ff/d9199/image-20230903214642827.png\"\n            alt=\"image-20230903214642827\"\n            title=\"image-20230903214642827\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>As usual, I solved a few Rev challenges, so I am writing them up.</p>\n<!-- omit in toc -->\n<h2 id=\"table-of-contents\" style=\"position:relative;\"><a href=\"#table-of-contents\" aria-label=\"table of contents permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Table of Contents</h2>\n<ul>\n<li><a href=\"#the-bridgekeepers-3rd-questionrev\">the bridgekeepers 3rd question(Rev)</a></li>\n<li><a href=\"#all-fathers-wisdomrev\">All Father’s Wisdom(Rev)</a></li>\n<li><a href=\"#pynyrev\">pyny(Rev)</a></li>\n<li><a href=\"#spacegamerev\">SPACEGAME(Rev)</a></li>\n<li><a href=\"#summary\">Summary</a></li>\n</ul>\n<h2 id=\"the-bridgekeepers-3rd-questionrev\" style=\"position:relative;\"><a href=\"#the-bridgekeepers-3rd-questionrev\" aria-label=\"the bridgekeepers 3rd questionrev permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>the bridgekeepers 3rd question(Rev)</h2>\n<blockquote>\n<p>What is your name? What is your quest? What is your favourite colour?</p>\n</blockquote>\n<p>When I opened the challenge site in a browser and clicked on the screen, a prompt appeared as shown below.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 452px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/485357ef7e34279c34b17aa7328ca4ba/fcb94/image-20230903214909357.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 40.416666666666664%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAICAYAAAD5nd/tAAAACXBIWXMAAAsTAAALEwEAmpwYAAABeklEQVQoz33RW47SUBjA8S5EzFAG6HWA3oGWthQI6VBgSMw4ozEmasbEJ33w1bgI12DiYtyHL27h71foaGJ0Hn75rqdpzlEsw8ZxPMbRlDAY43sBnhsQ+GFTh5JHROGEQPjBBE/qmiuOPdnxZd8yLZQoHJNME1bLFUU2lzwmnsTkaUaRz4+zmZhnOblIkpTZLCOd5RJTsvpMnJBJ7jouSllumK+2pNmabFGSLyvSokQzHeGiW0LiqT459hr3dd8Y4cmfKov1AbU3oqf/0a1pw780vXrHcH+775/rLt64QCnWe1TNo28F9Mya38R/68rBs47OmarTPjebfZ+uGeJFuXxwsaKvmVj2ENMaPGCIbliM/JjLmw9snn9kebjDunCwBy6GzD15GGUap7Qet1E7Pdpq97/UTp/WoxZeUvHp6w8+f/vJ+y/f5YoGXPgLNDvANG2U12/uKC8rdrsD293Vg6rtnv3VE25evOX25Tuun706zaS/qXZcP73lFyoSCfntzr0mAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/485357ef7e34279c34b17aa7328ca4ba/8ac56/image-20230903214909357.webp 240w,\n/static/485357ef7e34279c34b17aa7328ca4ba/97d89/image-20230903214909357.webp 452w\"\n              sizes=\"(max-width: 452px) 100vw, 452px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/485357ef7e34279c34b17aa7328ca4ba/8ff5a/image-20230903214909357.png 240w,\n/static/485357ef7e34279c34b17aa7328ca4ba/fcb94/image-20230903214909357.png 452w\"\n            sizes=\"(max-width: 452px) 100vw, 452px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/485357ef7e34279c34b17aa7328ca4ba/fcb94/image-20230903214909357.png\"\n            alt=\"image-20230903214909357\"\n            title=\"image-20230903214909357\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>Looking at the HTML source, I found the following script embedded in it.</p>\n<div class=\"gatsby-highlight\" data-language=\"javascript\"><pre class=\"language-javascript\"><code class=\"language-javascript\"><span class=\"token operator\">&lt;</span>script id<span class=\"token operator\">=</span><span class=\"token string\">\"challenge\"</span> src<span class=\"token operator\">=</span><span class=\"token string\">\"text/javascript\"</span><span class=\"token operator\">></span>\n  <span class=\"token keyword\">function</span> <span class=\"token function\">cross</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n    <span class=\"token function\">prompt</span><span class=\"token punctuation\">(</span><span class=\"token string\">\"What is your name?\"</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n    <span class=\"token function\">prompt</span><span class=\"token punctuation\">(</span><span class=\"token string\">\"What is your quest?\"</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n    answer <span class=\"token operator\">=</span> <span class=\"token function\">prompt</span><span class=\"token punctuation\">(</span><span class=\"token string\">\"What is your favourite colour?\"</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n    <span class=\"token keyword\">if</span> <span class=\"token punctuation\">(</span>answer <span class=\"token operator\">==</span> <span class=\"token string\">\"blue\"</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n      document<span class=\"token punctuation\">.</span><span class=\"token function\">getElementById</span><span class=\"token punctuation\">(</span><span class=\"token string\">'word'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">.</span>innerText <span class=\"token operator\">=</span> <span class=\"token string\">\"flag is DUCTF{\"</span> <span class=\"token operator\">+</span> answer <span class=\"token operator\">+</span> <span class=\"token string\">\"}\"</span><span class=\"token punctuation\">;</span>\n      cross <span class=\"token operator\">=</span> escape<span class=\"token punctuation\">;</span>\n    <span class=\"token punctuation\">}</span>\n    <span class=\"token keyword\">else</span> <span class=\"token punctuation\">{</span>\n      document<span class=\"token punctuation\">.</span><span class=\"token function\">getElementById</span><span class=\"token punctuation\">(</span><span class=\"token string\">'word'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">.</span>innerText <span class=\"token operator\">=</span> <span class=\"token string\">\"you have been cast into the gorge\"</span><span class=\"token punctuation\">;</span>\n      cross <span class=\"token operator\">=</span> unescape<span class=\"token punctuation\">;</span>\n    <span class=\"token punctuation\">}</span>\n  <span class=\"token punctuation\">}</span>\n<span class=\"token operator\">&lt;</span><span class=\"token operator\">/</span>script<span class=\"token operator\">></span></code></pre></div>\n<p>It looks like entering <code class=\"language-text\">blue</code> into <code class=\"language-text\">prompt(\"What is your favourite colour?\");</code> should give the correct flag, but simply entering <code class=\"language-text\">blue</code> is not enough to obtain it.</p>\n<p>This seems to be because the prompt handling is overridden by another JavaScript as follows.</p>\n<div class=\"gatsby-highlight\" data-language=\"javascript\"><pre class=\"language-javascript\"><code class=\"language-javascript\"><span class=\"token function-variable function\">prompt</span> <span class=\"token operator\">=</span> <span class=\"token keyword\">function</span> <span class=\"token punctuation\">(</span><span class=\"token parameter\">fun<span class=\"token punctuation\">,</span> x</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n  <span class=\"token keyword\">let</span> answer <span class=\"token operator\">=</span> <span class=\"token function\">fun</span><span class=\"token punctuation\">(</span>x<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n  <span class=\"token keyword\">if</span> <span class=\"token punctuation\">(</span><span class=\"token operator\">!</span><span class=\"token regex\"><span class=\"token regex-delimiter\">/</span><span class=\"token regex-source language-regex\">^[a-z]{13}$</span><span class=\"token regex-delimiter\">/</span></span><span class=\"token punctuation\">.</span><span class=\"token function\">exec</span><span class=\"token punctuation\">(</span>answer<span class=\"token punctuation\">)</span><span class=\"token punctuation\">)</span> <span class=\"token keyword\">return</span> <span class=\"token string\">\"\"</span><span class=\"token punctuation\">;</span>\n  <span class=\"token keyword\">let</span> a <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> b <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> c <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> d <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> e <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> f <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> g <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> h <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> i <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> j <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> k <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> l <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> m <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">;</span>\n  <span class=\"token keyword\">let</span> n <span class=\"token operator\">=</span> <span class=\"token string\">\"blue\"</span><span class=\"token punctuation\">;</span>\n  a<span class=\"token punctuation\">.</span><span class=\"token function\">push</span><span class=\"token punctuation\">(</span>a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n  b<span class=\"token punctuation\">.</span><span class=\"token function\">push</span><span class=\"token punctuation\">(</span>b<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n  c<span class=\"token punctuation\">.</span><span class=\"token function\">push</span><span class=\"token punctuation\">(</span>a<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n  d<span class=\"token punctuation\">.</span><span class=\"token function\">push</span><span class=\"token punctuation\">(</span>c<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n  e<span class=\"token punctuation\">.</span><span class=\"token function\">push</span><span class=\"token punctuation\">(</span>a<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> f<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n  f<span class=\"token punctuation\">.</span><span class=\"token function\">push</span><span class=\"token punctuation\">(</span>f<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> g<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> f<span class=\"token punctuation\">,</span> f<span class=\"token punctuation\">,</span> f<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> f<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> f<span class=\"token punctuation\">,</span> f<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> f<span class=\"token punctuation\">,</span> f<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> f<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n  g<span class=\"token punctuation\">.</span><span class=\"token function\">push</span><span class=\"token punctuation\">(</span>h<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> g<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> g<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> g<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> g<span class=\"token punctuation\">,</span> g<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> f<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n  h<span class=\"token punctuation\">.</span><span class=\"token function\">push</span><span class=\"token punctuation\">(</span>c<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> f<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> g<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> i<span class=\"token punctuation\">,</span> g<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> g<span class=\"token punctuation\">,</span> h<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n  i<span class=\"token punctuation\">.</span><span class=\"token function\">push</span><span class=\"token punctuation\">(</span>h<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> f<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> i<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> g<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> h<span class=\"token punctuation\">,</span> i<span class=\"token punctuation\">,</span> j<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> f<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n  j<span class=\"token punctuation\">.</span><span class=\"token function\">push</span><span class=\"token punctuation\">(</span>b<span class=\"token punctuation\">,</span> f<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> f<span class=\"token punctuation\">,</span> i<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> j<span class=\"token punctuation\">,</span> i<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> j<span class=\"token punctuation\">,</span> g<span class=\"token punctuation\">,</span> j<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> k<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> i<span class=\"token punctuation\">,</span> h<span class=\"token punctuation\">,</span> g<span class=\"token punctuation\">,</span> g<span class=\"token punctuation\">,</span> g<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n  k<span class=\"token punctuation\">.</span><span class=\"token function\">push</span><span class=\"token punctuation\">(</span>i<span class=\"token punctuation\">,</span> k<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> h<span class=\"token punctuation\">,</span> h<span class=\"token punctuation\">,</span> j<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> f<span class=\"token punctuation\">,</span> f<span class=\"token punctuation\">,</span> h<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> g<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> l<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> f<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> f<span class=\"token punctuation\">,</span> f<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> h<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n  l<span class=\"token punctuation\">.</span><span class=\"token function\">push</span><span class=\"token punctuation\">(</span>j<span class=\"token punctuation\">,</span> k<span class=\"token punctuation\">,</span> j<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> i<span class=\"token punctuation\">,</span> i<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> m<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> g<span class=\"token punctuation\">,</span> f<span class=\"token punctuation\">,</span> j<span class=\"token punctuation\">,</span> j<span class=\"token punctuation\">,</span> k<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> g<span class=\"token punctuation\">,</span> l<span class=\"token punctuation\">,</span> f<span class=\"token punctuation\">,</span> i<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> f<span class=\"token punctuation\">,</span> l<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n  m<span class=\"token punctuation\">.</span><span class=\"token function\">push</span><span class=\"token punctuation\">(</span>c<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> g<span class=\"token punctuation\">,</span> n<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> g<span class=\"token punctuation\">,</span> k<span class=\"token punctuation\">,</span> m<span class=\"token punctuation\">,</span> a<span class=\"token punctuation\">,</span> h<span class=\"token punctuation\">,</span> h<span class=\"token punctuation\">,</span> l<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> g<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> h<span class=\"token punctuation\">,</span> d<span class=\"token punctuation\">,</span> h<span class=\"token punctuation\">,</span> e<span class=\"token punctuation\">,</span> l<span class=\"token punctuation\">,</span> k<span class=\"token punctuation\">,</span> h<span class=\"token punctuation\">,</span> k<span class=\"token punctuation\">,</span> f<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n\n  walk <span class=\"token operator\">=</span> a<span class=\"token punctuation\">;</span>\n  <span class=\"token keyword\">for</span> <span class=\"token punctuation\">(</span><span class=\"token keyword\">let</span> c <span class=\"token keyword\">of</span> answer<span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n    walk <span class=\"token operator\">=</span> walk<span class=\"token punctuation\">[</span>c<span class=\"token punctuation\">.</span><span class=\"token function\">charCodeAt</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">-</span> <span class=\"token number\">97</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">;</span>\n  <span class=\"token punctuation\">}</span>\n  <span class=\"token keyword\">if</span> <span class=\"token punctuation\">(</span>walk <span class=\"token operator\">!=</span> <span class=\"token string\">\"blue\"</span><span class=\"token punctuation\">)</span> <span class=\"token keyword\">return</span> <span class=\"token string\">\"\"</span><span class=\"token punctuation\">;</span>\n  <span class=\"token keyword\">return</span> <span class=\"token punctuation\">{</span><span class=\"token function-variable function\">toString</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">=></span> _ <span class=\"token operator\">=</span> window<span class=\"token punctuation\">.</span>_ <span class=\"token operator\">?</span> answer <span class=\"token operator\">:</span> <span class=\"token string\">\"blue\"</span><span class=\"token punctuation\">}</span><span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span><span class=\"token punctuation\">.</span><span class=\"token function\">bind</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">null</span><span class=\"token punctuation\">,</span> prompt<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n\n<span class=\"token function\">eval</span><span class=\"token punctuation\">(</span>document<span class=\"token punctuation\">.</span><span class=\"token function\">getElementById</span><span class=\"token punctuation\">(</span><span class=\"token string\">'challenge'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">.</span>innerText<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span></code></pre></div>\n<p>After reading the code, I found that if I could make <code class=\"language-text\">walk</code> end up storing <code class=\"language-text\">n</code>, then <code class=\"language-text\">answer</code> would become <code class=\"language-text\">blue</code>, allowing me to get the flag.</p>\n<p>As shown below, by tracing the indices from the head of <code class=\"language-text\">walk</code>, starting with <code class=\"language-text\">a</code> and continuing in order until <code class=\"language-text\">n</code>, you can see that <code class=\"language-text\">walk</code> eventually stores <code class=\"language-text\">n</code>.</p>\n<div class=\"gatsby-highlight\" data-language=\"javascript\"><pre class=\"language-javascript\"><code class=\"language-javascript\">walk <span class=\"token operator\">=</span> a<span class=\"token punctuation\">;</span>\n<span class=\"token keyword\">for</span> <span class=\"token punctuation\">(</span><span class=\"token keyword\">let</span> c <span class=\"token keyword\">of</span> answer<span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n    walk <span class=\"token operator\">=</span> walk<span class=\"token punctuation\">[</span>c<span class=\"token punctuation\">.</span><span class=\"token function\">charCodeAt</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">-</span> <span class=\"token number\">97</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span></code></pre></div>\n<p>So I wrote the following solver, which let me determine that the required string for obtaining the flag was <code class=\"language-text\">rebeccapurple</code>.</p>\n<div class=\"gatsby-highlight\" data-language=\"python\"><pre class=\"language-python\"><code class=\"language-python\">a <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">]</span>\nb <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">]</span>\nc <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">]</span>\nd <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">]</span>\ne <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">]</span>\nf <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"g\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">]</span>\ng <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token string\">\"h\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"g\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"g\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"g\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"g\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"g\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">]</span>\nh <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"g\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"i\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"g\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"g\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"h\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">]</span>\ni <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token string\">\"h\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"i\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"g\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"h\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"i\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"j\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">]</span>\nj <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"i\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"j\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"i\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"j\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"g\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"j\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"k\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"i\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"h\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"g\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"g\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"g\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">]</span>\nk <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token string\">\"i\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"k\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"h\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"h\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"j\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"h\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"g\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"l\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"h\"</span><span class=\"token punctuation\">]</span>\nl <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token string\">\"j\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"k\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"j\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"i\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"i\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"m\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"g\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"j\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"j\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"k\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"g\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"l\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"i\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"l\"</span><span class=\"token punctuation\">]</span>\nm <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"g\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"n\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"g\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"k\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"m\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"h\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"h\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"l\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"g\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"h\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"h\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"l\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"k\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"h\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"k\"</span><span class=\"token punctuation\">,</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">]</span>\n\n<span class=\"token keyword\">print</span><span class=\"token punctuation\">(</span><span class=\"token builtin\">chr</span><span class=\"token punctuation\">(</span>a<span class=\"token punctuation\">.</span>index<span class=\"token punctuation\">(</span><span class=\"token string\">\"b\"</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">+</span> <span class=\"token number\">97</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span>end<span class=\"token operator\">=</span><span class=\"token string\">\"\"</span><span class=\"token punctuation\">)</span>\n<span class=\"token keyword\">print</span><span class=\"token punctuation\">(</span><span class=\"token builtin\">chr</span><span class=\"token punctuation\">(</span>b<span class=\"token punctuation\">.</span>index<span class=\"token punctuation\">(</span><span class=\"token string\">\"c\"</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">+</span> <span class=\"token number\">97</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span>end<span class=\"token operator\">=</span><span class=\"token string\">\"\"</span><span class=\"token punctuation\">)</span>\n<span class=\"token keyword\">print</span><span class=\"token punctuation\">(</span><span class=\"token builtin\">chr</span><span class=\"token punctuation\">(</span>c<span class=\"token punctuation\">.</span>index<span class=\"token punctuation\">(</span><span class=\"token string\">\"d\"</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">+</span> <span class=\"token number\">97</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span>end<span class=\"token operator\">=</span><span class=\"token string\">\"\"</span><span class=\"token punctuation\">)</span>\n<span class=\"token keyword\">print</span><span class=\"token punctuation\">(</span><span class=\"token builtin\">chr</span><span class=\"token punctuation\">(</span>d<span class=\"token punctuation\">.</span>index<span class=\"token punctuation\">(</span><span class=\"token string\">\"e\"</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">+</span> <span class=\"token number\">97</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span>end<span class=\"token operator\">=</span><span class=\"token string\">\"\"</span><span class=\"token punctuation\">)</span>\n<span class=\"token keyword\">print</span><span class=\"token punctuation\">(</span><span class=\"token builtin\">chr</span><span class=\"token punctuation\">(</span>e<span class=\"token punctuation\">.</span>index<span class=\"token punctuation\">(</span><span class=\"token string\">\"f\"</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">+</span> <span class=\"token number\">97</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span>end<span class=\"token operator\">=</span><span class=\"token string\">\"\"</span><span class=\"token punctuation\">)</span>\n<span class=\"token keyword\">print</span><span class=\"token punctuation\">(</span><span class=\"token builtin\">chr</span><span class=\"token punctuation\">(</span>f<span class=\"token punctuation\">.</span>index<span class=\"token punctuation\">(</span><span class=\"token string\">\"g\"</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">+</span> <span class=\"token number\">97</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span>end<span class=\"token operator\">=</span><span class=\"token string\">\"\"</span><span class=\"token punctuation\">)</span>\n<span class=\"token keyword\">print</span><span class=\"token punctuation\">(</span><span class=\"token builtin\">chr</span><span class=\"token punctuation\">(</span>g<span class=\"token punctuation\">.</span>index<span class=\"token punctuation\">(</span><span class=\"token string\">\"h\"</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">+</span> <span class=\"token number\">97</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span>end<span class=\"token operator\">=</span><span class=\"token string\">\"\"</span><span class=\"token punctuation\">)</span>\n<span class=\"token keyword\">print</span><span class=\"token punctuation\">(</span><span class=\"token builtin\">chr</span><span class=\"token punctuation\">(</span>h<span class=\"token punctuation\">.</span>index<span class=\"token punctuation\">(</span><span class=\"token string\">\"i\"</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">+</span> <span class=\"token number\">97</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span>end<span class=\"token operator\">=</span><span class=\"token string\">\"\"</span><span class=\"token punctuation\">)</span>\n<span class=\"token keyword\">print</span><span class=\"token punctuation\">(</span><span class=\"token builtin\">chr</span><span class=\"token punctuation\">(</span>i<span class=\"token punctuation\">.</span>index<span class=\"token punctuation\">(</span><span class=\"token string\">\"j\"</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">+</span> <span class=\"token number\">97</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span>end<span class=\"token operator\">=</span><span class=\"token string\">\"\"</span><span class=\"token punctuation\">)</span>\n<span class=\"token keyword\">print</span><span class=\"token punctuation\">(</span><span class=\"token builtin\">chr</span><span class=\"token punctuation\">(</span>j<span class=\"token punctuation\">.</span>index<span class=\"token punctuation\">(</span><span class=\"token string\">\"k\"</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">+</span> <span class=\"token number\">97</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span>end<span class=\"token operator\">=</span><span class=\"token string\">\"\"</span><span class=\"token punctuation\">)</span>\n<span class=\"token keyword\">print</span><span class=\"token punctuation\">(</span><span class=\"token builtin\">chr</span><span class=\"token punctuation\">(</span>k<span class=\"token punctuation\">.</span>index<span class=\"token punctuation\">(</span><span class=\"token string\">\"l\"</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">+</span> <span class=\"token number\">97</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span>end<span class=\"token operator\">=</span><span class=\"token string\">\"\"</span><span class=\"token punctuation\">)</span>\n<span class=\"token keyword\">print</span><span class=\"token punctuation\">(</span><span class=\"token builtin\">chr</span><span class=\"token punctuation\">(</span>l<span class=\"token punctuation\">.</span>index<span class=\"token punctuation\">(</span><span class=\"token string\">\"m\"</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">+</span> <span class=\"token number\">97</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span>end<span class=\"token operator\">=</span><span class=\"token string\">\"\"</span><span class=\"token punctuation\">)</span>\n<span class=\"token keyword\">print</span><span class=\"token punctuation\">(</span><span class=\"token builtin\">chr</span><span class=\"token punctuation\">(</span>m<span class=\"token punctuation\">.</span>index<span class=\"token punctuation\">(</span><span class=\"token string\">\"n\"</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">+</span> <span class=\"token number\">97</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span>end<span class=\"token operator\">=</span><span class=\"token string\">\"\"</span><span class=\"token punctuation\">)</span>\n\n<span class=\"token comment\"># rebeccapurple</span>\n<span class=\"token comment\"># DUCTF{rebeccapurple}</span></code></pre></div>\n<h2 id=\"all-fathers-wisdomrev\" style=\"position:relative;\"><a href=\"#all-fathers-wisdomrev\" aria-label=\"all fathers wisdomrev permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>All Father’s Wisdom(Rev)</h2>\n<blockquote>\n<p>We found this binary in the backroom, its been marked as “The All Fathers Wisdom” - See hex for further details. Not sure if its just old and hex should be text, or they mean the literal hex.</p>\n<p>Anyway can you get this ‘wisdom’ out of the binary for us?</p>\n</blockquote>\n<p>I tried to run the ELF file provided as the challenge binary, but the program exited without displaying anything.</p>\n<p>Analyzing it in Ghidra showed that an <code class=\"language-text\">exit()</code> function was placed before the code that prints the flag, so I patched it to NOP and obtained the flag.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token number\">44</span> <span class=\"token number\">55</span> <span class=\"token number\">43</span> <span class=\"token number\">54</span> <span class=\"token number\">46</span> 7b 4f <span class=\"token number\">64</span> <span class=\"token number\">31</span> 6e 5f <span class=\"token number\">31</span> <span class=\"token number\">53</span> 2d 4e <span class=\"token number\">30</span> <span class=\"token number\">74</span> 5f <span class=\"token number\">43</span> 7d\n<span class=\"token comment\"># DUCTF{Od1n_1S-N0t_C}</span></code></pre></div>\n<h2 id=\"pynyrev\" style=\"position:relative;\"><a href=\"#pynyrev\" aria-label=\"pynyrev permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>pyny(Rev)</h2>\n<blockquote>\n<p>I’ve never seen a Python program like this before.</p>\n</blockquote>\n<p>The following Python code was given as the challenge binary, and it turned out to be a Python script encoded in punycode.</p>\n<div class=\"gatsby-highlight\" data-language=\"python\"><pre class=\"language-python\"><code class=\"language-python\"><span class=\"token comment\">#coding: punycode</span>\n<span class=\"token keyword\">def</span> <span class=\"token function\">_</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">:</span> <span class=\"token keyword\">pass</span>\n<span class=\"token punctuation\">(</span><span class=\"token string\">'Correct!'</span> <span class=\"token keyword\">if</span> <span class=\"token punctuation\">(</span><span class=\"token string\">'Enter the flag: '</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">==</span> <span class=\"token string\">'DUCTF{%s}'</span> <span class=\"token operator\">%</span> _<span class=\"token punctuation\">.</span>____ <span class=\"token keyword\">else</span> <span class=\"token string\">'Wrong!'</span><span class=\"token punctuation\">)</span><span class=\"token operator\">-</span>gdd7dd23l3by980a4baunja1d4ukc3a3e39172b4sagce87ciajq2bi5atq4b9b3a3cy0gqa9019gtar0ck</code></pre></div>\n<p>Punycode is an encoding method used for things like Japanese domain names. It places the ASCII string at the beginning and then appends, after the <code class=\"language-text\">-</code>, a string in which Unicode characters are converted into ASCII codes indicating their positions and character types.</p>\n<p>Reference: <a href=\"https://ja.wikipedia.org/wiki/Punycode\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Punycode - Wikipedia</a></p>\n<p>In other words, in the Python script above, the Unicode characters defined by <code class=\"language-text\">-gdd7dd23l3by980a4baunja1d4ukc3a3e39172b4sagce87ciajq2bi5atq4b9b3a3cy0gqa9019gtar0ck</code> are inserted into the appropriate positions in the earlier Python code, completing an executable script.</p>\n<p>It seemed like simply debugging the Python script would quickly reveal the flag, but perhaps because the offsets shift when punycode is decoded, debugging at startup caused errors.</p>\n<p>So I installed the Python debugging plugin for gdb with the following command and decided to debug it using gdb.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">sudo</span> <span class=\"token function\">apt</span> <span class=\"token function\">install</span> python3-dbg</code></pre></div>\n<p>Reference: <a href=\"https://wiki.python.org/moin/DebuggingWithGdb\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">DebuggingWithGdb - Python Wiki</a></p>\n<p>Reference: <a href=\"https://fedoraproject.org/wiki/Features/EasierPythonDebugging\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Features/EasierPythonDebugging - Fedora Project Wiki</a></p>\n<p>Extracting strings from the heap after running the script showed that the value of <code class=\"language-text\">ᵖʸᵗʰºⁿ_ʷªʳᵐᵘᵖ.__ⁿªᵐᵉ__</code> would become the flag.</p>\n<p>So, after advancing execution to an appropriate point, I identified the address of the <code class=\"language-text\">python_warmup</code> function with the <code class=\"language-text\">info threads</code> command and printed its information with the following command.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">p *<span class=\"token punctuation\">(</span>PyCodeObject*<span class=\"token punctuation\">)</span><span class=\"token punctuation\">((</span><span class=\"token punctuation\">(</span>PyFunctionObject*<span class=\"token punctuation\">)</span>0x7ffff7b5fd90<span class=\"token punctuation\">)</span>-<span class=\"token operator\">></span>func_code<span class=\"token punctuation\">)</span></code></pre></div>\n<p>As a result, I found that the correct flag was <code class=\"language-text\">DUCTF{python_warmup}</code>.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 960px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/a2df33fb150f8eadc21c6899e8210a91/2aa89/image-20230903150158472.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 59.583333333333336%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAMCAYAAABiDJ37AAAACXBIWXMAAAsTAAALEwEAmpwYAAABqUlEQVQoz5VSaVPiQBDNpy3PLRUpOZYrkIEFQibkmAwZc6AR1HLx//+ZZ2eELd1aFT+86unqmTfvdbexsp+QmgWy0RL34wRZR2JpKuRdifUwQ8FyqLZE3gqQEW57EnHdQ/orQGEukDQ9qvtI26+58cSusXELrKYpVJ0jPPsNVeOIqhyiYkNe2ogqE8IUsjqjOy7E5UzXFpQH52P4F2MEdEdcTGCUrBu+wh/7Bhun0Ei7MW4YqTYz5L2Qoo87pkhxohUW/QWWHUEqfeTtkNSHOpYOjMeuwD1L8DC5xTORrUnx7KAP79TC/MQCL3HK4P0cwj224Bz2NdwTRnVG0dLYnY245iFuCMiaQHzlQF29WonIkiCbpQ1+NIBzYGqi8qzzLfG/MEQ9QEiEfmUO74z6cD4idUONeQn6eUeyDwzejBGwFVRLagJ+9P+fd6q+JHQaNPpRgbvB4sNH+xC9I4wHS1qPKewfvXf9mb3p21ulX1hWkBZNd5giaXh/9y2i/StjOd1vKXRb1/CtNdKOQkhLymk13C30QI6/aXneiOC2M4iqC374+UD2IX4BBXdcS9lD8LwAAAAASUVORK5CYII='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/a2df33fb150f8eadc21c6899e8210a91/8ac56/image-20230903150158472.webp 240w,\n/static/a2df33fb150f8eadc21c6899e8210a91/d3be9/image-20230903150158472.webp 480w,\n/static/a2df33fb150f8eadc21c6899e8210a91/e46b2/image-20230903150158472.webp 960w,\n/static/a2df33fb150f8eadc21c6899e8210a91/f992d/image-20230903150158472.webp 1440w,\n/static/a2df33fb150f8eadc21c6899e8210a91/16258/image-20230903150158472.webp 1698w\"\n              sizes=\"(max-width: 960px) 100vw, 960px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/a2df33fb150f8eadc21c6899e8210a91/8ff5a/image-20230903150158472.png 240w,\n/static/a2df33fb150f8eadc21c6899e8210a91/e85cb/image-20230903150158472.png 480w,\n/static/a2df33fb150f8eadc21c6899e8210a91/d9199/image-20230903150158472.png 960w,\n/static/a2df33fb150f8eadc21c6899e8210a91/07a9c/image-20230903150158472.png 1440w,\n/static/a2df33fb150f8eadc21c6899e8210a91/2aa89/image-20230903150158472.png 1698w\"\n            sizes=\"(max-width: 960px) 100vw, 960px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/a2df33fb150f8eadc21c6899e8210a91/d9199/image-20230903150158472.png\"\n            alt=\"image-20230903150158472\"\n            title=\"image-20230903150158472\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<h2 id=\"spacegamerev\" style=\"position:relative;\"><a href=\"#spacegamerev\" aria-label=\"spacegamerev permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>SPACEGAME(Rev)</h2>\n<blockquote>\n<p>ALL YOUR BASE ARE BELONG TO US. YOU ARE ON THE WAY TO DESTRUCTION.</p>\n</blockquote>\n<p>When I launched the EXE given as the challenge binary, the following invader game started.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 960px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/8457cfc7d15303cad27feb0219c12865/6ae17/image.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 62.5%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAACXBIWXMAAA7DAAAOwwHHb6hkAAABiUlEQVQ4y41TW07DMBDMAUhSO47zcNM0SV9AK/hAQCX+qgJC3IEbcAeQ4NrDepO0adXSfoz82PXszNp2lj8vePha4/H7eQd2b/n7iuJpAukKqFBBqdNwBCVL7wgoFgh5kiQIgi0hV2aE2M47sImBghA9OighpWxIJKNLaEfnHBs2McsK9E2OsriE3/OQDypk/bIuYMW0Crvshyy0GGQlppMbTMYL9IgwSQyS2MD3XUhaB+RAKVIY6YiqiH9JhfBhzIBIR0wQqpDj9ty4miKfL1HevyOOIji2qpXf9uYQrJKQbA3zMdI041y7tuPt4g7z9Qeu3z6RxindMt1iFCVccR91kRCjas5zY4Zktc/K6hwFzyPLNOp+VVterdbU3AyRDlmyRaQ1YzuvY5puXZMy2ybdxJM4RmxzVN0iZza7hEkNJ+qGiOd8UG/GLuq4pl4GqIoJObiis4rb4LjuBVnJUQynEBsr58O2hPvZrPkdhlTNqlMqOOt77b/R3Z/S2dx/Nofe47Ev117SH/uJTJXQ1rlbAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/8457cfc7d15303cad27feb0219c12865/8ac56/image.webp 240w,\n/static/8457cfc7d15303cad27feb0219c12865/d3be9/image.webp 480w,\n/static/8457cfc7d15303cad27feb0219c12865/e46b2/image.webp 960w,\n/static/8457cfc7d15303cad27feb0219c12865/f992d/image.webp 1440w,\n/static/8457cfc7d15303cad27feb0219c12865/882b9/image.webp 1920w,\n/static/8457cfc7d15303cad27feb0219c12865/c1f78/image.webp 2081w\"\n              sizes=\"(max-width: 960px) 100vw, 960px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/8457cfc7d15303cad27feb0219c12865/8ff5a/image.png 240w,\n/static/8457cfc7d15303cad27feb0219c12865/e85cb/image.png 480w,\n/static/8457cfc7d15303cad27feb0219c12865/d9199/image.png 960w,\n/static/8457cfc7d15303cad27feb0219c12865/07a9c/image.png 1440w,\n/static/8457cfc7d15303cad27feb0219c12865/29114/image.png 1920w,\n/static/8457cfc7d15303cad27feb0219c12865/6ae17/image.png 2081w\"\n            sizes=\"(max-width: 960px) 100vw, 960px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/8457cfc7d15303cad27feb0219c12865/d9199/image.png\"\n            alt=\"img\"\n            title=\"img\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>After extracting the script from <code class=\"language-text\">love.dll</code>, which had packed Lua scripts, I obtained code like the following.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 798px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/eb51b139316b4ca7a21bf3e04ddf8783/898f6/image-20230901235503022.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 114.58333333333334%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAXCAYAAAALHW+jAAAACXBIWXMAAAsTAAALEwEAmpwYAAAC9UlEQVQ4y31VWZajMAzkHh12zGKzhDVLZ17e3P9QNSUR8uhk0h/ChuCipCopXpZlcLVDlZeoXYM0TRFFEeI4fgt5HgTBM8IwfK5beNZa9H3PGNG1DsZkyExO4ARJkugHjDEaso8jAY8Q7cD2oJ68MA4zbve/WJYZl+s3vv/ccb2ceT9hHEec+Pw4Lhgkjj3OlwvGaf4/Q0lj6AcMQ4+6aVAUBfLccC1RFhmZpTwUwpc0H4fiONH4CNi2LaZ5wfk0oSoNvg4+fF8i0Hge2tXvUx0VMAoi9EzldFo0rC0VcP+isHxl83r/BJSNSQ3mccY8zxj7Bq2zVL1GVVVwzsGReco0/wfyA1AuK2iAOIzR1C0Be8zTiKZda1rRCc4alGXxkdnPlB/+ksOWjMSbahHxXhg9Xv7df28MxXe2shrCRBjleaYfSeIQh8Ph11S3DyigsDn2RwKVZEcgY3QvtRNAZ63eb0LtYy+erF4YhZrW0PY085Uq09AURqx0PHbsnoZhVRzJJInXDpKQkmyt+oNhEiUYuh4XAi704zStHTIMHdqGClPxrnPKWADU9GQs7SjPBPwJuKFL7W63G819YsstuJwJyDJ0Xats27ZGXdco84K+DXCQVBkH//CS8kOUqrSYRjIbBg4KtmLfoXE5289om0XRbur8JkpAO+ScLlJ4qZOkot6rSqqc62ptoVZa29H/1TpeUzewWptMD22jSuoi93mR67r9JutehDdAmTDaw9OAhUIsU6+TRwSxLENtK9ZXWEoGK9NYAD+k7dVkKCpWrFXNg84kyLOYQ5ZsyDoKfEaotQsowBcNvqUuI81/mTyeyD7TJicqO7J/xYMnsmxdpVOnKAtlZrKEtc21rsJSrGPYXQUjVU+uZfAapuys42RhkG3X1WsfP9KQvbRglpI192rqNNGOSsg6Sx7qP+rqyQ/dsJr5fr/heu75xRghbSKHt/G2DZFNkE3tt5TlInNvnicI2204lGWlRl7/EnK102arTyrLs3+cEZGvWimb9gAAAABJRU5ErkJggg=='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/eb51b139316b4ca7a21bf3e04ddf8783/8ac56/image-20230901235503022.webp 240w,\n/static/eb51b139316b4ca7a21bf3e04ddf8783/d3be9/image-20230901235503022.webp 480w,\n/static/eb51b139316b4ca7a21bf3e04ddf8783/ce206/image-20230901235503022.webp 798w\"\n              sizes=\"(max-width: 798px) 100vw, 798px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/eb51b139316b4ca7a21bf3e04ddf8783/8ff5a/image-20230901235503022.png 240w,\n/static/eb51b139316b4ca7a21bf3e04ddf8783/e85cb/image-20230901235503022.png 480w,\n/static/eb51b139316b4ca7a21bf3e04ddf8783/898f6/image-20230901235503022.png 798w\"\n            sizes=\"(max-width: 798px) 100vw, 798px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/eb51b139316b4ca7a21bf3e04ddf8783/898f6/image-20230901235503022.png\"\n            alt=\"image-20230901235503022\"\n            title=\"image-20230901235503022\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>I looked through all of the scripts inside <code class=\"language-text\">love.dll</code>, but could not find any information that seemed likely to lead directly to the flag. However, I noticed that <code class=\"language-text\">conf.lua</code>, which I found referenced inside <code class=\"language-text\">love.dll</code>, was not actually present inside <code class=\"language-text\">love.dll</code>.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 880px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/5ac40ff590305d3eb2c7e5ab56d523a9/9c177/image-20230901235558051.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 31.666666666666664%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAGCAYAAADDl76dAAAACXBIWXMAAAsTAAALEwEAmpwYAAAA50lEQVQY042PW07DMBBFsxASRyF+JOP4UScOImkKVOKPJbD/ZVymKXyAVJWPo9HYnrnHhfcez08T3taAdZmRxox4SPDDgI48YojI04iB+wtaSdR1fZOCrMP7+YjPD4/zacayrNi2DcftxAELXtYFKSUOGkGWQ4xB0zQ3KWSreGBCTBmBbZwPbOLgnEOI3DsL0gpGNlBsZ7RB3/cMwXYSr1QhmAatUhBVhUIrDWvtFSIeul7UQqDiWpblXi8IPrsHG0rkPCMcxn0pkYVsW5Bq8chf+Lvo3uKi67rvh4JtHn4Z/Qzv9Z+GX88UrnehEHTEAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/5ac40ff590305d3eb2c7e5ab56d523a9/8ac56/image-20230901235558051.webp 240w,\n/static/5ac40ff590305d3eb2c7e5ab56d523a9/d3be9/image-20230901235558051.webp 480w,\n/static/5ac40ff590305d3eb2c7e5ab56d523a9/fd35f/image-20230901235558051.webp 880w\"\n              sizes=\"(max-width: 880px) 100vw, 880px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/5ac40ff590305d3eb2c7e5ab56d523a9/8ff5a/image-20230901235558051.png 240w,\n/static/5ac40ff590305d3eb2c7e5ab56d523a9/e85cb/image-20230901235558051.png 480w,\n/static/5ac40ff590305d3eb2c7e5ab56d523a9/9c177/image-20230901235558051.png 880w\"\n            sizes=\"(max-width: 880px) 100vw, 880px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/5ac40ff590305d3eb2c7e5ab56d523a9/9c177/image-20230901235558051.png\"\n            alt=\"image-20230901235558051\"\n            title=\"image-20230901235558051\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>So I analyzed the challenge EXE binary and found that what was probably an encrypted ZIP containing <code class=\"language-text\">conf.lua</code> seemed to be embedded as shown below.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 718px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/a2ad2948ea20b3c3c1cc81268a0fe511/57dc1/image-20230901235424188.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 59.583333333333336%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAMCAYAAABiDJ37AAAACXBIWXMAAAsTAAALEwEAmpwYAAACPklEQVQoz02TWVfacBDFeWxr62m1Vbs9tCJWRIjsW4QSwr6GAMGw1WNr/f4f4HbuQM7pw5xJ/knuzG/mJrS1ZlhVJujfWJjleliUhpjn+xrTbA+TdBu+6WB552BRHOK+PMY000XmXRROsglPzuyjKLIHYSRehRG6L43gy8vdaBXj26aKMiaptmY308G8MNAPmXnmyLPU6wjsMwPlkwRyR9cofYjDOLhA6G9vg+fBFm66g1XVxebnVLqZYC35seXjd3upeWvN9Zw0vuQ76ahyEkfx/Y0GCZNSJPTY9MEYJmxB7Coicb3iYD+CkQZRKbipzRQ/fxxDK2LCPL6G+SaCzOGPHbKncxmhc7VD/j+I6yRbgtjS7MrsWIzX9fMiRtKVdZpA/u0VMhIGBYn0p7PSl9bVqSxgDE9mxbwUPF4Hy+A1R7GquDA/JZVgKVQNEW98TsJ48R2hp+4aTzLHkdHQTneijm5b8SgqgjzjswfbU1E7XNJC40sT9tc0CoeXe2SpypkQmaLsdCx2GMTris256tZlacH2uWX7SwqWREkWkhMLmacGEi/PEXqwF2BQgL7jRzsPdnUZtMpci0703KcP5dlQ3menM5nz4raBmswyTsHn/lZtw86ITMzAyETkfVD0V93DVu5ZqC8bdoWkF6th9C0vvrzYLSWwQ4DM6rpRQSQ6g5ja6f4P4nu2iAwiZZRlOZZEWjyoM2QXNG0/ZunM6D9+xC6Ix20rqmQi6r2It0Ww+dFAVv6SAs0tfwxn+A98zqsHgwLsQgAAAABJRU5ErkJggg=='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/a2ad2948ea20b3c3c1cc81268a0fe511/8ac56/image-20230901235424188.webp 240w,\n/static/a2ad2948ea20b3c3c1cc81268a0fe511/d3be9/image-20230901235424188.webp 480w,\n/static/a2ad2948ea20b3c3c1cc81268a0fe511/7d0c9/image-20230901235424188.webp 718w\"\n              sizes=\"(max-width: 718px) 100vw, 718px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/a2ad2948ea20b3c3c1cc81268a0fe511/8ff5a/image-20230901235424188.png 240w,\n/static/a2ad2948ea20b3c3c1cc81268a0fe511/e85cb/image-20230901235424188.png 480w,\n/static/a2ad2948ea20b3c3c1cc81268a0fe511/57dc1/image-20230901235424188.png 718w\"\n            sizes=\"(max-width: 718px) 100vw, 718px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/a2ad2948ea20b3c3c1cc81268a0fe511/57dc1/image-20230901235424188.png\"\n            alt=\"image-20230901235424188\"\n            title=\"image-20230901235424188\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>Since this is unpacked in memory at runtime, I started the game, paused it, and searched the in-memory strings with Process Hacker. As a result, I was able to obtain the correct flag string as shown below.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 895px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/29ce6da95a169074318516cf702524c4/fcbaf/image-20230901235635717.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 77.5%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAQCAYAAAAWGF8bAAAACXBIWXMAAAsTAAALEwEAmpwYAAABqklEQVQ4y5VUi3KCMBDk/z+uYsHXFMeKPORpQB46WK7Zo0F0wLbM7FxyuWzWZE/tdDqREILyPKfz+UyXy4XqumZUVd2PeT7IV1U1Cs1xXC6IopiyLKcwjJi4QzEai6LoUJZUShRFyXOMNePdYLIojrkYiqEWBVCLInU61HXzmtcUVB5jzTQXFAYh7fe2JI6kyoxCGUEMtSBHTgDyapTCTm0HzFGDWiYMgoAOB4ccx6E0TSVRyNG2bToejxIB+b7P+ev1SmNf0zR8mGYYBhPebjdeaNvHwlYmFNT6MKfyPaFpmKwAiWeC9on9nntBiEeBwinCMai6YewJF3yH4UuFw/gr4Vyf/1/hqztcLlf8etMK7/gToa7rbI3+ldUDDMaPDzPqGt7PhKvVmg0ND7quy+ZV/Q2z9qb+MTbmSZLIRtizN+FVz/Not/vkNW32NuOCiLtDkPVhEayEiA7yPJ83DoE7Ry06Q/2xQARMr23WG2ZGP+Ln2LZDlrWlrUQs+zuJEz4QnYNNGAuR0dSnzWY6n4Z+bOQ9gAzdg5+AzSCMJdIkZdKOUNDXhAO+Af3A0nxYOKuAAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/29ce6da95a169074318516cf702524c4/8ac56/image-20230901235635717.webp 240w,\n/static/29ce6da95a169074318516cf702524c4/d3be9/image-20230901235635717.webp 480w,\n/static/29ce6da95a169074318516cf702524c4/dcb2d/image-20230901235635717.webp 895w\"\n              sizes=\"(max-width: 895px) 100vw, 895px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/29ce6da95a169074318516cf702524c4/8ff5a/image-20230901235635717.png 240w,\n/static/29ce6da95a169074318516cf702524c4/e85cb/image-20230901235635717.png 480w,\n/static/29ce6da95a169074318516cf702524c4/fcbaf/image-20230901235635717.png 895w\"\n            sizes=\"(max-width: 895px) 100vw, 895px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/29ce6da95a169074318516cf702524c4/fcbaf/image-20230901235635717.png\"\n            alt=\"image-20230901235635717\"\n            title=\"image-20230901235635717\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>Looking at the official writeup, it seems that you can also obtain the flag by tampering with the Lua script to remove the lose condition, allowing you to play the game in an invincible state.</p>\n<p>Reference: <a href=\"https://github.com/DownUnderCTF/Challenges_2023_Public/blob/main/rev/spacegame/solve/solve.md\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Challenges<em>2023</em>Public/rev/spacegame/solve/solve.md Main · DownUnderCTF/Challenges<em>2023</em>Public</a></p>\n<h2 id=\"summary\" style=\"position:relative;\"><a href=\"#summary\" aria-label=\"summary permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Summary</h2>\n<p>I need more practice, more practice, more practice, more practice, more practice, more practice, more practice, more practice, more practice, more practice, more practice, more practice, more practice, more practice, more practice, more practice.</p>","fields":{"slug":"/ctf-duc-ctf-2023-en","tagSlugs":["/tag/ctf-en/","/tag/rev-en/","/tag/english/"]},"frontmatter":{"date":"2023-09-03","description":"This is a writeup for DUCTF 2023.","tags":["CTF (en)","Rev (en)","English"],"title":"DUCTF 2023 Writeup","socialImage":{"publicURL":"/static/1eb178ac3efb539be8d58b00be88647c/ctf-duc-ctf-2023.png"}}}},"pageContext":{"slug":"/ctf-duc-ctf-2023-en"}},"staticQueryHashes":["251939775","401334301","825871152"]}