<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Rc4 on Qtnes</title><link>http://qtnes.com/tags/rc4/</link><description>Recent content in Rc4 on Qtnes</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Thu, 16 Apr 2026 00:00:00 +0000</lastBuildDate><atom:link href="http://qtnes.com/tags/rc4/index.xml" rel="self" type="application/rss+xml"/><item><title>6 - DeadDrop: Emulating an MQTT Bot to Recover a Flag</title><link>http://qtnes.com/posts/6---deaddrop---emulating-an-mqtt-bot-to-recover-a-flag/</link><pubDate>Thu, 16 Apr 2026 00:00:00 +0000</pubDate><guid>http://qtnes.com/posts/6---deaddrop---emulating-an-mqtt-bot-to-recover-a-flag/</guid><description>&lt;h2 id="overview"&gt;Overview&lt;/h2&gt;
&lt;p&gt;DeadDrop presented an Android malware sample that used MQTT as its C2 channel, with RC4 encryption on every message. The challenge was to reverse the network protocol, recover the broker credentials and encryption keys from the APK, and then write a bot emulator that could register a fake device and trigger flag delivery.&lt;/p&gt;
&lt;h2 id="decoding-the-config"&gt;Decoding the Config&lt;/h2&gt;
&lt;p&gt;The APK&amp;rsquo;s &lt;code&gt;Cfg.java&lt;/code&gt; class stored all configuration values as Base64-encoded strings. This is a minimal evasion technique — strings won&amp;rsquo;t appear in a naive grep for IP addresses or credentials — but a single Base64 decode reveals everything:&lt;/p&gt;</description></item></channel></rss>