gl2gb/public/posts/teaser-how-to-reverse-engin.../index.html

109 lines
4.7 KiB
HTML

<!DOCTYPE html>
<html lang="en"><head>
<title>GoatPr0n.farm</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="format-detection" content="telephone=no" />
<meta name="theme-color" content="#000084" />
<link rel="icon" href="https://goatpr0n.farm//favicon.ico">
<link rel="canonical" href="https://goatpr0n.farm/">
<link rel="stylesheet" href="/css/bootstrap.css">
<link rel="stylesheet" href="/css/bootstrap-responsive.css">
<link rel="stylesheet" href="/css/style.css">
</head><body>
<nav class="navbar navbar-inverse navbar-fixed-top">
<div class="navbar-inner">
<div class="container">
<button type="button" class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse"></button>
<a class="brand" href="https://goatpr0n.farm/">GoatPr0n.farm</a>
<div class="nav-collapse collapse">
<ul class="nav">
<li>
<a href="/posts/">
<span>All posts</span>
</a>
</li>
</ul>
</div>
</div>
</div>
</nav><div id="content" class="container">
<div class="row-fluid navmargin">
<div class="page-header">
<h1>[Teaser] How to reverse engineer communication protocols of embedded devices - Sat, Feb 16, 2019</h1>
</div>
<p class="lead"></p>
<h2 id="sneak-preview">Sneak Preview</h2>
<p><img src="https://dl.goatpr0n.events/$/aAdcT" alt=""></p>
<p>These letters. Such announcement. Many words.</p>
<p>In the next few days I will publish two - not one - but two articles on how to approach a problem on how to reverse engineer protocols. There have been to applications I looked into to code a library for my home uses.</p>
<h2 id="1---mc3000-charger">#1 - MC3000 Charger</h2>
<p><a href="https://www.skyrc.com/MC3000_Charger">MC3000_Charger</a> provides an USB and Bluetooth (BT) interface (Spoiler: I am not covering the BT interface. Not yet). The USB interface is used to update the firmware and to program and interact with the charger during charging.</p>
<p>The Windows software provided by SkyRC can program each slot individually to support different types of batteries with different charging capacities.</p>
<p>As a result of my analysis, and this will be one of the upcoming articles, I reversed the application and wrote a Python library. To do so I dissected a .NET application. So no big magic here!</p>
<h2 id="2---lw12-wifi-led-controller">#2 - LW12 WiFi LED Controller</h2>
<p>This was a tricky one. It is a low budget Chinese WiFi LED controlled with a mobile app. The Android app I looked at was encrypted using a separate VM layer on-top of the Dalvik engine. (Spoiler: No need to reverse this, and I did not do it.)</p>
<p>Sometimes there are simpler solutions. This is what the second article will be about.</p>
<p>The controller itself comes by many names: <a href="https://www.amazon.de/Foxnovo-Wireless-Strip-Regler-Smartphone-Tabletten/dp/B00Q6FKPZI">Foxnovo</a> and I remember buying it as a <a href="https://www.amazon.de/LAGUTE-Strips-Controller-Android-System/dp/B00G55329A">Lagute</a>.</p>
<p>KTHXBYE.</p>
<h4><a href="https://goatpr0n.farm/">Back to Home</a></h4>
</div>
</div><footer class="container">
<hr class="soften">
<p>
&copy;
Julian Knauer
<span id="thisyear">2020</span>
</p>
<p class="text-center">
</p>
</footer>
<script src="/js/jquery.js"></script>
<script src="/js/bootstrap-386.js"></script>
<script src="/js/bootstrap-transition.js"></script>
<script src="/js/bootstrap-alert.js"></script>
<script src="/js/bootstrap-modal.js"></script>
<script src="/js/bootstrap-dropdown.js"></script>
<script src="/js/bootstrap-scrollspy.js"></script>
<script src="/js/bootstrap-tab.js"></script>
<script src="/js/bootstrap-tooltip.js"></script>
<script src="/js/bootstrap-popover.js"></script>
<script src="/js/bootstrap-button.js"></script>
<script src="/js/bootstrap-collapse.js"></script>
<script src="/js/bootstrap-carousel.js"></script>
<script src="/js/bootstrap-typeahead.js"></script>
<script src="/js/bootstrap-affix.js"></script>
<script>
_386 = {
fastLoad: false ,
onePass: false ,
speedFactor: 1
};
function ThisYear() {
document.getElementById('thisyear').innerHTML = new Date().getFullYear();
};
</script></body>
</html>