Security Analysis
11.5K subscribers
344 photos
50 videos
36 files
885 links
- Offensive Security (Red Teaming / PenTesting)
- BlueTeam (OperationSec, TreatHunting, DFIR)
- Reverse Engineering / Malware Analysis
- Web Security
- Cryptography
- Steganography
- Forensics
Contact : @DrPwner
Download Telegram
⭕️ تزریق کد در اندروید بدون نیاز به Ptrace

در این بلاگ پست با نحوه تزریق کتابخانه با استفاده از /proc/mem بدون نیاز به ptrace آشنا خواهید شد

این ابزار از پروژه Linux_injector ایده برداری شده و برای استفاده در اندروید port شده است

فرآیند تزریق شامل چند مرحله است:
اولین قدم این است که یک فانکشن را برای هایجک انتخاب کنید. همانطور که در پروژه اصلی اجرا شد، malloc یکی از رایج ترین اهداف است. آدرس malloc با خواندن /proc/maps، یافتن آدرس پایه libc و محاسبه آدرس مجازی فعلی malloc با افزودن افست آن به آدرس پایه پیدا می‌شود.

پس از یافتن آدرس، تابع هدف با شل کد مرحله اول بازنویسی می شود. شل کد وظیفه ایجاد یک Memory Region جدید، همگام سازی Thread ها و در نهایت اجرای شل کد مرحله دوم را بر عهده دارد.

شل کد مرحله دوم می تواند یکی از سه نوع باشد: shellcode loader، shellcode raw-dlopen که از dlopen برای بارگذاری یک کتابخانه مشترک از filesystem استفاده می کند، یا شل کد memfd-dlopen که dlopen را روی فایل memfd با محتویات ارائه شده توسط کاربر فراخوانی می کند.


Blog Post: Link
GitHub: Link

#Android #Ptrace
@securation