In this post we will analyse linux/x86/meterpreter/bind_tcp shellcode. If you haven’t read the part I, you can start from there:

Shellcode is basically a list of carefully crafted instructions that can be executed once the code is injected into a running application. Stack and heap-based buffer overflows are the most popular way of doing so.

I would recommend that you should do through the basics of shellcoding and MSFvenom before diving head first in this post. For the basics of shellcoding, I would recommend you go through the below mentioned blogs to catch up quickly.

TL;DR

Since we live in the…


In this post we will analyse linux/x86/meterpreter/reverse_tcp shellcode. If you haven’t read the part I, you can start from there:

Shellcode is basically a list of carefully crafted instructions that can be executed once the code is injected into a running application. Stack and heap-based buffer overflows are the most popular way of doing so.

I would recommend that you should do through the basics of shellcoding and MSFvenom before diving head first in this post. For the basics of shellcoding, I would recommend you go through the below mentioned blogs to catch up quickly.

TL;DR

Since we live in the…


In this post we will analyse linux/x86/exec shellcode.

Shellcode is basically a list of carefully crafted instructions that can be executed once the code is injected into a running application. Stack and heap-based buffer overflows are the most popular way of doing so.

I would recommend that you should do through the basics of shellcoding and MSFvenom before diving head first in this post. For the basics of shellcoding, I would recommend you go through the below mentioned blogs to catch up quickly.

TL;DR

Since we live in the era of widespread attention and time deficiency, here’s the summarised version of…


This post is about writing an insertion encoder for Linux/x86 shellcodes. I would recommend you should go through shellcoding basics before spending some time here.

Some basics first…

Shellcode is basically a list of carefully crafted instructions that can be executed once the code is injected into a running application. Stack and heap-based buffer overflows are the most popular way of doing so.

Shellcode Encoding is a process of converting shellcode into a form that is not easily recognized. This technique is generally used to antivirus evasion.

For the basics of shellcoding, I would recommend you go through the below…


Let’s consider a scenario where for some reason (maybe limited memory space) our entire shellcode can’t be placed into memory. To make the scenario much easier to understand, we can take an example of a simple buffer overflow.

What if when we try to exploit buffer overflow the memory looks as shown below:

| <Payload>|   <= only 40 bytes of space
| EIP |
...
| AAAA |
| AAAA |
| AAAA | <= Injection Point [Low Memory]

In the above case, we can only write a payload of 40 bytes. …


Let’s go through some of the basics.

Shellcode is basically a list of carefully crafted instructions that can be executed once the code is injected into a running application. Stack and heap-based buffer overflows are the most popular way of doing so.

A reverse shell is a type of shell in which the target machine communicates back to the attacking machine. The attacking machine has a listener port on which it receives the connection, which by using, code or command execution is achieved.

TL;DR

Since we live in the era of widespread attention and time deficiency, here’s the summarised version of…


Before diving into the technicalities, let’s go through some of the basics.

Shellcode is basically a list of carefully crafted instructions that can be executed once the code is injected into a running application. Stack and heap-based buffer overflows are the most popular way of doing so.

A bind shell is a type of shell, which, upon execution, actively listens for connections on a particular port. The attacker can then connect to this port in order to get shell access.

TL;DR

Since we live in the era of widespread attention and time deficiency, here’s the summarised version of this entire story:


Huh, well this sounds like fun. Let’s see if it’s really that fun…

This story began not so long ago. As always some hackers found a way to exploit the deserialization process. This so called insecure deserialization vulnerability was so severe that it nailed its name in the OWASP Top 10 in 2017 as A8:2017 Insecure Deserialization. This vulnerability allows attackers to transfer a payload using serialized objects. This happens when integrity checks are not in place and deserialized data is not sanitized or validated.

What is Serialization and Deserialization?

Serialization is the process of converting an object into a…

Aditya Chaudhary

Cyber Security Analyst [https://adityachaudhary.me]

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store