SerHack's Blog
March 21, 2023
Analysis of a Redline Based Malware
In recent months, there have been increasing attempts to spread malware via some seemingly ‘harmless’ programs, luring the user through rewards such as sending money with cryptocurrency or NFT-themed gifts. The unsuspecting user by running an ‘innocent’ executable to access prizes becomes part of a botnet.In this post, I would like to analyse in some detail the ‘Redline-EDIRA’ malware campaign that has been going on since around the beginning of May 2022. -Continue to read the article on SerHac...
Published on March 21, 2023 17:00
December 5, 2022
Reverse Engineering the OMNIVISION OS12D40 Driver
In Part 6 of our series, we structured a theoretical discussion regarding the devices, how they communicate, and the hardware elements that enable this.Another very interesting folder that we come across during our investigation is /lib, which includes all the libraries for executables and device drivers developed by Novatek that allow the operating system to properly configure and set up all the hardware devices connected to the board. To begin, let’s introduce the topic by explaining what dev...
Published on December 05, 2022 16:00
November 29, 2022
Techniques for Setting up Peripherals via PIO and DMA
In Part 5 of our series, we focused our efforts on understanding how the firmware was structured. In doing so, we analyzed the folder with the system executables and delved into the various configuration files.Before tackling the analysis of a device driver, we need to focus on some hardware aspects that will come in handy for this article. These aspects include the management of peripherals and input/output devices. -Continue to read the article on SerHack.me
Published on November 29, 2022 16:00
Techniques for Setting up Peripherals via DMA and PIO
In Part 5 of our series, we focused our efforts on understanding how the firmware was structured. In doing so, we analyzed the folder with the system executables and delved into the various configuration files.Before tackling the analysis of a device driver, we need to focus on some hardware aspects that will come in handy for this article. These aspects include the management of peripherals and input/output devices. -Continue to read the article on SerHack.me
Published on November 29, 2022 16:00
November 22, 2022
Exploring the Operating System of Reolink RLC-810A
In Part 4 of our series, we focused on the file system and before concluding, we were able to extract files from two UBIFS images contained within the firmware. Here in Part 5, we will try to better understand the structure of the root file system by introducing some basic concepts of the operating system used by Reolink RLC-810A, namely Linux.Why Linux? Linux kernel is one of the most widely used operating systems in the world, if not the first by popularity. -Continue to read the article on S...
Published on November 22, 2022 16:00
Exploring the Operating System of Reolink RLC-801A
In Part 4 of our series, we focused on the file system and before concluding, we were able to extract files from two UBIFS images contained within the firmware. Here in Part 5, we will try to better understand the structure of the root file system by introducing some basic concepts of the operating system used by Reolink RLC-810A, namely Linux.Why Linux? Linux kernel is one of the most widely used operating systems in the world, if not the first by popularity. -Continue to read the article on S...
Published on November 22, 2022 16:00
November 15, 2022
Understanding the UBI File System in Embedded Devices
In Part 3 of our series, we explored the hardware device elements of the Reolink RLC-810A ― focusing on the NAND memory. We continue with Part 4 of our exploration into an IP camera firmware through introducing the concept of a file system. Furthermore, we will explore the technical reasons for choosing the UBI File System (UBIFS), a file system used especially for a category of mass storage, and we will unpack the UBIFS part using the ubi-extract tool. -Continue to read the article on SerHack.m...
Published on November 15, 2022 16:00
November 8, 2022
Dissecting Reolink RLC-810A Hardware: A Detailed View
Now that we know how device booting works, let’s try to extract some parts from the firmware that we downloaded in Part 1 of our series. Here, we are interested in two main sections: the Linux kernel (which takes care of booting the device services) and the flattened device tree (which allows the kernel to know the hardware configuration a priori without inspecting each device).During the course of this article, we will also proceed as hardware manufacturers and, with a critical eye, comment on...
Published on November 08, 2022 16:00
November 1, 2022
Booting an Embedded OS: the Booting and U-Boot Phase
In the first post, we introduced embedded devices and started to scour through and extract information from Reolink IP camera firmware. At the end of the post, we ran Binwalk, which showed various types of files such as Flattened Device Tree, uImage Header, and UBI File System.For the second article in this Reolink series, we are going to introduce the theory regarding the various stages of booting the operating system and explore the different types of files. -Continue to read the article on S...
Published on November 01, 2022 17:00
October 25, 2022
Introduction to Firmware Analysis of a Reolink IP Camera
Embedded devices continue to increase in popularity and one category, in particular, that has become en vogue as of late is the Internet of Things (IoT). The emergence of these next generation technologies has driven the home automation evolution from simple light bulbs to cloud-connected printers, smart refrigerators, etc.However, this evolution has some disadvantages: The perennial need to be connected to the Internet and an increase in the potential attack surface. -Continue to read the arti...
Published on October 25, 2022 17:00


