{"componentChunkName":"component---src-templates-post-template-js","path":"/hackthebox-parrot-setup-en","result":{"data":{"markdownRemark":{"id":"5838ece5-bb1b-5c06-9a65-09b91efaa4a4","html":"<blockquote>\n<p>This page has been machine-translated from the <a href=\"/hackthebox-parrot-setup\">original page</a>.</p>\n</blockquote>\n<p>I study programming and security as a hobby.</p>\n<p>Lately, I’ve been spending a lot of time on penetration-testing learning platforms like “Hack The Box” and “Try Hack Me”, as well as on CTFs.</p>\n<p>This time, I decided to rebuild the ParrotOS environment I usually use for “Hack The Box” and CTFs, so I wrote this article to summarize the setup steps as a personal memo.</p>\n<p>This article covers the following.</p>\n<ul>\n<li><strong>Settings to apply after installing ParrotOS</strong></li>\n<li><strong>Applications to install for HackTheBox and CTFs</strong></li>\n<li><strong>Setting up a Ghidra Debugger build</strong></li>\n<li><strong>Miscellaneous things to do after setup</strong></li>\n</ul>\n<!-- omit in toc -->\n<h2 id=\"about-this-article\" style=\"position:relative;\"><a href=\"#about-this-article\" aria-label=\"about this article 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>About this article</h2>\n<p><strong>This article is not intended to encourage acts that go against public order.</strong></p>\n<p>Please note that attempting attacks against environments you do not own or are not authorized to access may violate laws that prohibit unauthorized computer access.</p>\n<p>Also, everything written here reflects my personal views, not those of any organization I belong to.</p>\n<!-- omit in toc -->\n<h2 id=\"table-of-contents\" style=\"position:relative;\"><a href=\"#table-of-contents\" aria-label=\"table of contents permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Table of Contents</h2>\n<ul>\n<li><a href=\"#what-is-parrotos\">What is ParrotOS?</a></li>\n<li><a href=\"#why-i-chose-parrot\">Why I Chose Parrot</a></li>\n<li>\n<p><a href=\"#initial-parrotos-setup\">Initial ParrotOS Setup</a></p>\n<ul>\n<li><a href=\"#upgrade-packages\">Upgrade Packages</a></li>\n<li><a href=\"#configure-the-network-ip\">Configure the Network IP</a></li>\n<li><a href=\"#set-up-rdp\">Set Up RDP</a></li>\n<li><a href=\"#install-additional-packages\">Install Additional Packages</a></li>\n<li><a href=\"#enable-japanese-input\">Enable Japanese Input</a></li>\n<li><a href=\"#start-in-alphanumeric-mode-at-boot\">Start in Alphanumeric Mode at Boot</a></li>\n<li><a href=\"#set-up-aliases\">Set Up Aliases</a></li>\n<li><a href=\"#change-the-menu-bar-position\">Change the Menu Bar Position</a></li>\n<li><a href=\"#disable-the-automatic-update-window\">Disable the Automatic Update Window</a></li>\n<li><a href=\"#change-the-time-zone\">Change the Time Zone</a></li>\n<li><a href=\"#adjust-the-terminal-settings\">Adjust the Terminal Settings</a></li>\n<li><a href=\"#change-the-os-shortcut-keys\">Change the OS Shortcut Keys</a></li>\n<li><a href=\"#register-an-ssh-key-with-github\">Register an SSH Key with GitHub</a></li>\n<li><a href=\"#disable-automatic-sleep\">Disable Automatic Sleep</a></li>\n</ul>\n</li>\n<li>\n<p><a href=\"#install-various-tools\">Install Various Tools</a></p>\n<ul>\n<li><a href=\"#google-chrome\">Google Chrome</a></li>\n<li><a href=\"#vscode\">VSCode</a></li>\n<li><a href=\"#docker\">Docker</a></li>\n<li><a href=\"#jdk\">JDK</a></li>\n<li><a href=\"#ghidra\">Ghidra</a></li>\n<li><a href=\"#universal-radio-hacker-urh\">Universal Radio Hacker (URH)</a></li>\n<li><a href=\"#angr\">angr</a></li>\n<li><a href=\"#pwntools\">pwntools</a></li>\n<li><a href=\"#pycryptodome\">PyCryptodome</a></li>\n<li><a href=\"#ciphey\">Ciphey</a></li>\n<li><a href=\"#rsactftool\">RSACTFTool</a></li>\n<li><a href=\"#postman\">Postman</a></li>\n<li><a href=\"#gimp\">GIMP</a></li>\n<li><a href=\"#copyq\">CopyQ</a></li>\n<li><a href=\"#eclipse\">Eclipse</a></li>\n<li><a href=\"#wine\">Wine</a></li>\n<li><a href=\"#gdb-peda\">GDB-PEDA</a></li>\n<li><a href=\"#pwndbg\">Pwndbg</a></li>\n<li><a href=\"#rustscan\">RustScan</a></li>\n<li><a href=\"#fzf\">FZF</a></li>\n<li><a href=\"#gobusterferoxbuster\">Gobuster/Feroxbuster</a></li>\n<li><a href=\"#crackmapexec\">CrackMapExec</a></li>\n<li><a href=\"#evil-winrm\">Evil-WinRM</a></li>\n<li><a href=\"#windows-exploit-suggester\">Windows-Exploit-Suggester</a></li>\n<li><a href=\"#burpsuite\">BurpSuite</a></li>\n<li><a href=\"#sourcetrail\">SourceTrail</a></li>\n<li><a href=\"#yara\">YARA</a></li>\n<li><a href=\"#qemu-and-cross-compilation-environment\">QEMU and Cross-Compilation Environment</a></li>\n<li><a href=\"#aws-cli\">AWS CLI</a></li>\n<li><a href=\"#impacket\">Impacket</a></li>\n<li><a href=\"#tweak\">Tweak</a></li>\n<li><a href=\"#pngcheck\">pngcheck</a></li>\n<li><a href=\"#png-parser\">png-parser</a></li>\n<li><a href=\"#creddump\">creddump</a></li>\n<li><a href=\"#usb-keyboard-parser\">USB keyboard parser</a></li>\n<li><a href=\"#pince\">PINCE</a></li>\n<li><a href=\"#wabt\">wabt</a></li>\n<li><a href=\"#imhex\">ImHex</a></li>\n<li><a href=\"#keepassx\">KeePassX</a></li>\n</ul>\n</li>\n<li><a href=\"#build-docker-environments\">Build Docker Environments</a></li>\n<li><a href=\"#build-ghidras-debugger-branch\">Build Ghidra’s Debugger Branch</a></li>\n<li>\n<p><a href=\"#once-the-setup-is-done\">Once the Setup Is Done…</a></p>\n<ul>\n<li><a href=\"#clean-up\">Clean Up</a></li>\n<li><a href=\"#take-a-snapshot\">Take a Snapshot</a></li>\n<li><a href=\"#export-the-image\">Export the Image</a></li>\n</ul>\n</li>\n<li><a href=\"#summary\">Summary</a></li>\n</ul>\n<h2 id=\"what-is-parrotos\" style=\"position:relative;\"><a href=\"#what-is-parrotos\" aria-label=\"what is parrotos 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>What is ParrotOS?</h2>\n<p>It is a Debian-based Linux distribution developed by <a href=\"https://www.parrotsec.org/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Parrot Security</a>.</p>\n<p>It is a distribution for pentesting and reverse engineering, and it is very similar to Kali Linux.</p>\n<p>A variety of penetration-testing tools are included by default.</p>\n<p>ParrotOS is also developed in collaboration with Hack The Box.</p>\n<p>Reference: <a href=\"https://www.hackthebox.eu/newsroom/supporting-parrot-os\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">HTB News | Hack The Box + Parrot OS</a></p>\n<h2 id=\"why-i-chose-parrot\" style=\"position:relative;\"><a href=\"#why-i-chose-parrot\" aria-label=\"why i chose parrot 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>Why I Chose Parrot</h2>\n<p>I’ve been using Parrot for just under a year, and <strong>the hassle of upgrading feels about 100 times lower than on Kali</strong>.\n(It doesn’t leave the OS unbootable.)</p>\n<p>You could say that this one point alone—fewer troubles and less work during upgrades—is why I use Parrot.</p>\n<p>I also think it has a beautiful UI and is simply fun to use.</p>\n<p>Because the window control buttons are on the upper left, Mac users may find Parrot easier to use.</p>\n<p>I’m a die-hard Windows user, but Parrot still feels very comfortable to use, so I recommend it.</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/11b003559290d4f54898933071cd2497/0b533/22605632-054a-e967-684a-bb4018086d17.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: 56.666666666666664%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAALCAYAAAB/Ca1DAAAACXBIWXMAARlAAAEZQAGA43XUAAACXUlEQVQozy1TyW7TUBR9s+cpjp2pDY1LU6WQplVLKaoqqCoGqVLVJRt+AcECsUXiDxBigdiwgi/gp/iIw7HNyk787hnuOU/E2QDSRBA6gJAehLB88t0lkF4NXZ9AqAJi7xLyxVsIL4fwS4hwBhEtINJ9iGALosVQnMsGQ0R7ezAJgV0KGQyg/QxSDwi6gK6mUGUOU2/BX51CRyV0mEIFOc+T1MaQfjubEdQnQVFhcnAIl5DVxDBpTcYJ5O4czScf8nMItcig5glMMeVwAR1XdBWTkMTRkE4y6OGS39IWcIjNyROEadlJduUUN7cX+PlH4vovVb6bwm43MOsV3PYMNl/A2gBmvoHePiJQQ7UV9PwM+uCyBxxxwNKGcNyDKbBfWfz6ukFywf1szuHef4ce7UOR1BUNvKs3sItHkGENFZadQmEHULunEEleIinHUB7BbMSPDMBjOOffuPSnsPfPEL3+AjNbMzgPbryE+/ADOqAjAsmgoNV2nwQkmcjLGnlNKyHTYyhditJCH72CWT1D2NwiengHM1nBeiVUNKK9dX/Wz7s2CBv2v91Om3LVMUsvococKmcFWtaYw8kYYnmD6OAlwnjBRDPYsqFVzjDd1q4KB50zYejKq3qFQrn+j3wGfXhNBSvua9JZEpYKHJWoEHr9HPb4Dmq4C5mQOL1HYpK6uK+MYQ/LadO9aPZPnd5CLi/Ywaiz1gG2KzBU/+AK6uPv7ox23HO7w4Kq060ekMl31q3/v8wtYMUKjJbdrZHtbXA9YFsLtXPM2/IYYsy0/TZZ7kzzVmm/t2zj7vkPmdsLe4juZzAAAAAASUVORK5CYII='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/11b003559290d4f54898933071cd2497/8ac56/22605632-054a-e967-684a-bb4018086d17.webp 240w,\n/static/11b003559290d4f54898933071cd2497/d3be9/22605632-054a-e967-684a-bb4018086d17.webp 480w,\n/static/11b003559290d4f54898933071cd2497/b0a15/22605632-054a-e967-684a-bb4018086d17.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/11b003559290d4f54898933071cd2497/8ff5a/22605632-054a-e967-684a-bb4018086d17.png 240w,\n/static/11b003559290d4f54898933071cd2497/e85cb/22605632-054a-e967-684a-bb4018086d17.png 480w,\n/static/11b003559290d4f54898933071cd2497/0b533/22605632-054a-e967-684a-bb4018086d17.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/11b003559290d4f54898933071cd2497/0b533/22605632-054a-e967-684a-bb4018086d17.png\"\n            alt=\"f92d52d7-2a95-0e25-b46b-41b28bc3296c.png\"\n            title=\"f92d52d7-2a95-0e25-b46b-41b28bc3296c.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<h2 id=\"initial-parrotos-setup\" style=\"position:relative;\"><a href=\"#initial-parrotos-setup\" aria-label=\"initial parrotos setup 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>Initial ParrotOS Setup</h2>\n<h3 id=\"upgrade-packages\" style=\"position:relative;\"><a href=\"#upgrade-packages\" aria-label=\"upgrade packages 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>Upgrade Packages</h3>\n<p>First, upgrade the packages.</p>\n<p><em>The first time takes quite a while (more than an hour depending on the environment).</em></p>\n<p>By the way, ParrotOS officially does not recommend using <code class=\"language-text\">apt upgrade</code>.</p>\n<p>So update the packages with <code class=\"language-text\">full-upgrade</code> or <code class=\"language-text\">parrot-upgrade</code> like this.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">sudo</span> <span class=\"token function\">apt</span> clean\n<span class=\"token function\">sudo</span> <span class=\"token function\">apt</span> update\n<span class=\"token function\">sudo</span> <span class=\"token function\">apt</span> full-upgrade --fix-missing -y\n<span class=\"token function\">sudo</span> <span class=\"token function\">apt</span> autoremove -y</code></pre></div>\n<p>After waiting for a while, it can fail sometimes because of dependencies and so on, but you do not need to be too upset about it.</p>\n<p>In most cases, upgrading the package that failed first will fix the problem.</p>\n<p>This time, the packages upgraded without any trouble.</p>\n<p>By the way, I select [Yes] on the Wireshark popup that appears during the process.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 813px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/3249063258980d35c59d4bb278554a62/baaa6/9d3e97ae-fd2e-5b01-9bed-6bd2e0314da4.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: 72.91666666666666%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAPCAYAAADkmO9VAAAACXBIWXMAAAsTAAALEwEAmpwYAAAC9ElEQVQ4y22SWU8TURTH+22UIAKG0IIaoxFjFKMEEgr6gIoK2BYSCLgk+iQQIpoYlUQffPVJ1g5tp9tMl+l0Omt30c/y99w7rULiwy/nzP+ee7Y7nis3vejv86Krx4fuXh96iN5zA5zuHi+3voFL8A1eRl//RdL6/4OXc6bbB8/g6Aq8I0u4MLaM80Tf7UWcHV5C1/AiOq7P49RQgAi69loQpxnkn+AqsyEM3ngAz8KHCOY2wwi8FxB4J2CW/Ln1XYTe/ECQCG3sI7S6jRBp82QDazuY2aS4t2EX8p/Svan1Q9wJfoSn2dRg2grscgGWo8Ai65hZ1I0MarqEKvlVXUbFkFErybC1NJyqCofFVVQYVg4V+hbTUYw9fg1PPCVgV9iDIIaRkEUIsX0IcQEHooDDZATRVASxdAyiJGJb2MV2eAexVJSTkOOQ8ikUSllEklGMTr+AR6Pq7CCVSSBTkJBR0txPkpagRKlMHHIuiYQUg5RLQbdVFA0FmlmgRDkUTQXlukGFYxh99BKeWsNAQc/zw3wxQ8F5KFqW09aYr9tFOHUTlYZFmJTE9Z2aieavspuQdagU0wjHDiDSCDK1z5Coo3TW7YoRJ7LU/d9Ceo6PybScmkG1adEKWgl1M4c0jaJSl2wcjUZglmE4GkpWgWyRf5cslfsMNgm7w7TG0bEOVU3iCVllVjFJD6OoMlWWSWddilxn+3U7knlMKpuAauR5wcaR8y+h5RR426yawvZFQdpPB/mSOxaDFVNpTJbMrJRgV3XandHaoYH68YSNIxslW+PjGVUDOr2svrEKnbqx6xbMsnvGEmk0nkKFKg2bU2YJ6XGav6v0a8UpIb1yo0F7oj0aVp4u076UBPTv32DQKgz64bluuzCfrYjtvU3JyPIfXIjtYWz6OTyTs8sYf0LMtOzcM/gXXmF8duWkTviJiZkV+Elrw84nKHbk4SJuTVGHnZNb6Jz83IL8CbL+T65ta21774sL17Zw/G7H3a8Yur+GP8xPYJmagLHhAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/3249063258980d35c59d4bb278554a62/8ac56/9d3e97ae-fd2e-5b01-9bed-6bd2e0314da4.webp 240w,\n/static/3249063258980d35c59d4bb278554a62/d3be9/9d3e97ae-fd2e-5b01-9bed-6bd2e0314da4.webp 480w,\n/static/3249063258980d35c59d4bb278554a62/90602/9d3e97ae-fd2e-5b01-9bed-6bd2e0314da4.webp 813w\"\n              sizes=\"(max-width: 813px) 100vw, 813px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/3249063258980d35c59d4bb278554a62/8ff5a/9d3e97ae-fd2e-5b01-9bed-6bd2e0314da4.png 240w,\n/static/3249063258980d35c59d4bb278554a62/e85cb/9d3e97ae-fd2e-5b01-9bed-6bd2e0314da4.png 480w,\n/static/3249063258980d35c59d4bb278554a62/baaa6/9d3e97ae-fd2e-5b01-9bed-6bd2e0314da4.png 813w\"\n            sizes=\"(max-width: 813px) 100vw, 813px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/3249063258980d35c59d4bb278554a62/baaa6/9d3e97ae-fd2e-5b01-9bed-6bd2e0314da4.png\"\n            alt=\"image-20210522113455941.png\"\n            title=\"image-20210522113455941.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>Several other popups will appear as well, but just choose whatever fits your environment.</p>\n<h3 id=\"configure-the-network-ip\" style=\"position:relative;\"><a href=\"#configure-the-network-ip\" aria-label=\"configure the network ip 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>Configure the Network IP</h3>\n<p>Next, configure the network.</p>\n<p>In my environment, I set up two NICs on Parrot: one for external connections and one for the internal environment.</p>\n<p>It is convenient to leave the external connection network on DHCP instead of using a fixed IP, and to assign a static IP to the internal network used for RDP from the host. That way, even if the host’s network environment changes, I can keep using it the same way.</p>\n<p>You can easily configure each NIC by using [Advanced Network Configuration].</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/5056a25ca636ab3baa4728c3a34647e7/0b533/c71318fc-a81a-830f-fb54-880d8e2cec84.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: 58.333333333333336%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAMCAYAAABiDJ37AAAACXBIWXMAARlAAAEZQAGA43XUAAAClElEQVQoz2WT208TURCHtxiLCgpIognXFlpabkVpC7S0e+9e2+629JICrRATMaIRlAeJiET/AEiMibwCxhf+x59zthUTffhyZk7Pzul8s8tF55IITj1BILyAYCRO8SJCMR6RWAZTcyuYml1COKEgmK0guMBjPBRDgM6MTs7A39sHzv8QXfceo+v+BHz90+AKpSayUoEodlZGHoLiEC4E1QVPexneRFbMQzEqMAsNJFYU3Lo7AK67Hz4/Fb7dQ/SCq7d24VSfQ8itQdQqkLQqrVUv/ksVkl6DqFehWg2YbgvJVZMK9MF3ZwC+7g5+uqB0eI3q4S/Y73/CeHcFY/8K5g2XHWh/75K4gHNwCefDNVK1j/TvWKFBKjpIxR/A1/MInFrcgmxvQrSbyOVqyGQLWCTiREJwkeBdL06rFWS0OlZpTfJFLCxrmIjG20SeIjQdx8BoFJxIjgS56DnjBRtyJ2bOzNYnaPV9pNIq+Wv7zZDHNPNJMXPMyw6yhJQrYzS6BE4iR4Jahkgbq/SQSC7/5EKu7VBQSvSQS0XoIoL9bhTWYTmb5HzN21fo3PBkDJyss4IljwxNWs+vQzHrnnjVqrcHRcNgA5GM2s1wGLKXV+niMjS7geHA7L8FCyiWNpAv1pDlDVKge0gyU2F3cgOyYkOULDqj0Stle12pZg0jE/PkkKozB+yWNG/B2T5C6+gC7u4ZzJ1TaC9O4b79gdLeOXSKjZ0zlPbPUXzzHfrLb1DqB9R+AxZ1NDROLzZr0Shs0GAcLKdUqGuvYG1/gb19Av3ZCXKtE6jNz1A3j73YyylWm8fQtr5CLr+GZtW8GkNjEXBj7FMKzWNoNoVwUqVW8l67HkIbvsN/OU8KRNvrkKkbCczgNzdArzPRokdOAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/5056a25ca636ab3baa4728c3a34647e7/8ac56/c71318fc-a81a-830f-fb54-880d8e2cec84.webp 240w,\n/static/5056a25ca636ab3baa4728c3a34647e7/d3be9/c71318fc-a81a-830f-fb54-880d8e2cec84.webp 480w,\n/static/5056a25ca636ab3baa4728c3a34647e7/b0a15/c71318fc-a81a-830f-fb54-880d8e2cec84.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/5056a25ca636ab3baa4728c3a34647e7/8ff5a/c71318fc-a81a-830f-fb54-880d8e2cec84.png 240w,\n/static/5056a25ca636ab3baa4728c3a34647e7/e85cb/c71318fc-a81a-830f-fb54-880d8e2cec84.png 480w,\n/static/5056a25ca636ab3baa4728c3a34647e7/0b533/c71318fc-a81a-830f-fb54-880d8e2cec84.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/5056a25ca636ab3baa4728c3a34647e7/0b533/c71318fc-a81a-830f-fb54-880d8e2cec84.png\"\n            alt=\"5b766783-a60d-f460-e39f-e5153589ec5b.png\"\n            title=\"5b766783-a60d-f460-e39f-e5153589ec5b.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=\"set-up-rdp\" style=\"position:relative;\"><a href=\"#set-up-rdp\" aria-label=\"set up rdp 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>Set Up RDP</h3>\n<p>Once the network IP is fixed, set up RDP so you can comfortably operate the virtual machine from Windows.</p>\n<p>First, install the required packages.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">sudo</span> <span class=\"token function\">apt</span> <span class=\"token function\">install</span> -y xrdp\n<span class=\"token function\">sudo</span> systemctl <span class=\"token builtin class-name\">enable</span> xrdp\n<span class=\"token function\">sudo</span> systemctl start xrdp</code></pre></div>\n<p>When you use XRDP, nobody should already be logged into the virtual machine.</p>\n<p>So reboot or log off the virtual machine once, and then connect over RDP.</p>\n<h3 id=\"install-additional-packages\" style=\"position:relative;\"><a href=\"#install-additional-packages\" aria-label=\"install additional packages 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>Install Additional Packages</h3>\n<p>Install the packages I personally use often ahead of time.</p>\n<p>I will not explain the details of each package here.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">sudo</span> <span class=\"token function\">apt</span> <span class=\"token function\">install</span> <span class=\"token punctuation\">\\</span>\n                 <span class=\"token function\">vim</span> <span class=\"token punctuation\">\\</span>\n                 <span class=\"token function\">make</span> <span class=\"token punctuation\">\\</span>\n                 <span class=\"token function\">git</span> <span class=\"token punctuation\">\\</span>\n                 python3.9 <span class=\"token punctuation\">\\</span>\n                 python3-pip <span class=\"token punctuation\">\\</span>\n                 python3.9-dev <span class=\"token punctuation\">\\</span>\n                 <span class=\"token function\">unzip</span> <span class=\"token punctuation\">\\</span>\n                 <span class=\"token function\">zip</span> <span class=\"token punctuation\">\\</span>\n                 build-essential <span class=\"token punctuation\">\\</span>\n                 gdb <span class=\"token punctuation\">\\</span>\n                 radare2 <span class=\"token punctuation\">\\</span>\n                 ltrace <span class=\"token punctuation\">\\</span>\n                 <span class=\"token function\">strace</span> <span class=\"token punctuation\">\\</span>\n                 xdotool <span class=\"token punctuation\">\\</span>\n                 pngcheck <span class=\"token punctuation\">\\</span>\n                 xdotool <span class=\"token punctuation\">\\</span>\n                 fcitx-mozc <span class=\"token punctuation\">\\</span>\n                 tweak <span class=\"token punctuation\">\\</span>\n                 feroxbuster <span class=\"token punctuation\">\\</span>\n                 openvpn <span class=\"token punctuation\">\\</span>\n                 bloodhound  <span class=\"token punctuation\">\\</span>\n                 neo4j <span class=\"token punctuation\">\\</span>\n                 cmake <span class=\"token punctuation\">\\</span>\n                 -y</code></pre></div>\n<h3 id=\"enable-japanese-input\" style=\"position:relative;\"><a href=\"#enable-japanese-input\" aria-label=\"enable japanese input 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>Enable Japanese Input</h3>\n<p>Next, make Parrot support Japanese input.</p>\n<p>First, install this.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">sudo</span> <span class=\"token function\">apt</span> <span class=\"token function\">install</span> fcitx-mozc</code></pre></div>\n<p>Next, open [Fcitx Configuration] from [System] > [Preferences] > [Other].</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/d4bf5c16cccff262a3a2a976d0b7a40b/0b533/96435fe6-90d5-9751-ed6d-a0b9c9efe021.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: 60.83333333333334%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAMCAYAAABiDJ37AAAACXBIWXMAARlAAAEZQAGA43XUAAABm0lEQVQoz62Ry27aQBSG/RiVqm7TpGBCgNhje8bG4zsBDDY2VN2xaKOoLbmtI+UJEimbvu3fYxMgitpFLotP3zlzZv4Z2QpzfGiGg45uoVsjEDILxWQBRyRQ28fYb6v4sPcJH/0D9EYOylkBRntbHQ2HHR3tLquttntQBGdwAh1NtYcvrR4a5M/EfrML9Uiny/pgXMKwPTBbokuXNQ6PKcygEAOtI1ZbJR+0NCiDbyuk328gF9foF5fol0RxAXd+BTs/r3uRr8CnvyEycrauremvHZOfkPNL6MECSry8RXz2gPDHPcLTHdEjdf+f2W5+h+nFH7jFCorJA3A7fDMWoZseFC7HsIMMtj8lb8heVtNZJ8xhOAMKdEe0MIHtTdZ+DV5aW8jROwUSXKbwB7MngW+E0yuDKtDqDyGoEfIRL931z1x9739RzS13vA6UcQ5vUMBLCnpySZ7VtZeUT9bWjkZfEQ4XW2+oZpL2xOM5FDfK4J/M6dkp3ChHWi5RXaKZAZiIYRCMR1RHsOgvmnYM00nIydbVTLNCyDDFX/mBt9S0gygrAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/d4bf5c16cccff262a3a2a976d0b7a40b/8ac56/96435fe6-90d5-9751-ed6d-a0b9c9efe021.webp 240w,\n/static/d4bf5c16cccff262a3a2a976d0b7a40b/d3be9/96435fe6-90d5-9751-ed6d-a0b9c9efe021.webp 480w,\n/static/d4bf5c16cccff262a3a2a976d0b7a40b/b0a15/96435fe6-90d5-9751-ed6d-a0b9c9efe021.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/d4bf5c16cccff262a3a2a976d0b7a40b/8ff5a/96435fe6-90d5-9751-ed6d-a0b9c9efe021.png 240w,\n/static/d4bf5c16cccff262a3a2a976d0b7a40b/e85cb/96435fe6-90d5-9751-ed6d-a0b9c9efe021.png 480w,\n/static/d4bf5c16cccff262a3a2a976d0b7a40b/0b533/96435fe6-90d5-9751-ed6d-a0b9c9efe021.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/d4bf5c16cccff262a3a2a976d0b7a40b/0b533/96435fe6-90d5-9751-ed6d-a0b9c9efe021.png\"\n            alt=\"c2fe6eeb-554e-2232-f6f5-6eb02b094eaf.png\"\n            title=\"c2fe6eeb-554e-2232-f6f5-6eb02b094eaf.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>Here, after adding Mozc under [Input Method], set [Trigger Input Method] to [Zenkakuhankaku] on the [Global Config] tab.</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/df4a39f132b51a7d091a28b8ca644bca/0b533/c2d90a39-e5fa-1b58-56b7-771dc5be771e.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: 30.41666666666667%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAGCAYAAADDl76dAAAACXBIWXMAARlAAAEZQAGA43XUAAAA+ElEQVQY01WQaXaDMAyEuVVf0xTMYjAYMFsWUgK9/yWmkgxt+uPz9qzRaALjHoh0L+T1HVl1RZh2+Ewdzkkr+3tUE1b2k/rDv3lOqsHbuUCQlhcR4GJ+VPmAopk91IDvqb3DDit0PSPKR6higjIXmG5BPW4wbkFM94+4QRBpKqguKN0XmnGlDyvaaaPzJp91943M3kTIM7ycWXz8bcKmgpgeMnuVUU07ox6eqLgzOar6J7TbJIq0pCj0fzER1x4vSA6PrBjOkRswnK3tFyTlJCMnJBhR0YHakRj2CMKsQ8DLAYv7Bm53/JCRwt0B8+qQczMUlToakaEf3oTfDRyTJ5cAAAAASUVORK5CYII='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/df4a39f132b51a7d091a28b8ca644bca/8ac56/c2d90a39-e5fa-1b58-56b7-771dc5be771e.webp 240w,\n/static/df4a39f132b51a7d091a28b8ca644bca/d3be9/c2d90a39-e5fa-1b58-56b7-771dc5be771e.webp 480w,\n/static/df4a39f132b51a7d091a28b8ca644bca/b0a15/c2d90a39-e5fa-1b58-56b7-771dc5be771e.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/df4a39f132b51a7d091a28b8ca644bca/8ff5a/c2d90a39-e5fa-1b58-56b7-771dc5be771e.png 240w,\n/static/df4a39f132b51a7d091a28b8ca644bca/e85cb/c2d90a39-e5fa-1b58-56b7-771dc5be771e.png 480w,\n/static/df4a39f132b51a7d091a28b8ca644bca/0b533/c2d90a39-e5fa-1b58-56b7-771dc5be771e.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/df4a39f132b51a7d091a28b8ca644bca/0b533/c2d90a39-e5fa-1b58-56b7-771dc5be771e.png\"\n            alt=\"23925996-421b-fb0f-b47c-f2b689c8faba.png\"\n            title=\"23925996-421b-fb0f-b47c-f2b689c8faba.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>Now you can type Japanese in Parrot.</p>\n<p>By the way, if you leave Mozc at its default settings, spaces become full-width while typing Japanese, which is annoying, so you may be happier if you change this setting too.</p>\n<p>Open [Mozc Settings] from [System] > [Preferences] > [Other].</p>\n<p>Here, set [Space input style] to half-width.</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/da9712a5b467429baf4dc2ea9543811c/0b533/d1d6da01-4dab-f564-6959-64d83aaa2fc4.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: 88.75%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAASCAYAAABb0P4QAAAACXBIWXMAARlAAAEZQAGA43XUAAAC3klEQVQ4y3WU2U9TQRTG++eYiCSCiQYFfFNj4t+oMT74YoyJpS3QFkpLoRWX+FCQrvd233u7Uujn+c7tlMXY5GRmOjO/851lrufNyhqWVzdw/+FTLK08w/KjDVmv6/yBjE82X4m9xNrz13i8/kL/W1rdlHObOje2JIx7cscT8PoRCkcQ2osgGNrDV1l7fQHs7Ibh8++obe+EEAzvwxe4Xnu3/Dr6A7vY8m0jkTjB23cf4LGKRXQ6HQwGA7TbbZyfnyOXzaJeq8GyCkjL2rYt1GR9epqCbVmo1+vIZNKoVasolUqwCgXwF08k4cnl8qhUKnrh4mIqdoHJZILRaISxjFyPx2Oxie5zPhqO3DMyjkZjETNUYCQaE4WWrcoK4sW2bVU7m80WYI6EU/nZ2Rm63S4cx0Gv1xNz4Ig1G00FRg/jLpAXqJDWbDYVStB0OlUjmE477Y7C7lqr1XKBMQVaGA6HGnal6oZeldzcBbZabVVDZc5cmZoAKYK/2PFcIYFMLqFmk0AD5UjVhLF4/wNG4zeAVMXqUSHVGJAZmd9cLqdO+05/ES7nd0K21auptAEbhcZsOZfNZDUSBd5S6AJjR8duDlkUKijaRQWXy2WFW/OeYw6rlao65tyAjC1CPjxyFfKQCbfRaCyUarWnbvsQns3OFfb787bp/VvlQsF9Bel0Go16QyFa8XJFe870pMkh1WvuBErFHK8V3gCyaamKmyzE5eWlgqmK+xN5KSyeCVOfnKjmHSq9VRQ+J26Ygpj+Y/hURCfaLgKiakZBWF6eLcFsei0Kc5jP5/WPTCazyBGLNOgP1JH7rscK5Joh0ukfeYqpVErv1Wp1zK6uEDmIwpNKnapXJpYHOfKSmqlkr6tn6Iz7FMCvEa0mzzFXksi6DkIHh/B8/vxFvoNh7Ir5fH4EgyEkk9+QmJvOf/1GPHkCr3dLworj5PtP7B/ERFEM0eQPBKPHiByd4P3HT/gLvf4O/I/7lJkAAAAASUVORK5CYII='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/da9712a5b467429baf4dc2ea9543811c/8ac56/d1d6da01-4dab-f564-6959-64d83aaa2fc4.webp 240w,\n/static/da9712a5b467429baf4dc2ea9543811c/d3be9/d1d6da01-4dab-f564-6959-64d83aaa2fc4.webp 480w,\n/static/da9712a5b467429baf4dc2ea9543811c/b0a15/d1d6da01-4dab-f564-6959-64d83aaa2fc4.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/da9712a5b467429baf4dc2ea9543811c/8ff5a/d1d6da01-4dab-f564-6959-64d83aaa2fc4.png 240w,\n/static/da9712a5b467429baf4dc2ea9543811c/e85cb/d1d6da01-4dab-f564-6959-64d83aaa2fc4.png 480w,\n/static/da9712a5b467429baf4dc2ea9543811c/0b533/d1d6da01-4dab-f564-6959-64d83aaa2fc4.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/da9712a5b467429baf4dc2ea9543811c/0b533/d1d6da01-4dab-f564-6959-64d83aaa2fc4.png\"\n            alt=\"17a76c6a-f900-b263-906a-fb2e79aca864.png\"\n            title=\"17a76c6a-f900-b263-906a-fb2e79aca864.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<h4 id=\"start-in-alphanumeric-mode-at-boot\" style=\"position:relative;\"><a href=\"#start-in-alphanumeric-mode-at-boot\" aria-label=\"start in alphanumeric mode at boot 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>Start in Alphanumeric Mode at Boot</h4>\n<p>With the current version of <code class=\"language-text\">fcitx-mozc</code> installed by apt, input always starts in kana mode when the OS boots, and apparently that cannot be changed by design.</p>\n<p>Patching it myself just for this would be a hassle, so I handled it with a command instead.</p>\n<p>Just register the following command in Startup Applications.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">xdotool key ctrl+alt+t <span class=\"token operator\">&amp;&amp;</span> xdotool key Zenkaku_Hankaku</code></pre></div>\n<p>This lets the OS start in alphanumeric mode.</p>\n<p>(You need to assign <code class=\"language-text\">Ctrl+Alt+T</code> as the shortcut for launching the terminal.)</p>\n<h3 id=\"set-up-aliases\" style=\"position:relative;\"><a href=\"#set-up-aliases\" aria-label=\"set up aliases 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>Set Up Aliases</h3>\n<p>Add the following to <code class=\"language-text\">.bashrc</code> or similar.</p>\n<p>The example below shows aliases for archive extraction commands I use often.\nI also alias the commands I use frequently to start Python 2 and Wine containers, as well as scripts for launching applications.</p>\n<p>I think it is a good idea to configure various things to suit your preferences.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token builtin class-name\">alias</span> <span class=\"token assign-left variable\">tarbz2</span><span class=\"token operator\">=</span><span class=\"token string\">'tar -jxvf'</span>\n<span class=\"token builtin class-name\">alias</span> <span class=\"token assign-left variable\">targz</span><span class=\"token operator\">=</span><span class=\"token string\">'tar -zxvf'</span>\n<span class=\"token builtin class-name\">alias</span> <span class=\"token assign-left variable\">tarxz</span><span class=\"token operator\">=</span><span class=\"token string\">'tar -Jxvf'</span>\n\n<span class=\"token builtin class-name\">alias</span> <span class=\"token assign-left variable\">run_ftp_on_downloads</span><span class=\"token operator\">=</span><span class=\"token string\">'python3 /home/kali/Hacking/Tools/localftp.py'</span>\n\n<span class=\"token builtin class-name\">alias</span> <span class=\"token assign-left variable\">run_python2</span><span class=\"token operator\">=</span><span class=\"token string\">'docker run --net host --rm -it -v $PWD:/app python2 bash'</span>\n<span class=\"token builtin class-name\">alias</span> <span class=\"token assign-left variable\">run_wine</span><span class=\"token operator\">=</span><span class=\"token string\">'docker run --rm -it --user ubuntu -v $PWD:/usr/app wine32 bash'</span>\n<span class=\"token builtin class-name\">alias</span> <span class=\"token assign-left variable\">run_php</span><span class=\"token operator\">=</span><span class=\"token string\">'docker run --net host --rm -it -v $PWD:/root php bash'</span>\n\n<span class=\"token builtin class-name\">alias</span> <span class=\"token assign-left variable\">rsactftool</span><span class=\"token operator\">=</span><span class=\"token string\">'docker run --rm -it -v $PWD:/data kashiwabayuki/rsactftool:1.0'</span>\n<span class=\"token builtin class-name\">alias</span> <span class=\"token assign-left variable\">crackmapexec</span><span class=\"token operator\">=</span><span class=\"token string\">'docker run --net host --rm -it -v $PWD:/usr/src/crackmapexec kashiwabayuki/crackmapexec:1.0'</span>\n<span class=\"token builtin class-name\">alias</span> evil-winrm<span class=\"token operator\">=</span><span class=\"token string\">'docker run --rm -it -v $PWD:/data kashiwabayuki/evil-winrm:1.0'</span>\n<span class=\"token builtin class-name\">alias</span> <span class=\"token assign-left variable\">pwndocker</span><span class=\"token operator\">=</span><span class=\"token string\">\"docker run --rm -it -v <span class=\"token environment constant\">$PWD</span>:/ctf/work --cap-add=SYS_PTRACE -it kashiwabayuki/pwndocker:1.0\"</span>\n<span class=\"token builtin class-name\">alias</span> windows-exploit-suggester<span class=\"token operator\">=</span><span class=\"token string\">'docker run --rm -it -v $PWD:/exploit-suggester kashiwabayuki/windows-exploit-suggester:1.0'</span>\n<span class=\"token builtin class-name\">alias</span> <span class=\"token assign-left variable\">hackthebox</span><span class=\"token operator\">=</span><span class=\"token string\">'sudo openvpn ~/kash1064.ovpn > /dev/null 2>&amp;1 &amp;'</span>\n<span class=\"token builtin class-name\">alias</span> <span class=\"token assign-left variable\">pince</span><span class=\"token operator\">=</span><span class=\"token string\">'cd /home/parrot/Tools/PINCE &amp;&amp; sh PINCE.sh'</span></code></pre></div>\n<h3 id=\"change-the-menu-bar-position\" style=\"position:relative;\"><a href=\"#change-the-menu-bar-position\" aria-label=\"change the menu bar position 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>Change the Menu Bar Position</h3>\n<p>By default, right-click the menu bar at the bottom and click [Properties] to open the settings window.</p>\n<p>Here, changing the [Orientation] item will change the menu bar position.</p>\n<p>I usually set it to the left.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 395px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/210a7c8148c8fb907c92c040dd33cc0d/2cb6c/9b6cace8-94e0-5261-0824-1435140788ed.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: 113.75%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAXCAYAAAALHW+jAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEP0lEQVQ4y21V2XbiRhTkG5KXLDZgBtvghR2DDEJCCEkIJLHvm8cntsdzkpzMQ34hD3nJH1eqW+AZn+Shzu1uqUt1u25fRZJnJdTSZcQKtzhzbhDrXOPMvsJ5JodkKo/zVAapbBEXuSznOVxcl3CeLiCRLuEsVUQ8mSUySFzk8f2Pl4i01RL+0lykizqKOQOFXAv5bAMNo4N2b4ZWZwjDHsHuztDuTtByJ1CbNnIlFfmyjsKdLmOp2sJPURImpyXksnxBPLgzJIpKC4WqGDPemdzQQrHSRqFiylhUTJSUNkksCbFWqXVwEr9GxFlVUNcm8MZbOP4CbrCC2vJxr3tQjYBK+xIqUdM8VLmxUu8wum+o3HdQa/iIJm4RWe3KUJpTjBaP8EZbBNMH6NZAEmrmQKYromYOUW/6qAqyuvsOQp342En8BpE1CUt1bmj7qBk+6i2qMqmIsS7mhJybgVwT4/9DndkkaVKktVehGRPMdy9YbF+w3L9isXvFmIo1q4/eeI/98xe4gxUNmsJ0529odWbojXaw/TkUvYdsWUHkymqSkF+2Auj2AE1nhCbT1O0hGu1QqcaoWUd1g0MUivvynOs88wYzjCZziKTSFZgsj/n2E/zJTr4oNmjtAWpNDz4VeqMNqppDwzZUtuB8j06wpolLzLavGM4/8oM+YkmacpU1qKYPJ1jA8mZ8MJBkAkKd4YyZ2phn1JNjnepNd8ZMxjJ2+mvY3lxynMQvEElnLZKwRExhiEdjPG72ZLqCtMG0BPT2MFRuhvNjFKap8h0fqZwiCG3ovSms138w3n7GePmIyfoJFteEQkEkIErnOP4WYTZDnqWPm6wwpcgXnQDN4TOc/grd4ZppLJjSe5J3Y0FymGvSpBA/x3mG14U5ldgoVXQeLtWtfsF08wmT5ROaVrhBEIhi1w4Ov5GbR4VhLZ4mMiTUl7xaLlQuipJpdSYSwgDh8j3rS0RxxseC/6puGJpoheV0ekbCm/YMKrvNneqwSLcsiZ10LhjvWDI7WTbBZI/uaC2NOpbUUaH+LWEiS1MKTdkMqiR0eYb+5OEQN2wYG97tPfzpDr3h6t31O57jW8p0+vQ8T8JbhQ/oZm8LffQrU2XaLmvPHcEQsTtmX5zIaLHebG8R9kRJHH5AlSUUIJoqkzBTo2xK78xhBB9ZrBO0XdFMeW/ZUAVEozXlXKzPYLDQ5fVrD75GKoylKkLhPduSB6VmQWHaSqP7ZsR/oL8f32s9KFpXos559LwYptxk57AWn0MFVCjaWFlxcKfYhHNAOC5XGWuOPDtDVMRBsbg58UwDkSz/JcGSLevPv7F8/A0Pz3/Ii1/T2EU0XkeqCGMgITqz6N69YIkRTVtuXrB5+oIezznh/47IDyeX8q91Eruk7dc4/cA/H/9ksQ+3EvFklchzfHNYyyDGVh+vdBA1l4gpPVnQ4q/33WUN/wIzEjdbKYt82wAAAABJRU5ErkJggg=='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/210a7c8148c8fb907c92c040dd33cc0d/8ac56/9b6cace8-94e0-5261-0824-1435140788ed.webp 240w,\n/static/210a7c8148c8fb907c92c040dd33cc0d/c4642/9b6cace8-94e0-5261-0824-1435140788ed.webp 395w\"\n              sizes=\"(max-width: 395px) 100vw, 395px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/210a7c8148c8fb907c92c040dd33cc0d/8ff5a/9b6cace8-94e0-5261-0824-1435140788ed.png 240w,\n/static/210a7c8148c8fb907c92c040dd33cc0d/2cb6c/9b6cace8-94e0-5261-0824-1435140788ed.png 395w\"\n            sizes=\"(max-width: 395px) 100vw, 395px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/210a7c8148c8fb907c92c040dd33cc0d/2cb6c/9b6cace8-94e0-5261-0824-1435140788ed.png\"\n            alt=\"1b802911-76aa-4fef-63b0-386913a7ada2.png\"\n            title=\"1b802911-76aa-4fef-63b0-386913a7ada2.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=\"disable-the-automatic-update-window\" style=\"position:relative;\"><a href=\"#disable-the-automatic-update-window\" aria-label=\"disable the automatic update window 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>Disable the Automatic Update Window</h3>\n<p>The update confirmation window popping up on every startup is annoying, so I disable automatic updates.</p>\n<p>Open [Synaptic Package Manager] from [System] at the top.</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/3c2ceb6fe1f7e2a9048f57b233f0bed2/0b533/be0be7be-96ca-2fbc-2d94-a38caf6ae8ee.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: 55.41666666666667%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAALCAYAAAB/Ca1DAAAACXBIWXMAARlAAAEZQAGA43XUAAAC2ElEQVQozyWSS28bVRiGJ7ZjO8GXGJNecJKqTZ3UTYKT2s7YHl9nxh7bM2PHtzRx0xtQhRjBAkFUJKRQpC66rCoqJLpjy5+ALSBY8B/4GQ9f3cWrc3S+c573e3U+ZfTiN05/+Y/hD7/zjelwPDY5u/8Vp+Mp65tJPkrvsrW9TWDhPRTFS+j9KJGbEcIbS4QvL+EJ+PEGfGSyWcrlCkqxZqPbx9RbR+iaQUnTUXNVsnc08mqF1Wu3BOTD8+FtlEwfT/87/NMLfOoGc7EAvsQansurzC9vspjYRckLrH16wfj8DQPR8PxnOtNX6J++pH32mn33E27la6T2qtzW77Ld/YKU9TnrSZUbyTTrqYwoy3WRN7KCUjn8kuGzX3n407+cvPqT+z/+xb2Xf9N78Q/u8z/oPX3N5OkzDGNIp32I2xnTbh5QLNto1e67teJQrDoEw5ckRaFOuWFjtIborQOM9gC92UfNN0hnqjjDMU+mZ9QbI1ruRO6NZb2H3TvBco5xDx5IbUC20CQYvYJSMnXMTh/TuoveHmI6Y3GzyWs2u5ka9sdPeHzxPSXdmdWNzkhMh6gVi1y5iVptzfR2HwzHUcqNhlwaYFhj6fDdg0LFplCySWdrDB59xvTb59StPlbvmFb3iFZvIp84IF/tiNoC7Mz2C1GJXKy41JsjcR/NgLol7lqbfLFDJm/K2Rj76BGZokFWM9kvN8hpTQr1Nun9ElsyDXv5EjuZEouxBIoqxbo1kNgjGs6hxHkLHgm0hVZzubKckhhevKmQjE+cQGSLueAyvqWrBGIxPP4Q/lAUT3AJ30IEJScd1aRD05nQso+w5CfLZm8WpWR0WUkIMLZMMLmJf+s6QXcNX+Aq8/EbzEVvongFMi9m/gjxiAz/pKvhDHSGkwbFky7qoctOtsS2RNi9UyYhkQJfn8vg5ljcSeLNxAl9sEY4sUpgZZ/V5MYMNuddxHdtj/8BnId3h2pFmzoAAAAASUVORK5CYII='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/3c2ceb6fe1f7e2a9048f57b233f0bed2/8ac56/be0be7be-96ca-2fbc-2d94-a38caf6ae8ee.webp 240w,\n/static/3c2ceb6fe1f7e2a9048f57b233f0bed2/d3be9/be0be7be-96ca-2fbc-2d94-a38caf6ae8ee.webp 480w,\n/static/3c2ceb6fe1f7e2a9048f57b233f0bed2/b0a15/be0be7be-96ca-2fbc-2d94-a38caf6ae8ee.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/3c2ceb6fe1f7e2a9048f57b233f0bed2/8ff5a/be0be7be-96ca-2fbc-2d94-a38caf6ae8ee.png 240w,\n/static/3c2ceb6fe1f7e2a9048f57b233f0bed2/e85cb/be0be7be-96ca-2fbc-2d94-a38caf6ae8ee.png 480w,\n/static/3c2ceb6fe1f7e2a9048f57b233f0bed2/0b533/be0be7be-96ca-2fbc-2d94-a38caf6ae8ee.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/3c2ceb6fe1f7e2a9048f57b233f0bed2/0b533/be0be7be-96ca-2fbc-2d94-a38caf6ae8ee.png\"\n            alt=\"7c182d4a-4f62-423e-5e7d-9b1dde60c8a8.png\"\n            title=\"7c182d4a-4f62-423e-5e7d-9b1dde60c8a8.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>On first launch, proceed while leaving the checkbox for the startup window cleared, and the update confirmation window will stop popping up on future boots.</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/80779d5680115f50dc056aa34d245886/0b533/b7c20667-8215-e2dd-583e-a780d020ec60.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: 30%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAGCAYAAADDl76dAAAACXBIWXMAARlAAAEZQAGA43XUAAAA+ElEQVQY022Q626DMAyFeaNJk0YJgQChXBIKoaJdt5W9yF7+zHbHql1+fLLlxMfHjh6qE3aZg64XJOUMVR2hygCVOySEqYNQ7GcYO0mNUcYjLQbq7fCkGomPsUWk1w/46YrWX2DbBXV3Is6U32PVLJLv+2eBc/6XlRN0wYySp+aAKCH11r/AjVeBxf20wlHsxzeBa93hVYR5gLG0SU7utCN6iXF6i1GsvUwc5nf4sGIIN7G6P3+7KuojksxL0wY3c21jRzq6IIf8yJPZ1eaoofVZrHEXEeZVfgvchdyPYREXuCGvAnIb5BaySuq+VnJ/mv8TK/kcdNdPJs7Yb8XOZ6MAAAAASUVORK5CYII='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/80779d5680115f50dc056aa34d245886/8ac56/b7c20667-8215-e2dd-583e-a780d020ec60.webp 240w,\n/static/80779d5680115f50dc056aa34d245886/d3be9/b7c20667-8215-e2dd-583e-a780d020ec60.webp 480w,\n/static/80779d5680115f50dc056aa34d245886/b0a15/b7c20667-8215-e2dd-583e-a780d020ec60.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/80779d5680115f50dc056aa34d245886/8ff5a/b7c20667-8215-e2dd-583e-a780d020ec60.png 240w,\n/static/80779d5680115f50dc056aa34d245886/e85cb/b7c20667-8215-e2dd-583e-a780d020ec60.png 480w,\n/static/80779d5680115f50dc056aa34d245886/0b533/b7c20667-8215-e2dd-583e-a780d020ec60.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/80779d5680115f50dc056aa34d245886/0b533/b7c20667-8215-e2dd-583e-a780d020ec60.png\"\n            alt=\"58a81f40-c281-473b-117b-98e46e00401f.png\"\n            title=\"58a81f40-c281-473b-117b-98e46e00401f.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>After that, disable [System Updater] from [Startup Applications].</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/7d77d8f4c3971010e3debb1034eb5a62/0b533/acc20978-9bc4-5dce-eaa9-7225a5a01f86.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: 57.91666666666667%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAMCAYAAABiDJ37AAAACXBIWXMAARlAAAEZQAGA43XUAAACSUlEQVQoz1WTS2/aQBSF+UVN2zS8/cbjFx7b2MbGAUIMIVSthCJF6rbLSukjSv5VF11UTf7O6Z0hkGTxSYPMnHvPOXbjzYkGwRFx0mdoKQ7hoknnJp0F79smjpo63rYM+q8OxRxiGJUwnBSmm0GxIqiDWNJQ7QQKHQRt1UdHC0jQI0H3wIcu29FjeNe2MHBiVJMag6CAG06k0F60wbMzhOkZeL6AE5YS1YqlcM8IX9E3OI5JdFJe4uuXHzC8FC6voLPkWTBYXSGuN4hINK0uEJEwI9GBPz5M7lscpjeGG52iS8KKGWLg5fK5Rg73dqUgm28RzjdIi1oK5tNLsGEBm+yIjHQ2Qp8EbLIW0FAxoKP56JmRPO8RrqTgoNggmW1QLT6hmH+U5KdriuAcHm3kRhVdDhGPluBZfdiQ+Rk0GqY/sXfTsPg5NTbBqFwSNVmmPClXj7IRm6pkV2xosAymk6GlBgiCHJt6TTGUNHQiIxLWpaAZrxAVK0yXW5SLz+DjGozTZvGMNkhhuLm0L0oRW3SUIZycY3pdUY4FgmQqnYjMpWD56zfK2z8o7x5Q3T+guHtEevuIjIi+/0Xy8x/c6go9zaMtRujpITrWEKqfQLd3dndZP23or79htL1HQniXN/DWN3CfcC5uwAgznMvcxIYtjV5q5mE2ovbtndihGFGKbofQLR+KytDumq/o7FFFq1xebukcWeDjejmGSVF4VNo+Pynoj1eyreOuQ1+C+4IXvzs2leHDIgFxuUnFtHRq1RSF8edPj16d/1wWyMcQCYxfAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/7d77d8f4c3971010e3debb1034eb5a62/8ac56/acc20978-9bc4-5dce-eaa9-7225a5a01f86.webp 240w,\n/static/7d77d8f4c3971010e3debb1034eb5a62/d3be9/acc20978-9bc4-5dce-eaa9-7225a5a01f86.webp 480w,\n/static/7d77d8f4c3971010e3debb1034eb5a62/b0a15/acc20978-9bc4-5dce-eaa9-7225a5a01f86.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/7d77d8f4c3971010e3debb1034eb5a62/8ff5a/acc20978-9bc4-5dce-eaa9-7225a5a01f86.png 240w,\n/static/7d77d8f4c3971010e3debb1034eb5a62/e85cb/acc20978-9bc4-5dce-eaa9-7225a5a01f86.png 480w,\n/static/7d77d8f4c3971010e3debb1034eb5a62/0b533/acc20978-9bc4-5dce-eaa9-7225a5a01f86.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/7d77d8f4c3971010e3debb1034eb5a62/0b533/acc20978-9bc4-5dce-eaa9-7225a5a01f86.png\"\n            alt=\"image-20210522152103031.png\"\n            title=\"image-20210522152103031.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>Now no popup will appear when the system starts.</p>\n<h3 id=\"change-the-time-zone\" style=\"position:relative;\"><a href=\"#change-the-time-zone\" aria-label=\"change the time zone 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>Change the Time Zone</h3>\n<p>Click the clock in the upper right to open [Location], then click [Edit].</p>\n<p>Add Japan under [Locations].</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/ba3b3d76cebfbec2facdbeaa81ef3328/0b533/bcb53fde-1b03-8cde-e4f8-3fe1bed93fc0.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 59.583333333333336%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAMCAYAAABiDJ37AAAACXBIWXMAARlAAAEZQAGA43XUAAAC6UlEQVQoz22TS2hddRDGT6EuVNBAaImItBjUNKQ1aHLfj3PPPe+bk/t+5l6T4BPUJuSJVVwZKrZFaLsrtdJSulA3gSwquBHrY2MIBYNCF0mg1iTU0Ci4+zn3pEgLLj6YmcN8/29mvqOEel+irz9IT98AR44O0B9I8GJAoz9s0tsfk3qAnmNh+gZU4pqHPdzA8moYmSp2VuLhvdjyGoQTDsqgNEfjpg/TyaNqLvG4JXmaYFQnFMsQijoEIxaaXUB3K3sYKpN2yxJX0cwcZqYshBZK0KxTPHGVwtwlKu9fwZ2+hHn8IvbUFVL1eTQji+nVCSddVDOPnqlgCJnlVX1lhlPCbc3hjc4TjusoAVXGaM5g1CYw65PotUm08iTp6jRJb8xvdPMtIcyQdooMFVqSN3BzIzjZEflewWtNkx+bJZoUhQORNImUSyxpE1Md4v9B8lQGO9fEK476hKGES9IsEJF6KOlITZCQOGIQituyf61NqJOySiT1PEmj8DDu11SzSEQdojbyKuOvv0u+8ooPN98UpU05TpNq6w3ypSZKmzklDe1mtd18n0x9AD6x7O/zxRusrm1x89bvfPPzGsu/3Wb9zjZ/7uywvrnL6QtfypWjhigoPESo/g9hQgg/vnaDy99u8N3qJt//us3WvX/Y2P6bm2t3WVrZZvbTL1BelpHbimJalkQ69wCyQpTbI2vneoGzX/3ItR9uc33lDj/d2mFl4y+W13dZWv6Dr3+5xyefLcqVYwZOccw3a1wIzKG6v5e2USPqsL8OzS75D3ywcI73Fs4zceIUb00vMDF/kuNzJ3l75iOmPjxD47UplI6uZznQE6Cz6xBPdnbReaiXzqcOc/CZYzwXLdFzNEz3C4Ny9SxnTp/FFk9abvsBT4xvi+EdAmFL1lZGtaso+7qD7DsSQ3n6eZTHD6A88gTK/sfY/2iH2KMgDqhLc0lUNtBLb5LOjotX38GQCczcqPwxdfljajJZUyby+Bf0g+Ub4liD+QAAAABJRU5ErkJggg=='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/ba3b3d76cebfbec2facdbeaa81ef3328/8ac56/bcb53fde-1b03-8cde-e4f8-3fe1bed93fc0.webp 240w,\n/static/ba3b3d76cebfbec2facdbeaa81ef3328/d3be9/bcb53fde-1b03-8cde-e4f8-3fe1bed93fc0.webp 480w,\n/static/ba3b3d76cebfbec2facdbeaa81ef3328/b0a15/bcb53fde-1b03-8cde-e4f8-3fe1bed93fc0.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/ba3b3d76cebfbec2facdbeaa81ef3328/8ff5a/bcb53fde-1b03-8cde-e4f8-3fe1bed93fc0.png 240w,\n/static/ba3b3d76cebfbec2facdbeaa81ef3328/e85cb/bcb53fde-1b03-8cde-e4f8-3fe1bed93fc0.png 480w,\n/static/ba3b3d76cebfbec2facdbeaa81ef3328/0b533/bcb53fde-1b03-8cde-e4f8-3fe1bed93fc0.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/ba3b3d76cebfbec2facdbeaa81ef3328/0b533/bcb53fde-1b03-8cde-e4f8-3fe1bed93fc0.png\"\n            alt=\"image-20210521193540448.png\"\n            title=\"image-20210521193540448.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>Next, click the [Set …] button next to [Tokyo] to change the time zone.</p>\n<p>This applies the time setting.</p>\n<h3 id=\"adjust-the-terminal-settings\" style=\"position:relative;\"><a href=\"#adjust-the-terminal-settings\" aria-label=\"adjust the terminal settings 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>Adjust the Terminal Settings</h3>\n<p>In Parrot, the default terminal is MATE.</p>\n<p>This is a matter of preference, but I tweak these settings a little.</p>\n<p>Open the settings list from [Edit] > [Profiles] in the terminal, and edit the profile there.</p>\n<p>For now, I changed the color scheme to System theme and adjusted the background transparency as well.</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/f247aa749fb853e7d21cc61a3cee6160/0b533/62940079-5071-60ba-3061-679d42ee7ae5.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: 73.33333333333334%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAPCAYAAADkmO9VAAAACXBIWXMAARlAAAEZQAGA43XUAAAC6UlEQVQ4y1VUaU8TURTtHxJR6UZnaWfft25OaauiIFijCGoAUTSoITHREBP5YPSvHs97HRv9cPK2eeeec+99U2urDjZaXdxq6qg3NPRaNucmbhMbEgbqmyZUI4bSDdHRA44R71iot8VdG3UBObdQu7FWx831OtaJm7faUKwcdjiC6Q84jiWsYAgvnSDIptB5rhopFOLvXDMz6HbBYDFqycFPmHtXMBfXUO6ewoxKFLMFivE2ivIR8nIb/ckjpKMHCPOZJNcsEjg5SfJqXK6VHgmD+Qms8iXs6TG0ZIcKM9jxRKq0wiEsfwQnGqPnUY2VLkkqoq6Tr4i7VCgJFd2DgNbz0VZsqGYi7Xbdgns5NqYWmmMXljOC4fdpjxadAYxwIr8z/SF6bl+SS0LhXbNEpD42mWyVF6yAOaQ1wxtAcRNimS9hTdjVKpVyLtcZBZDQkITLAzG2WUE7GiEspvIj3akuMEhXrF3xXSqxIiNUQioUhBoPVSuRBC3VZ95GyO9uI8i3EA3miPpTxOP7sBnEj7fgJjOZY5OqNbrrUohh5tJZpxeiJvLQY74Mr8/+imWkmETxYMZijKBSZeSkyFUbSuogTE2EsYeWR2KLFWfRGkmJ4eQheTLUvGSLyUzZmC4b05FqhW1RYWGzaQYoWxrO7tRhH7ZxcLiJ54sAnfIt5sk23PlTrB0d4+LiEjFd1BYvTrG7eIW9p68xme9TdizbQ1iQuWW7RAxSGgHcWYzxPMNowoDFLrJ4Cnf4AMrsMab39mDSZe3i8grnn77i8usPPDs6k5X+r4J8BR2OLVZZ0XO0tIzFY0Dmq8MWUylA10O0eW+TT7N29uELTs8v8Z6k+8+OpcJV8/6D7qqZs6qhi2qvWM6dqrFP3n3Gqzcfcf7xC3aeHMpN0S6iwZXqzSoGlfyHtEJSnS1fkCT8cf0N379/w+9fV3h/fsJqix9BSWsBmh0fTcWr4FdrHw3VXc6JRsdlCiK2Uyk75Q+GmDaVuvRGIgAAAABJRU5ErkJggg=='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/f247aa749fb853e7d21cc61a3cee6160/8ac56/62940079-5071-60ba-3061-679d42ee7ae5.webp 240w,\n/static/f247aa749fb853e7d21cc61a3cee6160/d3be9/62940079-5071-60ba-3061-679d42ee7ae5.webp 480w,\n/static/f247aa749fb853e7d21cc61a3cee6160/b0a15/62940079-5071-60ba-3061-679d42ee7ae5.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/f247aa749fb853e7d21cc61a3cee6160/8ff5a/62940079-5071-60ba-3061-679d42ee7ae5.png 240w,\n/static/f247aa749fb853e7d21cc61a3cee6160/e85cb/62940079-5071-60ba-3061-679d42ee7ae5.png 480w,\n/static/f247aa749fb853e7d21cc61a3cee6160/0b533/62940079-5071-60ba-3061-679d42ee7ae5.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/f247aa749fb853e7d21cc61a3cee6160/0b533/62940079-5071-60ba-3061-679d42ee7ae5.png\"\n            alt=\"7da80db2-bd8e-5fc8-fd45-0c4833ce0476.png\"\n            title=\"7da80db2-bd8e-5fc8-fd45-0c4833ce0476.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>You can also change shortcut assignments from [Keyboard Shortcuts].</p>\n<p>I edit them to suit my taste.</p>\n<h3 id=\"change-the-os-shortcut-keys\" style=\"position:relative;\"><a href=\"#change-the-os-shortcut-keys\" aria-label=\"change the os shortcut keys 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>Change the OS Shortcut Keys</h3>\n<p>By default, the shortcut for launching the terminal is different from Ubuntu and a bit awkward to use, so I open [Keyboard Shortcuts] and add a shortcut for [terminal].</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/4a2fe476d47b8acb9164a58c2e32e635/0b533/416856a6-f6ff-c7f1-0050-3e9f87421090.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: 79.58333333333334%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAQCAYAAAAWGF8bAAAACXBIWXMAARlAAAEZQAGA43XUAAACOklEQVQ4y41Uy3LaQBDkT3KyHScIMEZCIAkJgR4gCRBvAnZCnGsOqcrn5F8702skJ5Rd5tA1u9rd3p5Rz1ZMQ4eTtKDVDVzX2vgouCG0Nq41A5/vumiafTTafdy1PVSblvp+I7iq6ioSt/UOPlxpqHjBBON8g05vLEieo5vA8lJ0BVY/gzOYwfGnEqew/Ylad4c5omyL3nCm5lz71Oiiwkmc7YX0gPFsj3TxiCDZqI1ukKv4GrhnujoiyR/ghXP0owW0poOKYUWIJju1OFt/x3R9hB8v1Y3/okeVjEJGlcPxWu0nIb+TVGvaqLSduCTMN0+ycaUOvKWMIMEL4eEVwmwni0dF6seLUsl7hMwmW37FYLR6ITRspvwF6fxB1aEkG7xNyAyCdCsCvqlalgrvhdCUv5oI2Xh2QJhuLiLlOutMZUWNFWHLJeEIo+keE7mNteTCJYS8mOdonf9qyJTDUw2p8L36lSlLqvn2SZWKaktC0xkpwsKkvZNFSpucxzPbUKndn6hYpbFJGIt0yr9EXZEyFc53P5Q6W775csn98hGVVmcIX9h5Y9FqCt5ZFNh+plqQYyqKxR1emMs8lZadSPqZEC5/Qv/1B6YVKPvE8mNCsQQVRGq8UWOiaDGSsC2L2BEva+0YudsSY0dbuPvf6LE7uCmYq8bn+PnQvEy1eCi6opoPCed8C5iZI+cMQ3q5ZfoI4hymO0ZNfFQn9FMU1Iq57kEXR/Slk7hXt0IhSiRG6EgcSMluGzb+AkuAQ9K7Vvv+AAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/4a2fe476d47b8acb9164a58c2e32e635/8ac56/416856a6-f6ff-c7f1-0050-3e9f87421090.webp 240w,\n/static/4a2fe476d47b8acb9164a58c2e32e635/d3be9/416856a6-f6ff-c7f1-0050-3e9f87421090.webp 480w,\n/static/4a2fe476d47b8acb9164a58c2e32e635/b0a15/416856a6-f6ff-c7f1-0050-3e9f87421090.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/4a2fe476d47b8acb9164a58c2e32e635/8ff5a/416856a6-f6ff-c7f1-0050-3e9f87421090.png 240w,\n/static/4a2fe476d47b8acb9164a58c2e32e635/e85cb/416856a6-f6ff-c7f1-0050-3e9f87421090.png 480w,\n/static/4a2fe476d47b8acb9164a58c2e32e635/0b533/416856a6-f6ff-c7f1-0050-3e9f87421090.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/4a2fe476d47b8acb9164a58c2e32e635/0b533/416856a6-f6ff-c7f1-0050-3e9f87421090.png\"\n            alt=\"image.png\"\n            title=\"image.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=\"register-an-ssh-key-with-github\" style=\"position:relative;\"><a href=\"#register-an-ssh-key-with-github\" aria-label=\"register an ssh key with github 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>Register an SSH Key with GitHub</h3>\n<p>Register the public key created by <code class=\"language-text\">ssh-keygen</code> with GitHub.</p>\n<p>For details, see <a href=\"https://docs.github.com/en/github/authenticating-to-github/connecting-to-github-with-ssh\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Connecting to GitHub with SSH - GitHub Docs</a>.</p>\n<h3 id=\"disable-automatic-sleep\" style=\"position:relative;\"><a href=\"#disable-automatic-sleep\" aria-label=\"disable automatic sleep 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>Disable Automatic Sleep</h3>\n<p>Open [Power Management Preferences] and disable automatic sleep for the display.</p>\n<p>By default, it is set to 30 minutes.</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/cb8688eb751142f0e09dbfda3378cadc/0b533/33facbea-b0be-cd76-1b8e-c5d0ea7c9ef1.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: 67.5%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAOCAYAAAAvxDzwAAAACXBIWXMAARlAAAEZQAGA43XUAAAB2ElEQVQ4y4WU+3KaUBDGeZfOZJpWwaggIHcIN1HAaxvTppm+/zN83V2UapLaP36ze/bA2W/3XJTRcIZPX3XcMUMDdwMD95qFh1mI0SzA2IpOfoixGUnss2biy8jGcOJiMHEwGM/F3qsmFC9cwg4r2EEFw8mFmZvD9ErB8suTX8D0O6vPM0ztxyv0eQp16kGpNi9YtD9Q1Ec40Qpe0sChJDO36JEFL3zLX7zD9iuopF6pd6+od78QpC2xFsJsI0Q5WcJ/bMluJcb+h9B/GiuM0w3y+gnVulNZNM+k+Bllw/D4KIuW7U9kqyd49H2QbXv8lBLlO0Gd0ILt4TeWVPacynzPStrgxnXvc0t47MbNBbXEpYectd6/9gpLVkewMlaZLr/BpY8X6xdSeBRFAanpyUhdsRdU2nWFs/rcv2zd9/AS7g8r8Hu/kQQ9p7GXtNB0H8pZ8i3+ltn5Hlvhwqe4LMiZ+w//wdV8/GY+PsfarocelXEOuqest+x1RV3J3rnkqZRcd7v3H5W31Lt8EgjNiKAk5YE2ZCPH5KMbcMXpKp7HfGv4vyDli7CFZiV0bJbfZYcnNBjpAUZG+AZ6EAyKmzTvLPBg5vRYRPRQxJhQjK9jWO6RLA6y4B+Yf/VRkJh/pAAAAABJRU5ErkJggg=='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/cb8688eb751142f0e09dbfda3378cadc/8ac56/33facbea-b0be-cd76-1b8e-c5d0ea7c9ef1.webp 240w,\n/static/cb8688eb751142f0e09dbfda3378cadc/d3be9/33facbea-b0be-cd76-1b8e-c5d0ea7c9ef1.webp 480w,\n/static/cb8688eb751142f0e09dbfda3378cadc/b0a15/33facbea-b0be-cd76-1b8e-c5d0ea7c9ef1.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/cb8688eb751142f0e09dbfda3378cadc/8ff5a/33facbea-b0be-cd76-1b8e-c5d0ea7c9ef1.png 240w,\n/static/cb8688eb751142f0e09dbfda3378cadc/e85cb/33facbea-b0be-cd76-1b8e-c5d0ea7c9ef1.png 480w,\n/static/cb8688eb751142f0e09dbfda3378cadc/0b533/33facbea-b0be-cd76-1b8e-c5d0ea7c9ef1.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/cb8688eb751142f0e09dbfda3378cadc/0b533/33facbea-b0be-cd76-1b8e-c5d0ea7c9ef1.png\"\n            alt=\"3c912975-aaa2-4be4-03c3-a9c52f0fd83c.png\"\n            title=\"3c912975-aaa2-4be4-03c3-a9c52f0fd83c.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<h2 id=\"install-various-tools\" style=\"position:relative;\"><a href=\"#install-various-tools\" aria-label=\"install various tools 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>Install Various Tools</h2>\n<p>Here is a summary of the tools I personally install.</p>\n<p>It is not a problem if you skip them.</p>\n<p><em>I will update the list of tools as needed.</em></p>\n<h3 id=\"google-chrome\" style=\"position:relative;\"><a href=\"#google-chrome\" aria-label=\"google chrome 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>Google Chrome</h3>\n<p>Download the deb package from <a href=\"https://www.google.com/chrome/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Google Chrome - Download the Fast, Secure Browser from Google</a>.</p>\n<p>You can install Chrome with the <code class=\"language-text\">sudo dpkg -i xxx.deb</code> command.</p>\n<h3 id=\"vscode\" style=\"position:relative;\"><a href=\"#vscode\" aria-label=\"vscode 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>VSCode</h3>\n<p>Download the deb package from <a href=\"https://azure.microsoft.com/ja-jp/products/visual-studio-code/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Visual Studio Code - Code Editor | Microsoft Azure</a>.</p>\n<p>You can install it with the <code class=\"language-text\">sudo dpkg -i xxx.deb</code> command.</p>\n<p>Install whatever extensions you like.</p>\n<p>I think it is a good idea to disable the Symlinks setting, because it helps prevent CPU resources from being consumed at odd times.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 479px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/c05f550deb2c93933d1390d66b38893a/a9b70/6320dcdd-3136-795b-4f00-b61fdb9590f9.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: 19.583333333333332%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAECAYAAACOXx+WAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAmUlEQVQY03XPQQ6DIBQEUK5iAYEIiAISu+uCtN7/QFNETGuTLl7mw2L4kMEYLCkhxliltEAphb4XEOLj97yTUkIqeWRDhrDgkZ/IOWPbXsWG+7pinqf6QAgBvogx1Llq96Yso7W+IFQoaDtitBbT5OCcq0Xe+1Z4OH8QW+E+W2O/yo5ycus69JyDMQZGWU1KaXHmf5xxcH71BhEqehUETXEnAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/c05f550deb2c93933d1390d66b38893a/8ac56/6320dcdd-3136-795b-4f00-b61fdb9590f9.webp 240w,\n/static/c05f550deb2c93933d1390d66b38893a/162c5/6320dcdd-3136-795b-4f00-b61fdb9590f9.webp 479w\"\n              sizes=\"(max-width: 479px) 100vw, 479px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/c05f550deb2c93933d1390d66b38893a/8ff5a/6320dcdd-3136-795b-4f00-b61fdb9590f9.png 240w,\n/static/c05f550deb2c93933d1390d66b38893a/a9b70/6320dcdd-3136-795b-4f00-b61fdb9590f9.png 479w\"\n            sizes=\"(max-width: 479px) 100vw, 479px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/c05f550deb2c93933d1390d66b38893a/a9b70/6320dcdd-3136-795b-4f00-b61fdb9590f9.png\"\n            alt=\"image-20210522151845462.png\"\n            title=\"image-20210522151845462.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>There are also several other settings that can affect computer resource usage, such as <code class=\"language-text\">files.watcherExclude</code> and the memory limit, so tune them as needed.</p>\n<h3 id=\"docker\" style=\"position:relative;\"><a href=\"#docker\" aria-label=\"docker 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>Docker</h3>\n<p>You can install it in almost the same way as on Ubuntu.</p>\n<p>Refer to <a href=\"https://docs.docker.com/engine/install/ubuntu/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Install Docker Engine on Ubuntu | Docker Documentation</a>.</p>\n<p>However, the command for obtaining the release version does not work correctly on Parrot, so this time I specify <code class=\"language-text\">focal</code> explicitly.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token builtin class-name\">echo</span> <span class=\"token string\">\"deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu focal stable\"</span> <span class=\"token operator\">|</span> <span class=\"token function\">sudo</span> <span class=\"token function\">tee</span> /etc/apt/sources.list.d/docker.list <span class=\"token operator\">></span> /dev/null</code></pre></div>\n<p>After Docker is installed, run the following commands so that you can use it without <code class=\"language-text\">sudo</code>.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">sudo</span> gpasswd -a <span class=\"token environment constant\">$USER</span> <span class=\"token function\">docker</span>\n<span class=\"token function\">sudo</span> <span class=\"token function\">service</span> <span class=\"token function\">docker</span> start --enable</code></pre></div>\n<p>That completes the setup.</p>\n<p>I will describe the Docker images and commands I use often later.</p>\n<h3 id=\"jdk\" style=\"position:relative;\"><a href=\"#jdk\" aria-label=\"jdk 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>JDK</h3>\n<p>Place the extracted files in an appropriate directory.</p>\n<p>Next, add it to <code class=\"language-text\">PATH</code>.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">sudo</span> <span class=\"token function\">mv</span> jdk-11.0.11+9 /usr/local/lib/jdk-11.0.11+9\n<span class=\"token builtin class-name\">echo</span> <span class=\"token string\">\"PATH=<span class=\"token environment constant\">$PATH</span>:/usr/local/lib/jdk-11.0.11+9/bin\"</span> <span class=\"token operator\">>></span> ~/.bashrc</code></pre></div>\n<h3 id=\"ghidra\" style=\"position:relative;\"><a href=\"#ghidra\" aria-label=\"ghidra 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>Ghidra</h3>\n<p>The familiar powerhouse tool.</p>\n<p>These days, everyone seems to use Ghidra in Rev write-ups.</p>\n<p>Download and extract Ghidra from <a href=\"https://ghidra-sre.org/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Ghidra</a>.</p>\n<p>Place the extracted files in a suitable folder.</p>\n<p>To be able to launch it from anywhere, I think it is a good idea to add the folder containing <code class=\"language-text\">ghidraRun</code> to <code class=\"language-text\">PATH</code>.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token builtin class-name\">echo</span> <span class=\"token string\">\"PATH=<span class=\"token environment constant\">$PATH</span>:/home/parrot/Tools/Ghidra/\"</span> <span class=\"token operator\">>></span> ~/.bashrc</code></pre></div>\n<p>By the way, with Ghidra there are cases where you may want to use the debugger feature, which has not yet been implemented in the major release version.</p>\n<p>In that case, build it yourself from the source code on Ghidra’s Debugger branch.</p>\n<p>I will explain how to build it later, so please refer to that if you want to try it.</p>\n<h3 id=\"universal-radio-hacker-urh\" style=\"position:relative;\"><a href=\"#universal-radio-hacker-urh\" aria-label=\"universal radio hacker urh 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>Universal Radio Hacker (URH)</h3>\n<p>This is something I occasionally use when doing Misc or Rev challenges.</p>\n<p>Create a virtual environment in an appropriate directory.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">pipenv <span class=\"token function\">install</span>\npipenv shell\npip <span class=\"token function\">install</span> urh</code></pre></div>\n<h3 id=\"angr\" style=\"position:relative;\"><a href=\"#angr\" aria-label=\"angr 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>angr</h3>\n<p>A god-tier tool for Rev challenges.</p>\n<p>I wrote about how to use it in quite some detail in <a href=\"https://qiita.com/kash1064/items/f942a5d1af1579808622\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">A summary of solving Rev challenges with symbolic execution using angr [WaniCTF2021]</a>.</p>\n<p>Create a virtual environment in an appropriate directory.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">pipenv <span class=\"token function\">install</span>\npipenv shell\npip <span class=\"token function\">install</span> angr</code></pre></div>\n<h3 id=\"pwntools\" style=\"position:relative;\"><a href=\"#pwntools\" aria-label=\"pwntools 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>pwntools</h3>\n<p>This library is like an all-you-can-use set of tools for CTFs.</p>\n<p>It does not conflict much with other things, so I install it globally.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">pip <span class=\"token function\">install</span> pwntools</code></pre></div>\n<h3 id=\"pycryptodome\" style=\"position:relative;\"><a href=\"#pycryptodome\" aria-label=\"pycryptodome 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>PyCryptodome</h3>\n<p>A Python library that lets you use cryptographic functions.</p>\n<p>This can be used without conflicting with other packages, so I just install it globally.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">pip <span class=\"token function\">install</span> pycryptodome</code></pre></div>\n<h3 id=\"ciphey\" style=\"position:relative;\"><a href=\"#ciphey\" aria-label=\"ciphey 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>Ciphey</h3>\n<p>It can crack encrypted text pretty nicely.</p>\n<p>Create a virtual environment in an appropriate directory.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">pipenv <span class=\"token function\">install</span>\npipenv shell\npython3 -m pip <span class=\"token function\">install</span> ciphey --upgrade</code></pre></div>\n<h3 id=\"rsactftool\" style=\"position:relative;\"><a href=\"#rsactftool\" aria-label=\"rsactftool 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>RSACTFTool</h3>\n<p>A tool that is useful when you run into challenges involving weak RSA.</p>\n<p>Reference: <a href=\"https://github.com/Ganapati/RsaCtfTool\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Ganapati/RsaCtfTool: RSA attack tool (mainly for ctf) - retreive private key from weak public key and/or uncipher data</a></p>\n<p>Because the dependencies are complicated, I basically build it in Docker.</p>\n<div class=\"gatsby-highlight\" data-language=\"dockerfile\"><pre class=\"language-dockerfile\"><code class=\"language-dockerfile\"><span class=\"token instruction\"><span class=\"token keyword\">FROM</span> alpine:3.13</span>\n<span class=\"token instruction\"><span class=\"token keyword\">RUN</span> apk update &amp;&amp; <span class=\"token operator\">\\</span>\n    apk add --no-cache \\ </span>\n    gmp-dev mpfr-dev mpc1-dev python3 python3-dev py3-pip gcc musl-dev openssl-dev libffi-dev py3-wheel git gcc g++ make cmake git\n<span class=\"token instruction\"><span class=\"token keyword\">WORKDIR</span> /opt</span>\n<span class=\"token instruction\"><span class=\"token keyword\">RUN</span> git clone https://github.com/Ganapati/RsaCtfTool.git</span>\n<span class=\"token instruction\"><span class=\"token keyword\">WORKDIR</span> /opt/RsaCtfTool</span>\n<span class=\"token instruction\"><span class=\"token keyword\">RUN</span> pip install -r <span class=\"token string\">\"requirements.txt\"</span></span>\n<span class=\"token instruction\"><span class=\"token keyword\">WORKDIR</span> /data</span>\n<span class=\"token instruction\"><span class=\"token keyword\">ENTRYPOINT</span> [<span class=\"token string\">\"/opt/RsaCtfTool/RsaCtfTool.py\"</span>]</span></code></pre></div>\n<p>Building the container image takes quite a while.</p>\n<p>It is a hassle to rebuild it every time I set up my environment, so I uploaded it to Docker Hub as my own image.</p>\n<p>You can pull it like this.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">docker</span> pull kashiwabayuki/rsactftool:1.0</code></pre></div>\n<p>Since running the full command every time is also annoying, I register an alias too.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token builtin class-name\">alias</span> <span class=\"token assign-left variable\">rsactftool</span><span class=\"token operator\">=</span><span class=\"token string\">'docker run --rm -it -v $PWD:/data kashiwabayuki/rsactftool:1.0'</span></code></pre></div>\n<h3 id=\"postman\" style=\"position:relative;\"><a href=\"#postman\" aria-label=\"postman 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>Postman</h3>\n<p>I only found out about it recently, so I do not use it much yet, but it is a great tool for hitting APIs.</p>\n<p>Extract the files downloaded from <a href=\"https://www.postman.com/downloads/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Download Postman | Try Postman for Free</a>.</p>\n<p>Once extracted, you can use it.</p>\n<p>Add it to <code class=\"language-text\">PATH</code> as well.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token builtin class-name\">echo</span> <span class=\"token string\">\"PATH=<span class=\"token environment constant\">$PATH</span>:/home/parrot/Tools/Postman\"</span> <span class=\"token operator\">>></span> ~/.bashrc</code></pre></div>\n<h3 id=\"gimp\" style=\"position:relative;\"><a href=\"#gimp\" aria-label=\"gimp 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>GIMP</h3>\n<p>I sometimes use it for steganography.</p>\n<p>It is installed by default.</p>\n<h3 id=\"copyq\" style=\"position:relative;\"><a href=\"#copyq\" aria-label=\"copyq 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>CopyQ</h3>\n<p>A clipboard management tool.</p>\n<p>Being able to bring up the recent clipboard history with <code class=\"language-text\">Ctrl + ;</code> and similar shortcuts turns out to be surprisingly useful.</p>\n<p>Install it with apt.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">sudo</span> <span class=\"token function\">apt</span> <span class=\"token function\">install</span> copyq -y</code></pre></div>\n<p>By the way, after rebooting, it will not work unless you launch CopyQ each time.</p>\n<p>There probably is a setting for automatic startup, but I could not be bothered to look for it, so I configured it to launch every time from my profile.</p>\n<h3 id=\"eclipse\" style=\"position:relative;\"><a href=\"#eclipse\" aria-label=\"eclipse 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>Eclipse</h3>\n<p>Download the Linux package from <a href=\"https://www.eclipse.org/downloads/download.php?file=/oomph/epp/2021-03/R/eclipse-inst-jre-linux64.tar.gz\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Eclipse downloads - Select a mirror | The Eclipse Foundation</a>.</p>\n<p>Once extracted, you can use it.</p>\n<p>Add it to <code class=\"language-text\">PATH</code> as well.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token builtin class-name\">echo</span> <span class=\"token string\">\"PATH=<span class=\"token environment constant\">$PATH</span>:/home/parrot/Tools/eclipse\"</span> <span class=\"token operator\">>></span> ~/.bashrc</code></pre></div>\n<h3 id=\"wine\" style=\"position:relative;\"><a href=\"#wine\" aria-label=\"wine 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>Wine</h3>\n<p>Install Wine and MinGW.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">sudo</span> <span class=\"token function\">apt</span> <span class=\"token function\">install</span> wine mingw-w64 mingw-w64-common mingw-w64-i686-dev mingw-w64-tools mingw-w64-x86-64-dev -y</code></pre></div>\n<p>I do not really want to use Wine much, so this is only for light verification.</p>\n<p>For PE binary analysis and similar work, I prepare a separate Windows machine.</p>\n<h3 id=\"gdb-peda\" style=\"position:relative;\"><a href=\"#gdb-peda\" aria-label=\"gdb peda 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>GDB-PEDA</h3>\n<p>Clone GDB-PEDA directly under the Tools directory and configure it.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">git</span> clone https://github.com/longld/peda.git ~/Tools/peda\n<span class=\"token builtin class-name\">echo</span> <span class=\"token string\">\"source ~/Tools/peda/peda.py\"</span> <span class=\"token operator\">>></span> ~/.gdbinit</code></pre></div>\n<h3 id=\"pwndbg\" style=\"position:relative;\"><a href=\"#pwndbg\" aria-label=\"pwndbg 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>Pwndbg</h3>\n<p>Handy when doing heap challenges.</p>\n<p>Reference: <a href=\"https://github.com/pwndbg/pwndbg\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">GitHub - pwndbg/pwndbg: Exploit Development and Reverse Engineering with GDB Made Easy</a></p>\n<h3 id=\"rustscan\" style=\"position:relative;\"><a href=\"#rustscan\" aria-label=\"rustscan 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>RustScan</h3>\n<p>Download the deb package from <a href=\"https://github.com/RustScan/RustScan/releases\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Releases · RustScan/RustScan · GitHub</a>.</p>\n<p>You can install it with the <code class=\"language-text\">sudo dpkg -i xxx.deb</code> command.</p>\n<h3 id=\"fzf\" style=\"position:relative;\"><a href=\"#fzf\" aria-label=\"fzf 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>FZF</h3>\n<p>Something that makes file searching easier.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">git</span> clone --depth <span class=\"token number\">1</span> https://github.com/junegunn/fzf.git ~/Tools/.fzf\n~/Tools/.fzf/install</code></pre></div>\n<h3 id=\"gobusterferoxbuster\" style=\"position:relative;\"><a href=\"#gobusterferoxbuster\" aria-label=\"gobusterferoxbuster 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>Gobuster/Feroxbuster</h3>\n<p>Gobuster is available by default.</p>\n<p>If you want Feroxbuster, I think it is worth installing.</p>\n<p>You can download the deb package like this.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">wget</span> https://github.com/epi052/feroxbuster/releases/latest/download/feroxbuster_amd64.deb.zip\n<span class=\"token function\">unzip</span> feroxbuster_amd64.deb.zip</code></pre></div>\n<p>Install it with the <code class=\"language-text\">sudo dpkg -i xxx.deb</code> command.</p>\n<p>While you are at it, unpack <code class=\"language-text\">rockyou.txt</code> in advance too.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">sudo</span> gunzip /usr/share/wordlists/rockyou.txt.gz</code></pre></div>\n<h3 id=\"crackmapexec\" style=\"position:relative;\"><a href=\"#crackmapexec\" aria-label=\"crackmapexec 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>CrackMapExec</h3>\n<p>Used for hacking Windows machines.</p>\n<p>Reference: <a href=\"https://github.com/byt3bl33d3r/CrackMapExec\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">byt3bl33d3r/CrackMapExec: A swiss army knife for pentesting networks</a></p>\n<p>Because it has many dependencies, I build the environment as a Docker image.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">git</span> clone https://github.com/byt3bl33d3r/CrackMapExec.git\n<span class=\"token builtin class-name\">cd</span> CrackMapExec/\n<span class=\"token function\">docker</span> build -t crackmapexec <span class=\"token builtin class-name\">.</span></code></pre></div>\n<p>It is a hassle to build it every time I set up my environment, so I uploaded it to Docker Hub as my own image.</p>\n<p>You can pull it like this.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">docker</span> pull kashiwabayuki/crackmapexec:1.0</code></pre></div>\n<p>To make it easier to use, add an alias as well.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token builtin class-name\">alias</span> <span class=\"token assign-left variable\">crackmapexec</span><span class=\"token operator\">=</span><span class=\"token string\">'docker run --rm -it -v $PWD:/usr/src/crackmapexec kashiwabayuki/crackmapexec:1.0'</span></code></pre></div>\n<h3 id=\"evil-winrm\" style=\"position:relative;\"><a href=\"#evil-winrm\" aria-label=\"evil winrm 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>Evil-WinRM</h3>\n<p>A handy shell for remotely connecting to Windows machines.</p>\n<p>Reference: <a href=\"https://github.com/Hackplayers/evil-winrm\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Hackplayers/evil-winrm: The ultimate WinRM shell for hacking/pentesting</a></p>\n<p>For peace of mind, I build it from its Dockerfile.</p>\n<div class=\"gatsby-highlight\" data-language=\"dockerfile\"><pre class=\"language-dockerfile\"><code class=\"language-dockerfile\"><span class=\"token comment\"># Evil-WinRM Dockerfile</span>\n\n<span class=\"token comment\"># Base image</span>\n<span class=\"token instruction\"><span class=\"token keyword\">FROM</span> ruby:latest</span>\n\n<span class=\"token comment\"># Credits &amp; Data</span>\n<span class=\"token instruction\"><span class=\"token keyword\">LABEL</span> <span class=\"token operator\">\\</span>\n    name=<span class=\"token string\">\"Evil-WinRM\"</span> <span class=\"token operator\">\\</span>\n    author=<span class=\"token string\">\"CyberVaca &lt;cybervaca@gmail.com>\"</span> <span class=\"token operator\">\\</span>\n    maintainer=<span class=\"token string\">\"OscarAkaElvis &lt;oscar.alfonso.diaz@gmail.com>\"</span> <span class=\"token operator\">\\</span>\n    description=<span class=\"token string\">\"The ultimate WinRM shell for hacking/pentesting\"</span></span>\n\n<span class=\"token comment\">#Env vars</span>\n<span class=\"token instruction\"><span class=\"token keyword\">ENV</span> EVILWINRM_URL=<span class=\"token string\">\"https://github.com/Hackplayers/evil-winrm.git\"</span></span>\n\n<span class=\"token comment\"># Install dependencies</span>\n<span class=\"token instruction\"><span class=\"token keyword\">RUN</span> gem install <span class=\"token operator\">\\</span>\n    winrm <span class=\"token operator\">\\</span>\n    winrm-fs <span class=\"token operator\">\\</span>\n    stringio <span class=\"token operator\">\\</span>\n    logger <span class=\"token operator\">\\</span>\n    fileutils</span>\n\n<span class=\"token comment\"># Create volume for powershell scripts</span>\n<span class=\"token instruction\"><span class=\"token keyword\">RUN</span> mkdir /ps1_scripts</span>\n<span class=\"token instruction\"><span class=\"token keyword\">VOLUME</span> /ps1_scripts</span>\n\n<span class=\"token comment\"># Create volume for executable files</span>\n<span class=\"token instruction\"><span class=\"token keyword\">RUN</span> mkdir /exe_files</span>\n<span class=\"token instruction\"><span class=\"token keyword\">VOLUME</span> /exe_files</span>\n\n<span class=\"token comment\"># Create volume for data (upload/download)</span>\n<span class=\"token instruction\"><span class=\"token keyword\">RUN</span> mkdir /data</span>\n<span class=\"token instruction\"><span class=\"token keyword\">VOLUME</span> /data</span>\n\n<span class=\"token comment\"># Set workdir</span>\n<span class=\"token instruction\"><span class=\"token keyword\">WORKDIR</span> /opt/</span>\n\n<span class=\"token comment\">#Evil-WinRM install method 1 (only one method can be used, other must be commented)</span>\n<span class=\"token comment\">#Install Evil-WinRM (Docker Hub automated build process)</span>\n<span class=\"token instruction\"><span class=\"token keyword\">RUN</span> mkdir evil-winrm</span>\n<span class=\"token instruction\"><span class=\"token keyword\">COPY</span> . /opt/evil-winrm</span>\n\n<span class=\"token comment\">#Evil-WinRM install method 2 (only one method can be used, other must be commented)</span>\n<span class=\"token comment\">#Install Evil-WinRM (manual image build)</span>\n<span class=\"token comment\">#Uncomment git clone line and one of the ENV vars to select branch (master->latest, dev->beta)</span>\n<span class=\"token comment\">#ENV BRANCH=\"master\"</span>\n<span class=\"token comment\">#ENV BRANCH=\"dev\"</span>\n<span class=\"token comment\">#RUN git clone -b ${BRANCH} ${EVILWINRM_URL}</span>\n\n<span class=\"token comment\"># Make script file executable</span>\n<span class=\"token instruction\"><span class=\"token keyword\">RUN</span> chmod +x evil-winrm/*.rb</span>\n\n<span class=\"token comment\"># Clean and remove useless files</span>\n<span class=\"token instruction\"><span class=\"token keyword\">RUN</span> rm -rf /opt/evil-winrm/resources > /dev/null 2>&amp;1 &amp;&amp; <span class=\"token operator\">\\</span>\n    rm -rf /opt/evil-winrm/.github > /dev/null 2>&amp;1 &amp;&amp; <span class=\"token operator\">\\</span>\n    rm -rf /opt/evil-winrm/CONTRIBUTING.md > /dev/null 2>&amp;1 &amp;&amp; <span class=\"token operator\">\\</span>\n    rm -rf /opt/evil-winrm/CODE_OF_CONDUCT.md > /dev/null 2>&amp;1 &amp;&amp; <span class=\"token operator\">\\</span>\n    rm -rf /opt/evil-winrm/Dockerfile > /dev/null 2>&amp;1 &amp;&amp; <span class=\"token operator\">\\</span>\n    rm -rf /opt/evil-winrm/Gemfile* > /dev/null 2>&amp;1 &amp;&amp; <span class=\"token operator\">\\</span>\n    rm -rf /tmp/* > /dev/null 2>&amp;1</span>\n\n<span class=\"token comment\"># Start command (launching Evil-WinRM)</span>\n<span class=\"token instruction\"><span class=\"token keyword\">ENTRYPOINT</span> [<span class=\"token string\">\"/opt/evil-winrm/evil-winrm.rb\"</span>]</span></code></pre></div>\n<p>You can pull it like this.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">docker</span> pull kashiwabayuki/evil-winrm:1.0</code></pre></div>\n<p>To make it easier to use, add an alias as well.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token builtin class-name\">alias</span> evil-winrm<span class=\"token operator\">=</span><span class=\"token string\">'docker run --rm -it -v $PWD:/data kashiwabayuki/evil-winrm:1.0'</span></code></pre></div>\n<h3 id=\"windows-exploit-suggester\" style=\"position:relative;\"><a href=\"#windows-exploit-suggester\" aria-label=\"windows exploit suggester 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>Windows-Exploit-Suggester</h3>\n<p><a href=\"https://github.com/AonCyberLabs/Windows-Exploit-Suggester\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Windows-Exploit-Suggester</a> is a useful tool for investigating Windows vulnerabilities.</p>\n<p>I use a container image created with reference to the repository below.</p>\n<p>Reference: <a href=\"https://github.com/gr33nm0nk2802/Windows-Exploit-Suggester\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">gr33nm0nk2802/Windows-Exploit-Suggester</a></p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">kashiwabayuki/windows-exploit-suggester:1.0</code></pre></div>\n<p>Set an alias for it as well.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token builtin class-name\">alias</span> windows-exploit-suggester<span class=\"token operator\">=</span><span class=\"token string\">'docker run --rm -it -v $PWD:/exploit-suggester kashiwabayuki/windows-exploit-suggester:1.0'</span></code></pre></div>\n<h3 id=\"burpsuite\" style=\"position:relative;\"><a href=\"#burpsuite\" aria-label=\"burpsuite 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>BurpSuite</h3>\n<p>The free edition of BurpSuite is installed by default.</p>\n<p>Once Chrome is installed, I barely use Firefox, so if you set proxy settings there and make it a browser dedicated to Burp, you do not have to keep changing the settings over and over.</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/28419b495277def23cd2f6c5c355beed/0b533/1d4f0ba0-b58d-f7c0-f779-1df12099c196.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: 56.25%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAALCAYAAAB/Ca1DAAAACXBIWXMAARlAAAEZQAGA43XUAAABqklEQVQoz6WSy5KbMBBF+YepVI3tTKpmQAghJBAIgdE8nHjyWCTZ5PeyzXfedMvxPBzvZnEtLFqt0/eSSWUwhgU+bNEY9yzbp9WP2/Q+TBG2HaCb7nUdifds61FWGlkpFeZtRLzbpcPHBoOf01rrFqKsUZYasmpQEcCpJDWy3QhZW2SyGRF3X7HEO8TbHR52e0zzbSrkZi+l6MCpuK6UGq0L0ESb5VUHPz8gxnsam6lmKjS4vhHIC/mkQrCqV+J92/bUqEUgiJpGzwS90HS7MR1U+EbN79EPI3o/wfUj3BDoORChJZI6jcdepZXI2D8mdcOEikcuSpXM7twI0wVCH1PR6YjsHzc41SEUS+c8CvqfFUKlw4ZSZYqDJzUE7XMYKRBZn23Gqv8RGkpZ0KVZXlRptDAtROkJndJSDd3GROrgFfn3n8i/m7wkEAfTaPTOQdDFGf8w3VETN/YL7LRPAfFI5z4Xnko3lL7xyN1nyPAdoqZQGPfjpy/YUspHv9JnclzP6BDCjMf9I7r4Axc/f+Pdrz/4oBZkl6sNVpurN+g91usVNqTL1Rp/AcVbTQEcY/8mAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/28419b495277def23cd2f6c5c355beed/8ac56/1d4f0ba0-b58d-f7c0-f779-1df12099c196.webp 240w,\n/static/28419b495277def23cd2f6c5c355beed/d3be9/1d4f0ba0-b58d-f7c0-f779-1df12099c196.webp 480w,\n/static/28419b495277def23cd2f6c5c355beed/b0a15/1d4f0ba0-b58d-f7c0-f779-1df12099c196.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/28419b495277def23cd2f6c5c355beed/8ff5a/1d4f0ba0-b58d-f7c0-f779-1df12099c196.png 240w,\n/static/28419b495277def23cd2f6c5c355beed/e85cb/1d4f0ba0-b58d-f7c0-f779-1df12099c196.png 480w,\n/static/28419b495277def23cd2f6c5c355beed/0b533/1d4f0ba0-b58d-f7c0-f779-1df12099c196.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/28419b495277def23cd2f6c5c355beed/0b533/1d4f0ba0-b58d-f7c0-f779-1df12099c196.png\"\n            alt=\"image-20210522152341267.png\"\n            title=\"image-20210522152341267.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=\"sourcetrail\" style=\"position:relative;\"><a href=\"#sourcetrail\" aria-label=\"sourcetrail 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>SourceTrail</h3>\n<p>This is a tool for visualizing source code that was recently open-sourced.</p>\n<p>Download it from <a href=\"https://github.com/CoatiSoftware/Sourcetrail/releases\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Releases · CoatiSoftware/Sourcetrail · GitHub</a>.</p>\n<p>Move into the extracted directory and run <code class=\"language-text\">sudo ./install.sh</code> to complete the installation.</p>\n<h3 id=\"yara\" style=\"position:relative;\"><a href=\"#yara\" aria-label=\"yara 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>YARA</h3>\n<p>YARA.</p>\n<p>I do not use YARA much in CTFs, but I personally like it and even contribute to it, so I always install it.</p>\n<p>The version you can install with apt is a little old, so I build it from source.</p>\n<p>You can download the latest source code from <a href=\"https://github.com/VirusTotal/yara/releases\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Releases · VirusTotal/yara · GitHub</a>.</p>\n<p>By this point, all prerequisite packages have already been installed, so you can just run the following commands.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">./bootstrap.sh\n./configure\n<span class=\"token function\">make</span>\n<span class=\"token function\">sudo</span> <span class=\"token function\">make</span> <span class=\"token function\">install</span></code></pre></div>\n<p>If you leave it like this, YARA will not start because it cannot find the library, so add the library path to <code class=\"language-text\">/etc/ld.so.conf</code>.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">sudo</span> <span class=\"token builtin class-name\">echo</span> <span class=\"token string\">\"/usr/local/lib\"</span> <span class=\"token operator\">>></span> /etc/ld.so.conf\n<span class=\"token function\">sudo</span> ldconfig</code></pre></div>\n<p>Now the latest build of YARA is installed.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">$ yara -v\n<span class=\"token number\">4.1</span>.0</code></pre></div>\n<h3 id=\"qemu-and-cross-compilation-environment\" style=\"position:relative;\"><a href=\"#qemu-and-cross-compilation-environment\" aria-label=\"qemu and cross compilation environment 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>QEMU and Cross-Compilation Environment</h3>\n<p>Sometimes you want to compile, analyze, or run executables for ARM.</p>\n<p>For example, when the challenge file is an ARM binary.</p>\n<p>So let’s build that environment.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">sudo</span> <span class=\"token function\">apt</span> <span class=\"token function\">install</span> qemu-user-binfmt qemu-efi qemu-efi-aarch64 qemu-efi-arm qemu-system qemu-system-arm qemu-system-common qemu-system-x86 qemu-system-misc qemu-utils -y</code></pre></div>\n<p>Next, install the tools for cross-compilation.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">sudo</span> <span class=\"token function\">apt</span> <span class=\"token function\">install</span> g++-arm-linux-gnueabihf</code></pre></div>\n<p>I used <a href=\"https://qiita.com/tetsu_koba/items/9bdcb59f912efbff3128\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">How to cross-compile C/C++ source code for ARM/ARM64 on x86_64 Ubuntu and run it with QEMU - Qiita</a> as a reference.</p>\n<h3 id=\"aws-cli\" style=\"position:relative;\"><a href=\"#aws-cli\" aria-label=\"aws cli 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>AWS CLI</h3>\n<p>When HackTheBox and the like occasionally throw you an AWS challenge, sometimes you want the CLI.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">curl</span> <span class=\"token string\">\"https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip\"</span> -o <span class=\"token string\">\"awscliv2.zip\"</span>\n<span class=\"token function\">unzip</span> awscliv2.zip\n<span class=\"token function\">sudo</span> ./aws/install</code></pre></div>\n<h3 id=\"impacket\" style=\"position:relative;\"><a href=\"#impacket\" aria-label=\"impacket 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>Impacket</h3>\n<p>This is a tool you can use when attacking machines with SMB packets and the like.</p>\n<p>Because you need Python 2’s pip and cannot install it directly on Parrot, I use Docker.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">git</span> clone https://github.com/SecureAuthCorp/impacket\n<span class=\"token builtin class-name\">cd</span> impacket\n<span class=\"token function\">docker</span> build -t impacket <span class=\"token builtin class-name\">.</span></code></pre></div>\n<h3 id=\"tweak\" style=\"position:relative;\"><a href=\"#tweak\" aria-label=\"tweak 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>Tweak</h3>\n<p>A binary editor.</p>\n<p>I also use VSCode’s binary editor extension and hexeditor, but Tweak’s strength is that it can add and delete binary data.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">sudo</span> <span class=\"token function\">apt</span> <span class=\"token function\">install</span> tweak</code></pre></div>\n<p>I only keep the minimum commands here because I often forget them.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">^X^I <span class=\"token builtin class-name\">:</span> Insert\n^X^S <span class=\"token builtin class-name\">:</span> Save\n^X^C <span class=\"token builtin class-name\">:</span> Exit</code></pre></div>\n<h3 id=\"pngcheck\" style=\"position:relative;\"><a href=\"#pngcheck\" aria-label=\"pngcheck 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>pngcheck</h3>\n<p>I use it to inspect PNGs.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">sudo</span> <span class=\"token function\">apt</span> <span class=\"token function\">install</span> pngcheck -y</code></pre></div>\n<h3 id=\"png-parser\" style=\"position:relative;\"><a href=\"#png-parser\" aria-label=\"png parser 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>png-parser</h3>\n<p>It is useful when you want information about PNG chunks and the like.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">pip <span class=\"token function\">install</span> --user git+https://github.com/Hedroed/png-parser</code></pre></div>\n<p>For how to use it, see the README.</p>\n<p>Reference: <a href=\"https://github.com/Hedroed/png-parser\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Hedroed/png-parser: Analyse PNG file format for CTF, python API and CLI</a></p>\n<h3 id=\"creddump\" style=\"position:relative;\"><a href=\"#creddump\" aria-label=\"creddump 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>creddump</h3>\n<p>Used for forensics.</p>\n<p>For usage, see <a href=\"https://github.com/CiscoCXSecurity/creddump7\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">CiscoCXSecurity/creddump7</a>.</p>\n<h3 id=\"usb-keyboard-parser\" style=\"position:relative;\"><a href=\"#usb-keyboard-parser\" aria-label=\"usb keyboard parser 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>USB keyboard parser</h3>\n<p>It parses input values from a USB pcap.</p>\n<p>Download it from the repository below.</p>\n<p><a href=\"https://github.com/TeamRocketIst/ctf-usb-keyboard-parser\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">TeamRocketIst/ctf-usb-keyboard-parser: This is the updated script from https://teamrocketist.github.io/2017/08/29/Forensics-Hackit-2017-USB-ducker/</a></p>\n<h3 id=\"pince\" style=\"position:relative;\"><a href=\"#pince\" aria-label=\"pince 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>PINCE</h3>\n<p>A tool like Cheat Engine for Linux.</p>\n<p>You can use it on Parrot and Kali as well.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token builtin class-name\">cd</span> ~/Tools\n<span class=\"token function\">git</span> clone --recursive https://github.com/korcankaraokcu/PINCE\n<span class=\"token builtin class-name\">cd</span> PINCE\n<span class=\"token function\">sudo</span> <span class=\"token function\">sh</span> install_pince.sh</code></pre></div>\n<p>Reference: <a href=\"https://github.com/korcankaraokcu/PINCE\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">korcankaraokcu/PINCE: A reverse engineering tool that’ll supply the place of Cheat Engine for linux</a></p>\n<p>The command to run it is <code class=\"language-text\">sh PINCE.sh</code>, but that is a hassle, so I create an alias.</p>\n<h3 id=\"wabt\" style=\"position:relative;\"><a href=\"#wabt\" aria-label=\"wabt 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>wabt</h3>\n<p>A WASM decompiler.</p>\n<p>It can decompile WASM source code.</p>\n<p>Reference: <a href=\"https://github.com/WebAssembly/wabt/blob/main/docs/decompiler.md\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">wabt/decompiler.md at main · WebAssembly/wabt</a></p>\n<p>Build it following the steps in the README of the repository above.</p>\n<p>I think it is a good idea to add it to <code class=\"language-text\">PATH</code>.</p>\n<p>Once it is built, you can decompile WASM with the following command.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">./wasm-decompile file.wasm -o out.wasm</code></pre></div>\n<h3 id=\"imhex\" style=\"position:relative;\"><a href=\"#imhex\" aria-label=\"imhex 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>ImHex</h3>\n<p>A powerful hex editor.</p>\n<p>My environment had 8 GB of RAM, but the virtual machine hung when I ran <code class=\"language-text\">make -j</code>.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">git</span> clone https://github.com/WerWolv/ImHex.git\n\n<span class=\"token builtin class-name\">cd</span> ImHex\n<span class=\"token function\">sudo</span> ./dist/get_deps_debian.sh\n\n<span class=\"token function\">mkdir</span> build\n<span class=\"token builtin class-name\">cd</span> build\n\ncmake <span class=\"token punctuation\">..</span>\n<span class=\"token function\">make</span> -j</code></pre></div>\n<p>Reference: <a href=\"https://github.com/WerWolv/ImHex\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">GitHub - WerWolv/ImHex: A Hex Editor for Reverse Engineers, Programmers and people who value their retinas when working at 3 AM.</a></p>\n<p>Background reading: <a href=\"https://soji256.hatenablog.jp/entry/2021/01/25/070000\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">ImHex: A binary editor for people doing their best at 3 AM - setodaNote</a></p>\n<h3 id=\"keepassx\" style=\"position:relative;\"><a href=\"#keepassx\" aria-label=\"keepassx 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>KeePassX</h3>\n<p>I use it when opening KDBX files and the like.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">sudo</span> <span class=\"token function\">apt</span> <span class=\"token function\">install</span> keepassx -y</code></pre></div>\n<h2 id=\"build-docker-environments\" style=\"position:relative;\"><a href=\"#build-docker-environments\" aria-label=\"build docker environments 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>Build Docker Environments</h2>\n<p>These are the images I use often in my Docker environment.</p>\n<ul>\n<li>Python2</li>\n<li>Ubuntu16.04</li>\n<li>php</li>\n<li>node</li>\n<li>Impacket</li>\n</ul>\n<p>When I use them in my own environment, I build the images from slightly customized Dockerfiles.</p>\n<div class=\"gatsby-highlight\" data-language=\"markdown\"><pre class=\"language-markdown\"><code class=\"language-markdown\"><span class=\"token title important\"><span class=\"token punctuation\">##</span> Python2</span>\n<span class=\"token code\"><span class=\"token punctuation\">```</span>\n<span class=\"token code-block\">docker build -t python2 .\ndocker run --rm -it -v $PWD:/app python2 bash\ndocker run --net host --rm -it -v $PWD:/app python2 bash</span>\n<span class=\"token punctuation\">```</span></span>\n\n<span class=\"token title important\"><span class=\"token punctuation\">##</span> Ubuntu16</span>\n<span class=\"token code\"><span class=\"token punctuation\">```</span>\n<span class=\"token code-block\">docker build -t ubuntu16 .\ndocker run --rm -it -v $PWD:/app ubuntu16 bash\ndocker run --rm --cap-add=SYS_PTRACE --security-opt=\"seccomp=unconfined\" -it -v $PWD:/app ubuntu16 bash</span>\n<span class=\"token punctuation\">```</span></span>\n\n<span class=\"token title important\"><span class=\"token punctuation\">##</span> PHP</span>\n<span class=\"token code\"><span class=\"token punctuation\">```</span><span class=\"token code-language\">bash</span>\n<span class=\"token code-block language-bash\"><span class=\"token function\">docker</span> build -t php <span class=\"token builtin class-name\">.</span>\n<span class=\"token function\">docker</span> run --rm -it -v <span class=\"token environment constant\">$PWD</span>:/root php <span class=\"token function\">bash</span></span>\n<span class=\"token punctuation\">```</span></span>\n\n<span class=\"token title important\"><span class=\"token punctuation\">##</span> node</span>\n<span class=\"token code\"><span class=\"token punctuation\">```</span>\n<span class=\"token code-block\">docker pull node\ndocker run --rm -it -v $PWD:/root node bash</span>\n<span class=\"token punctuation\">```</span></span>\n\n<span class=\"token title important\"><span class=\"token punctuation\">##</span> Impacket</span>\n<span class=\"token code\"><span class=\"token punctuation\">```</span>\n<span class=\"token code-block\">git clone https://github.com/SecureAuthCorp/impacket\ncd impacket\ndocker build -t impacket .\ndocker run --net host --rm -it -v $PWD:/root impacket bash</span>\n<span class=\"token punctuation\">```</span></span>\n\n<span class=\"token title important\"><span class=\"token punctuation\">##</span> RSACTFTool</span>\n<span class=\"token code\"><span class=\"token punctuation\">```</span><span class=\"token code-language\"> bash</span>\n<span class=\"token code-block language-bash\"><span class=\"token function\">docker</span> run --rm -it -v <span class=\"token environment constant\">$PWD</span>:/data rsactftool --publickey ./key.pub</span>\n<span class=\"token punctuation\">```</span></span></code></pre></div>\n<p>The image I use especially often is the one where Python 2.7’s pip works, because I frequently use it to run exploit code that only works on Python 2.</p>\n<p>If you pass <code class=\"language-text\">--net host</code> to Docker’s <code class=\"language-text\">run</code> command, the container can use the host’s network.</p>\n<p>That means you can run exploit code from a container through the VPN connection established on the host.</p>\n<h2 id=\"build-ghidras-debugger-branch\" style=\"position:relative;\"><a href=\"#build-ghidras-debugger-branch\" aria-label=\"build ghidras debugger branch 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>Build Ghidra’s Debugger Branch</h2>\n<p><em>The debugger functionality is already included in current release versions, so building the development branch is no longer necessary.</em></p>\n<p>According to the <a href=\"https://github.com/NationalSecurityAgency/ghidra/tree/debugger\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">official repository</a>, building Ghidra requires the following applications.</p>\n<ul>\n<li>JDK 11 64-bit</li>\n<li>Gradle (minimum v6.0)</li>\n<li>make, gcc, and g++ (Linux/macOS-only)</li>\n<li>Microsoft Visual Studio (Windows-only)</li>\n</ul>\n<p>By the steps up to this point, everything except Gradle has already been set up, so first install Gradle.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">unzip</span> gradle-7.0.2-all.zip\n<span class=\"token function\">sudo</span> <span class=\"token function\">mv</span> gradle-7.0.2 /opt/gradle\n<span class=\"token builtin class-name\">echo</span> <span class=\"token string\">\"PATH=<span class=\"token environment constant\">$PATH</span>:/opt/gradle/bin\"</span> <span class=\"token operator\">>></span> ~/.bashrc</code></pre></div>\n<p>Next, clone Ghidra’s <code class=\"language-text\">debugger</code> branch and build it with Gradle.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">git</span> clone -b debugger https://github.com/NationalSecurityAgency/ghidra.git\n<span class=\"token builtin class-name\">cd</span> ghidra\ngradle -I gradle/support/fetchDependencies.gradle init\ngradle buildGhidra</code></pre></div>\n<p>The first build takes quite a while.</p>\n<p>By the way, when I was writing this article, following the steps in the documentation above produced the following error and the build failed.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token operator\">></span> Task :Graph:ip FAILED\nFAILURE: Build failed with an exception</code></pre></div>\n<p>When that happens, do not panic; search Ghidra’s issue tracker with the error message.</p>\n<p>In most cases, a solution for a similar problem has already been posted.</p>\n<p>This time, the build was failing on <code class=\"language-text\">Task :GraphServices:ip</code>, so I followed the advice in the issue and ran the following command, and the build succeeded.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">gradle buildGhidra -x <span class=\"token function\">ip</span></code></pre></div>\n<p>When the build succeeds, a file named <code class=\"language-text\">ghidra/build/dist/ghidra_10.0_DEV_20210523_linux64.zip</code> is created.</p>\n<p>After that, as before, replace the directory you put on your PATH with the extracted directory, and the development build you created will launch with <code class=\"language-text\">ghidraRun</code>.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">mv</span> ghidra_10.0_DEV ~/Tools/Ghidra</code></pre></div>\n<p>In the Debugger build, a bug icon is added next to the usual dragon icon.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 247px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/8ddf123d4f2ce99555fe3ca60adaa3a1/fb3c7/3184de4a-6f7b-1d5e-91db-88182b75c6bd.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,iVBORw0KGgoAAAANSUhEUgAAABQAAAAOCAYAAAAvxDzwAAAACXBIWXMAAAsTAAALEwEAmpwYAAACaElEQVQ4y62SS08aURTH5wP1E3TduOiii8au+gVcdNX0saltYhddVRvtw3bhAx/gC1B5DBEQLSKI4CDjDAwwKCJKa9Km3Sn463VEWzfqojf55fzP/d+cc27ulZajcXyBBYKLS8z7ZPyBIIFgmGQqg1nZo2BWKJYrFP6heAWSLxBicsqNX44w4/bgFEw750WDKKm0SjypCDJnrGdIJDf/5i1O9xKWVpA2snkULUcg4sMoVUhrBhu6Ri5fJp7OkdUKl1C14pV70qaS5/V4Bw8dtwjH0tx77sC3EqN79CufXEkKxTKqXmIrdzMkJb1FMDZBb/QVq2sqk3IaPWdi9yWIxFVyRumsu34+TUsLVL2ImruMlNky0ItVDGMP3SiLiUy0vEnR3BHFTKvIaa4JTzNOvVJLly0vo+YvIblmvQwMjWAbs+Oe91kPYxtzMDI+yZRzjlAkyqjQ/V8GsI06mJxxMzxiZ0ScCS+tkCvuWJNeXNknh/DKQTzilf0LUcLLMWY9AWZcHuRghNBSTPhh0cyP2yPj8QdxzfmtPCy81TWFlUT6AknJ6uL/VCkVkpglBXO7SqVao7Zfp7JbY1fo3b19DurfBYfsi1j/dmjpvdqB5VeFf46UUrLU6r/Z0W0Ym4Oo+W1SqRSxeIJVwVpync1slqPjBjdZ0vrGFh1v7dx+1MODzs8MTc1y91kv7Z39tL/s5/6Lj9x53EPbkz7anr4X9F2JVbB3ZpHOQS/dEwuEV5K8GfPzwbVInzPMu+kQXcNeumx+gXwtoqDKSeOI/7VEwSw/fv6ieXLCcaNBs9kUsUmjxbFFoxWv5w8k/7Ra0skZ4QAAAABJRU5ErkJggg=='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/8ddf123d4f2ce99555fe3ca60adaa3a1/8ac56/3184de4a-6f7b-1d5e-91db-88182b75c6bd.webp 240w,\n/static/8ddf123d4f2ce99555fe3ca60adaa3a1/83176/3184de4a-6f7b-1d5e-91db-88182b75c6bd.webp 247w\"\n              sizes=\"(max-width: 247px) 100vw, 247px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/8ddf123d4f2ce99555fe3ca60adaa3a1/8ff5a/3184de4a-6f7b-1d5e-91db-88182b75c6bd.png 240w,\n/static/8ddf123d4f2ce99555fe3ca60adaa3a1/fb3c7/3184de4a-6f7b-1d5e-91db-88182b75c6bd.png 247w\"\n            sizes=\"(max-width: 247px) 100vw, 247px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/8ddf123d4f2ce99555fe3ca60adaa3a1/fb3c7/3184de4a-6f7b-1d5e-91db-88182b75c6bd.png\"\n            alt=\"6d2c1c54-1af3-2bae-9c04-8acd9ffdb572.png\"\n            title=\"6d2c1c54-1af3-2bae-9c04-8acd9ffdb572.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>After it starts, load the executable you want to analyze from [File] in the upper right.</p>\n<p>Right-click an appropriate location and select [Toggle Breakpoint], and it will be added to the Breakpoint window on the right.</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/3b93383804fce21f44cdffe522c8ce3d/0b533/eb93a94d-38a0-1c0e-12a2-72af4c2ce6f8.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 77.5%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAQCAYAAAAWGF8bAAAACXBIWXMAARlAAAEZQAGA43XUAAADT0lEQVQ4yzVUaW8bVRSd/w8SSIgWqR8I36hoo5KIJo4S46QpgTh4iWf17Ls9m8fxIo9d+3DvMx3p6L3R85w5yx1Lu12DLYHX3Zet2G+3DRpGsxHrfLFAOs3gBSGiJEFV1yhnBFr9MDyehTFG6hjSN99e4Ycfb/DqdRuvfmrj5Jdb/Pr2Hh/OHnDZ6uK63cVwZCAgIlk3oI7H0C0b07LCpCjhRTHSrBB7WbMgDdQJNLvCQCvQV3PaF1BMWp0Cpl/CTeYIJ5V4sD+SMVRUPPb60CwLWTUTKOo50rw4Eib1BtPFDtlqj2INZMs99HAJ2XmBO6Uzuo+KF/hxjLHjIkwniCZTAVbpUAzxJEOS5fin24ck2ylkO8HAWOOhv4MR7hCWDaxkhXx1gJfVsKOUMgoxIIVOEJDFnPKbI5/NYHseETJ5iduHJ0ieH8LzfHj+Bqq2Rz0/YLFskKQv4KuuK7gBnceUoaYLlawmzXNBHCSpuLeI4+zzCFJMVuIoQpqSKntP6x6r1RZFsRSEyyVlSITO2BT59YbP0GjPRUwLKiYvUc0XCOIUqm4xYUIkCYKwga7vkecHQViWK0G4Wr3QC0M41OyzqkExDAFWN6VmwzQVljlTWTMhua4LyzLJ9poUHuC6ZLsmy9QuX2U1IcuusMyEX5HQ7HG73L7pePSbEAorZEKD3ui6C8rxgPmcFTLhMcNlvkDsUCkUzXEOTUHo0wsyaplVfh0bQZhTuHk2RRJvEEUHrNcHNJsdZtVaEB6aBrO8EgQDWSZSXZTjhtH/5RTUdi1KeuwNIenGGJphwo+2sH1QJmSTLPvRHAdueVnQww4hFspsP6AiCjGPTMazyMPN1ls3d5Aurm7w29kF3hFO/2jhrHWDD60/CR38ftXB6UUbfz31qcUEQ1mFblpiz1b5c+My2DIX0+58gnR3/4DvT97ju5/f4s37S5ycXuL8/BwXHz+i0+ng+voaj90noWgoK+g9j8SAs9qj0lQoZTyPFEgjRUfnScXd0MHdyMdtb4x/BzL6QwX62IFM/yCKbgpCheIxbAeW64lPjkvhCPiM85RVA9Kn7gj3n/8W7B790HV92G4gYNqegOtHIiNWxg9yCVk5E0PNGeZVTV+QQ3HY+A92aYc6kMFRdgAAAABJRU5ErkJggg=='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/3b93383804fce21f44cdffe522c8ce3d/8ac56/eb93a94d-38a0-1c0e-12a2-72af4c2ce6f8.webp 240w,\n/static/3b93383804fce21f44cdffe522c8ce3d/d3be9/eb93a94d-38a0-1c0e-12a2-72af4c2ce6f8.webp 480w,\n/static/3b93383804fce21f44cdffe522c8ce3d/b0a15/eb93a94d-38a0-1c0e-12a2-72af4c2ce6f8.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/3b93383804fce21f44cdffe522c8ce3d/8ff5a/eb93a94d-38a0-1c0e-12a2-72af4c2ce6f8.png 240w,\n/static/3b93383804fce21f44cdffe522c8ce3d/e85cb/eb93a94d-38a0-1c0e-12a2-72af4c2ce6f8.png 480w,\n/static/3b93383804fce21f44cdffe522c8ce3d/0b533/eb93a94d-38a0-1c0e-12a2-72af4c2ce6f8.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/3b93383804fce21f44cdffe522c8ce3d/0b533/eb93a94d-38a0-1c0e-12a2-72af4c2ce6f8.png\"\n            alt=\"d9274723-d00a-42dc-447b-bce773d7bf98.png\"\n            title=\"d9274723-d00a-42dc-447b-bce773d7bf98.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>When you want to run the debugger, just choose and launch the debugger you want to use from [Debugger].</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/e1c886272c7320576eaf82bf96954083/0b533/bbd9a424-8776-951b-d204-63b3c90434c8.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: 53.75%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAALCAYAAAB/Ca1DAAAACXBIWXMAARlAAAEZQAGA43XUAAACVElEQVQoz41SXU/TYBTu//MneOm9d14aTTQoGzIULxSRiEBilESJYIIEhzrnurFu68fade1YWdt1393acrXu8bSLhMiNb/LkvOect+c8z+lhbty6g5u372IhsYLk8ioeLCwh8eQZHiVSSKaeY3HpKRIUT6ZW8Ti5Euei+KuNbay/2cGL9U2svd6K8ZLAfGXLOGZL0M6aMO02Ov0+esMReoMh+iMX3f6AcgbyvAq+WkexxIOrSJDrGrS6jWJOxm+JoxwPUSyC0eoqVE2DYdkwnQ6c3gB2txffrU4XDhXkJQXp71lksgV8S/9AjmXpnkP6JIufmQLSv8hmWWTZAhixYaEkViHKMsqCSN352CrEoGlaccGI7WTiYTyeYDyZIAh8TDwf7nhM1qOcH8PzAjB1w0KdJDVbFnTjPC4SMeuS7AgRWz8I8L+HcToODLMFs90ma6Jl2/HsXGLkUvchsQguLuLHs9nsCv7152BKNR28qkNptqCe26g1TbIW+SaqZy1UG+cYUIPohGF4+WE4Cy/9v81ihvfXPyKxtY/EzgEWt/ex/O4QK++PsPD2APc29vBw8zOOWAGK3oQkK5BrKiRFQU3T0en1rzM0dB2yXCO5Fs6MFq3JkBiNMXTniAYv6SYynIQCV0SeK0GgwjW9EY/p2gxPchzajnMlFFEP55hFkkJ4vo8RFR65LiH6swF8mqvnB5hOp7H06XQOZm33C46PT7G9k8GH3Rw+7eWxf3CKwyOO9qxMe8YjX5BQKisQqypkkivwFZQrIiq8AEGSwZWjpRYIEv4AwJ0O/++bpHUAAAAASUVORK5CYII='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/e1c886272c7320576eaf82bf96954083/8ac56/bbd9a424-8776-951b-d204-63b3c90434c8.webp 240w,\n/static/e1c886272c7320576eaf82bf96954083/d3be9/bbd9a424-8776-951b-d204-63b3c90434c8.webp 480w,\n/static/e1c886272c7320576eaf82bf96954083/b0a15/bbd9a424-8776-951b-d204-63b3c90434c8.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/e1c886272c7320576eaf82bf96954083/8ff5a/bbd9a424-8776-951b-d204-63b3c90434c8.png 240w,\n/static/e1c886272c7320576eaf82bf96954083/e85cb/bbd9a424-8776-951b-d204-63b3c90434c8.png 480w,\n/static/e1c886272c7320576eaf82bf96954083/0b533/bbd9a424-8776-951b-d204-63b3c90434c8.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/e1c886272c7320576eaf82bf96954083/0b533/bbd9a424-8776-951b-d204-63b3c90434c8.png\"\n            alt=\"a618c8f8-5136-c181-8991-335b925fb740.png\"\n            title=\"a618c8f8-5136-c181-8991-335b925fb740.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>I’m looking forward to the debugger feature getting a major release.</p>\n<h2 id=\"once-the-setup-is-done\" style=\"position:relative;\"><a href=\"#once-the-setup-is-done\" aria-label=\"once the setup is done 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>Once the Setup Is Done…</h2>\n<h3 id=\"clean-up\" style=\"position:relative;\"><a href=\"#clean-up\" aria-label=\"clean up 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>Clean Up</h3>\n<p>Time to clean up.</p>\n<p>A huge number of files are left under Downloads, so make sure you delete them properly.</p>\n<p>Also, rather than appending to <code class=\"language-text\">.bashrc</code> throughout the process, it may be cleaner to consolidate the PATH entries into one line and put them in <code class=\"language-text\">.bash_profile</code>.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token builtin class-name\">export</span> <span class=\"token assign-left variable\"><span class=\"token environment constant\">PATH</span></span><span class=\"token operator\">=</span><span class=\"token environment constant\">$PATH</span>:xxxxxxxxxx <span class=\"token operator\">>></span> ~/.bash_profile</code></pre></div>\n<p>I don’t think this happened in the steps above, but unnecessary container images may still be left behind, so as a bit of Docker housekeeping I run prune.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">docker</span> image prune</code></pre></div>\n<h3 id=\"take-a-snapshot\" style=\"position:relative;\"><a href=\"#take-a-snapshot\" aria-label=\"take a snapshot 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>Take a Snapshot</h3>\n<p>The next time you do updates or other maintenance work, you will want to base it on a clean environment right after setup if possible.</p>\n<p>So be sure to create a snapshot (or a checkpoint in Hyper-V).</p>\n<h3 id=\"export-the-image\" style=\"position:relative;\"><a href=\"#export-the-image\" aria-label=\"export the image 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>Export the Image</h3>\n<p>As both a backup and a way to preserve the environment, export the image.</p>\n<p>With the setup in this article, I think it ends up being a little under 30 GB.</p>\n<p>I keep both the Parrot image for CTFs and a Windows 10 image on a 64 GB USB flash drive.</p>\n<p>It just barely fits.</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 took the opportunity while rebuilding my environment to write this article as a memo of the setup procedure.</p>\n<p>If you know any other handy tools, I would be happy if you left a comment.</p>\n<p>Also, if you have any questions about the content, please feel free to ask.</p>","fields":{"slug":"/hackthebox-parrot-setup-en","tagSlugs":["/tag/hack-the-box-en/","/tag/linux-en/","/tag/parrot-os-en/","/tag/備忘録/","/tag/english/"]},"frontmatter":{"date":"2021-10-04","description":"I decided to rebuild the ParrotOS environment I use for Hack The Box and CTFs, so I wrote this article to summarize the setup steps as a personal memo.","tags":["HackTheBox (en)","Linux (en)","ParrotOS (en)","備忘録","English"],"title":"My Idea of the Ultimate Hacking Machine Built with ParrotOS [CTF/HackTheBox]","socialImage":{"publicURL":"/static/dc4d8b7f8795f3c3d3489d9957d155f2/no-image.png"}}}},"pageContext":{"slug":"/hackthebox-parrot-setup-en"}},"staticQueryHashes":["251939775","401334301","825871152"]}