# Reverse Engineering & Binary Exploitation

{% hint style="success" %}
Hack Responsibly.

Always ensure you have **explicit** permission to access any computer system **before** using any of the techniques contained in these documents. You accept full responsibility for your actions by applying any knowledge gained here.
{% endhint %}

{% hint style="danger" %}
Not much here yet...please feel free to contribute at [my GitHub page](https://github.com/zweilosec/Infosec-Notes).
{% endhint %}

[Ghidra](https://ghidra-sre.org/)!

{% embed url="<https://ghidra-sre.org/>" %}

* <https://github.com/onethawt/reverseengineering-reading-list> - Reverse engineering reading list
* <http://shell-storm.org/online/Online-Assembler-and-Disassembler/>
* <https://www.filesignatures.net/index.php?page=all> - File signatures for just about any file type

gdb plugin for exploits/creates patterns for ROP determination: `peda.py`/`pwndbg` \[gdb: pattern create ###]

ASLR Bypass/binary exploit/gdb:

* [Ippsec:HackTheBox - October](https://www.youtube.com/watch?v=K05mJazHhF4)
* [Ippsec:Camp CTF - Bitterman](https://www.youtube.com/watch?v=6S4A2nhHdWg)
* [pwnTools](https://github.com/Gallopsled/pwntools) - [documentation](http://docs.pwntools.com/en/stable/)
* [Binary Ninja](https://binary.ninja/)

[Packetstorm](https://packetstormsecurity.com/) /bin/sh shellcode

simple binary exploitation [Ippsec:HacktheBox - Sneaky](https://www.youtube.com/watch?v=1UGxjqTnuyo)

[protostar ctf](https://exploit-exercises.com/protostar/) for getting into binary exploitation

Find the location of a specific string to manipulate and its bit offset in an executable:`strings -t d <file> | grep <string to locate in ELF>`

If you like this content and would like to see more, please consider [buying me a coffee](https://www.buymeacoffee.com/zweilosec)!


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://zweilosec.gitbook.io/hackers-rest/os-agnostic/reverse-engineering-and-binary-exploitation.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
