bandithedogewho's even reading any of this?2023-10-09T19:31:20Zhttps://bandithedoge.com/bandithedogebandithedoge@protonmail.comnew site (...again)2023-10-09T19:31:20Zhttps://bandithedoge.com/posts/new-site-again/<p>It's that time of year again. Yes, you got it right, it's time to completely rewrite this dumb website again and overengineer it even more just for me to forget about it for the next 2 years and do the thing again!</p>
<p>This time for my trendy ass tech stack we're using <a href="https://www.11ty.dev/">11ty</a> and <a href="https://tailwindcss.com/">Tailwind CSS</a>. It's not like I care all that much though, as I still absolutely despise web development, especially frontend web development. But hey, I'm getting somewhere this time by using an SSG that I actually understand! Not only that, but I've also learned a lot of things about the modern webdev ecosystem. Like the fact that it still stinks and I don't want to touch it with a stick ever again.</p>
<p>So what does 11ty actually help with?</p>
<p>Well... not much. Except that I have a much deeper understanding of this system than the previous one, so I have more room for fancy stuff. What fancy stuff?</p>
<p><em>Observe</em>.</p>
<pre class="language-javascript"><code class="language-javascript"><span class="token keyword">const</span> hello <span class="token operator">=</span> <span class="token punctuation">[</span><span class="token string">"oh"</span><span class="token punctuation">,</span> <span class="token string">"god"</span><span class="token punctuation">,</span> <span class="token string">"please"</span><span class="token punctuation">,</span> <span class="token string">"make"</span><span class="token punctuation">,</span> <span class="token string">"it"</span><span class="token punctuation">,</span> <span class="token string">"stop"</span><span class="token punctuation">]</span><br /><span class="token keyword">let</span> world <span class="token operator">=</span> hello<span class="token punctuation">.</span><span class="token function">join</span><span class="token punctuation">(</span><span class="token string">" "</span><span class="token punctuation">)</span><br /><br />console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span>world<span class="token punctuation">)</span></code></pre>
<pre class="language-haskell"><code class="language-haskell"><span class="token import-statement"><span class="token keyword">import</span> Data<span class="token punctuation">.</span>List</span><br /><br /><span class="token hvariable">hello</span> <span class="token operator">::</span> <span class="token punctuation">[</span><span class="token constant">String</span><span class="token punctuation">]</span><br /><span class="token hvariable">hello</span> <span class="token operator">=</span> <span class="token punctuation">[</span><span class="token string">"thank"</span><span class="token punctuation">,</span> <span class="token string">"you"</span><span class="token punctuation">,</span> <span class="token string">"very"</span><span class="token punctuation">,</span> <span class="token string">"much"</span><span class="token punctuation">,</span> <span class="token string">":)"</span><span class="token punctuation">]</span><br /><br /><span class="token hvariable">world</span> <span class="token operator">::</span> <span class="token constant">String</span><br /><span class="token hvariable">world</span> <span class="token operator">=</span> <span class="token hvariable">intercalate</span> <span class="token string">" "</span> <span class="token hvariable">hello</span><br /><br /><span class="token hvariable">main</span> <span class="token operator">=</span> <span class="token builtin">putStrLn</span> <span class="token hvariable">world</span></code></pre>
<p></p><div class="table-of-contents"><ul><li><a href="https://bandithedoge.com/posts/new-site-again/#i">I </a><ul><li><a href="https://bandithedoge.com/posts/new-site-again/#still">still </a><ul><li><a href="https://bandithedoge.com/posts/new-site-again/#hate">hate </a><ul><li><a href="https://bandithedoge.com/posts/new-site-again/#web">web </a><ul><li><a href="https://bandithedoge.com/posts/new-site-again/#development">development </a><ul><li><a href="https://bandithedoge.com/posts/new-site-again/#with">with </a></li></ul></li><li><a href="https://bandithedoge.com/posts/new-site-again/#every">every </a></li></ul></li><li><a href="https://bandithedoge.com/posts/new-site-again/#fiber">fiber </a></li></ul></li><li><a href="https://bandithedoge.com/posts/new-site-again/#of">of </a></li></ul></li><li><a href="https://bandithedoge.com/posts/new-site-again/#my">my </a></li></ul></li><li><a href="https://bandithedoge.com/posts/new-site-again/#being.">being. </a></li></ul></div><p></p>
<h1 id="i" tabindex="-1">I <a class="header-anchor" href="https://bandithedoge.com/posts/new-site-again/#i" aria-hidden="true">#</a></h1>
<h2 id="still" tabindex="-1">still <a class="header-anchor" href="https://bandithedoge.com/posts/new-site-again/#still" aria-hidden="true">#</a></h2>
<h3 id="hate" tabindex="-1">hate <a class="header-anchor" href="https://bandithedoge.com/posts/new-site-again/#hate" aria-hidden="true">#</a></h3>
<h4 id="web" tabindex="-1">web <a class="header-anchor" href="https://bandithedoge.com/posts/new-site-again/#web" aria-hidden="true">#</a></h4>
<h5 id="development" tabindex="-1">development <a class="header-anchor" href="https://bandithedoge.com/posts/new-site-again/#development" aria-hidden="true">#</a></h5>
<h6 id="with" tabindex="-1">with <a class="header-anchor" href="https://bandithedoge.com/posts/new-site-again/#with" aria-hidden="true">#</a></h6>
<h5 id="every" tabindex="-1">every <a class="header-anchor" href="https://bandithedoge.com/posts/new-site-again/#every" aria-hidden="true">#</a></h5>
<h4 id="fiber" tabindex="-1">fiber <a class="header-anchor" href="https://bandithedoge.com/posts/new-site-again/#fiber" aria-hidden="true">#</a></h4>
<h3 id="of" tabindex="-1">of <a class="header-anchor" href="https://bandithedoge.com/posts/new-site-again/#of" aria-hidden="true">#</a></h3>
<h2 id="my" tabindex="-1">my <a class="header-anchor" href="https://bandithedoge.com/posts/new-site-again/#my" aria-hidden="true">#</a></h2>
<h1 id="being." tabindex="-1">being. <a class="header-anchor" href="https://bandithedoge.com/posts/new-site-again/#being." aria-hidden="true">#</a></h1>
<figure data-type="image"><img src="https://bandithedoge.com/posts/new-site-again/carpincho.gif" alt="This work is based on "Capybara" by Rectus licensed under CC-BY-NC-4.0" /><figcaption>This work is based on <a href="https://sketchfab.com/3d-models/capybara-445b5a9c131d482fad76bf5b6c2f8271">"Capybara"</a> by <a href="https://sketchfab.com/rectus">Rectus</a> licensed under <a href="http://creativecommons.org/licenses/by-nc/4.0/">CC-BY-NC-4.0</a></figcaption></figure>
<p>Oh, and I guess the site is more maintainable now, which in turn will make it easier for me to write new stuff for it. Don't take that as a guarantee, though, as I'm still just as much of a lazy prick as I was before.</p>
a (sorta) comprehensive list of Team Xecuter fuck-ups2020-10-03T16:25:39Zhttps://bandithedoge.com/posts/tx/<p class="text-3xl">WARNING! This post is really old and really shit. Wouldn't get too excited about it if I were you.</p>
<p></p><div class="table-of-contents"><ul><li><a href="https://bandithedoge.com/posts/tx/#context">Context </a></li><li><a href="https://bandithedoge.com/posts/tx/#list-of-fuck-ups">List of fuck-ups </a></li></ul></div><p></p>
<p><a href="https://team-xecuter.com/">Team Xecuter</a> is a console hacking group that came up in the original Xbox days. These days, though, they've been focusing on the Nintendo Switch and providing a constant stream of bullshit almost since the release of the console. This post is an attempt at documenting most of TX's fuck-ups in celebration of 2 members getting arrested.</p>
<p>This is not a full list. If you know about more fuck-ups, please send them at <a href="mailto:bandithedoge@protonmail.com">bandithedoge@protonmail.com</a> or bandithedoge#7040 on Discord. It's also focused mainly on the Switch era but, if someone wants to contribute, I could include fuck-ups from the OG Xbox era as well. I also might have or might have not thought about creating a Telegram channel for the meme.</p>
<p>This list will be updated with future fuck-ups.</p>
<h1 id="context" tabindex="-1">Context <a class="header-anchor" href="https://bandithedoge.com/posts/tx/#context" aria-hidden="true">#</a></h1>
<p>In early 2018, a BootROM exploit was discovered for the Tegra X1 chip used by the Nintendo Switch independently by 3 parties: <a href="https://github.com/reswitched">ReSwitched</a> (who named it <a href="https://www.ktemkin.com/faq-fusee-gelee/"><em>Fusée Gelée</em></a>, which is the name I'll use for the rest of this post), <a href="https://fail0verflow.com/blog/">fail0verflow</a> (who named it <a href="https://github.com/fail0verflow/shofel2"><em>ShofEL2</em></a> after member <a href="https://github.com/shuffle2">shuffle2</a>) and an anon from 4chan. The exploit allowed for full control over the system. A few custom firmware projects came up, but the two most important ones were <a href="https://github.com/Atmosphere-NX/Atmosphere">Atmosphère</a> and <a href="https://sx.xecuter.com/">SXOS</a>. The main difference was the license and legality (which we'll get into later): AMS is open-source software licensed under GPLv2 and SXOS is closed-source and costs $20. SXOS had the advantage of being the first one to be publically released and deemed usable, but that's no longer the case, as AMS is a much more mature and stable project.</p>
<h1 id="list-of-fuck-ups" tabindex="-1">List of fuck-ups <a class="header-anchor" href="https://bandithedoge.com/posts/tx/#list-of-fuck-ups" aria-hidden="true">#</a></h1>
<ul>
<li>
<p>TX stole open-source code and broke many licenses.</p>
<ul>
<li>An <a href="https://github.com/switchbrew/nx-hbloader/blob/master/source/main.c#L10">easter egg</a> from <a href="https://github.com/switchbrew/nx-hbloader">nx-hbloader</a> <a href="https://twitter.com/hexkyz/status/1012146388484755456">was discovered</a> when looking at an SXOS binary with a hex editor, essentially proving that TX used code from nx-hbloader. TX did not acknowledge the use of this code and therefore broke the <a href="https://github.com/switchbrew/nx-hbloader/blob/master/LICENSE.md">ISC license</a>.</li>
<li>Part of AMS code was also <a href="https://twitter.com/hexkyz/status/1012149398929735681">found</a> in SXOS binaries with a hex editor. AMS is licensed under the more restrictive <a href="https://github.com/Atmosphere-NX/Atmosphere/blob/master/LICENSE">GPLv2 license</a> which allows you to use the code as long as you provide the source code under the same license. TX did not even acknowledge use of AMS code.</li>
<li><a href="https://twitter.com/hexkyz">Mike Heskin</a> also <a href="https://twitter.com/hexkyz/status/1012363013389774848">said</a> that SXOS uses an open-source crypto library for license verification.</li>
<li>Their NSP installer contained code from Nintendo's DevMenu, which is protected by a strict NDA and is illegal to even run on your own console.</li>
<li>The NSP installer was later <a href="https://twitter.com/hexkyz/status/1023649410993905666">proven to use code from</a> <a href="https://github.com/Adubbz/Tinfoil">old Tinfoil</a>, another open-source project. They broke its <a href="https://github.com/Adubbz/Tinfoil/blob/master/LICENSE">MIT license</a> by not acknowledging it.</li>
</ul>
<p>This actually makes SXOS illegal to sell.</p>
</li>
<li>
<p>TX included brick code as protection from reverse engineering.</p>
<ul>
<li>If SXOS detected that the user is running any program that could potentially be used for reverse engineering, the console's eMMC would be <a href="https://twitter.com/hexkyz/status/1012363215815282688">locked</a> with the password <em>WANNA PLAY? :)</em>.</li>
<li>The brick code could also <a href="https://twitter.com/hexkyz/status/1012363021124079622">affect</a> regular users who use certain legitimate homebrew on their console, eg. <a href="https://github.com/CTCaer/hekate">hekate</a>. There was also a chance that the code would <a href="https://twitter.com/hexkyz/status/1012363017957380096">trigger on accident</a>, possibly bricking some random user's console.</li>
<li>After this was discovered, TX went into full damage control mode, removed the brick code in version 1.3 and called it a <a href="https://www.reddit.com/r/SwitchHacks/comments/8vtwzw/sx_os_v13_announcement/">"challenge for hackers"</a> like a wannabe YouTube prankster.</li>
</ul>
<p>This is suspiciously similar to what Gateway did on the 3DS. Pretty ironic how that turned out, eh?</p>
</li>
<li>
<p>TX <a href="https://twitter.com/libretro/status/1046891214824460293">tried to bribe</a> <a href="https://twitter.com/m4xwdev">m4xw</a> into making his OpenGL build of RetroArch exclusive to SXOS and breaking the <a href="https://github.com/libretro/RetroArch/blob/master/COPYING">GPLv3</a> license.</p>
<ul>
<li>TX also <a href="https://www.justice.gov/opa/press-release/file/1324026/download#page=32&zoom=auto,-260,165">tried to involve him into their lawsuit</a>, possibly as revenge. They claim that m4xw took the money and ran away to <a href="https://www.libretro.com/">libretro</a> (which is obviously not a "rival hacking group"). m4xw <a href="https://twitter.com/m4xwdev/status/1312156388999622656">claims that no money was exchanged</a>.</li>
</ul>
<p>This could mean that TX is willing to drag random people they don't like into the lawsuit. Sue me!</p>
</li>
<li>
<p>TX claimed in 2018 that they had a solution to the new unhackable Switch models.</p>
<ul>
<li>In 2020 they <a href="http://wololo.net/2020/02/13/switch-news-team-xecuter-begin-the-testing-phase-for-upcoming-switch-hacking-solution-up-to-300-modders-can-sign-up-to-receive-a-pre-production-unit-names-revealed-to-be-sx-core-and-sx-lite/">announced SX Core and SX Lite</a> - brand new modchips for new Switch consoles (including Lite). Then they <a href="http://wololo.net/2020/02/16/switch-news-team-xecuters-testing-phase-might-take-another-2-weeks-to-kick-off-due-to-coronavirus-according-to-emails-sent-out-to-accepted-testers-2/">delayed shipping test units by 2 weeks</a> due to the y'know what.</li>
</ul>
<p>While this isn't exactly a fuck-up (and their modchips are available to buy), I still decided to include it simply because of the 2 year delay. Personally I don't think they were entirely honest about it in the first place but I'll let you decide.</p>
</li>
</ul>
<p>This is all I currently have to say. I tried to keep this post relatively bias-free but feel free to call me a butthurt SJW fanboy anyway.</p>