Based on the information provided, it seems that you're dealing with a vulnerability in an embedded system's polyapp application running firmware version 6.4.7.4477. The issue is related to a stack-based buffer overflow within SDP data processing code which can be exploited due to predictable memory layout and lack of proper Address Space Layout Randomization (ASLR) for shared libraries.
To exploit this vulnerability, you're considering using Return-Oriented Programming (ROP) since direct execution of shellcode on the stack is not possible due to NX bit protection. However, because the ASLR does not affect the loading address of shared objects like libc, you can use fixed addresses within these libraries for ROP gadgets.
Here's a step-by-step outline of how you might proceed with exploiting this vulnerability:
1. Identify Suitable Gadgets
Firstly, identify useful ROP gadgets in libc that do not contain null bytes in their addresses. You can use tools like ROPgadget, Ropper, or similar to find these gadgets.
For example:
- pop eax; ret - Useful for setting up registers.
- int 0x80 (syscall) - For making
Read the full article at Rapid7 Blog
Want to create content about this topic? Use Nemati AI tools to generate articles, social posts, and more.





