🧠 اندروید واقعاً چی اجرا میکنه؟
«Android Runs ELF Files — Everything Else Is Just Layers»
تا حالا برات سوال شده:
چطور برنامهای که با
Python
JavaScript
Flutter
Kotlin
یا حتی C++
نوشته شده، روی اندروید اجرا میشه؟
مگه نگفتن اندروید فقط برای Java و Kotlin هست؟
واقعیت خیلی سادهتر و جالبتره 👇
🧩 حقیقت پایهای
اندروید در اصل یک سیستمعامل مبتنی بر لینوکس است.
و لینوکس فقط یک چیز اجرا میکند:
فایلهای ELF (Executable and Linkable Format)
📌 CPU فقط «کد ماشین» میفهمد.
نه Java.
نه Python.
نه JavaScript.
هر زبانی که استفاده کنی، در نهایت باید تبدیل شود به:
Machine Code → ELF → CPU
همین.
🚪 دو راه واقعی اجرای کد در اندروید
اندروید فقط دو مسیر اصلی دارد:
مسیر اول: Java / Kotlin → DEX → ART → Native
روند اجرای اپهای معمولی:
1️⃣ شما با Java یا Kotlin کد مینویسی
2️⃣ تبدیل میشود به DEX (Dalvik bytecode)
3️⃣ هنگام نصب، ART آن را کامپایل میکند
4️⃣ خروجی نهایی: کد native در قالب ELF
ART چیست؟
ART همان Android Runtime است.
خود ART هم یک فایل ELF است به نام:
📌 نکته مهم:
وقتی اپ اجرا میشود، در واقع دیگر bytecode اجرا نمیشود؛
بلکه کد native واقعی اجرا میشود.
مسیر دوم: Native Code با NDK
در این روش:
با C یا C++ کد مینویسی
با NDK کامپایل میشود
خروجی .so میدهد
.so یک ELF است
مستقیم توسط CPU اجرا میشود
این روش برای:
🎮 بازیها (Unity, Unreal)
⚡ موتورهای JavaScript
🐍 اجرای Python
💙 Flutter
و کتابخانههای سنگین
استفاده میشود.
🐍 پس Python روی اندروید چطور کار میکند؟
جادو نیست.
کاری که انجام میشود:
مفسر CPython را به صورت native کامپایل میکنند
تبدیل به یک فایل .so
اپ آن را load میکند
حالا میتوانی Python اجرا کنی
همین اتفاق برای JavaScript هم میافتد:
V8 یا Hermes کامپایل میشوند
به صورت native اجرا میشوند
کد JS را اجرا میکنند
Flutter هم همینطور:
Dart VM به صورت native اجرا میشود
📌 همه چیز در نهایت به ELF ختم میشود.
🚀 وقتی روی آیکون اپ میزنی چه اتفاقی میافتد؟
اینجا بخش جذاب ماجراست 👇
1️⃣ Launcher یک Intent میفرستد
2️⃣ ActivityManager بررسی میکند
3️⃣ اگر پروسه وجود نداشته باشد، از Zygote میخواهد یکی بسازد
4️⃣ Zygote خودش را fork میکند
5️⃣ اپ جدید در واقع یک کپی از Zygote است
6️⃣ ActivityThread.main() اجرا میشود
7️⃣ lifecycle شروع میشود
Zygote چیست؟
Zygote یک پروسه خاص است که هنگام بوت اجرا میشود و:
ART را preload میکند
کلاسهای framework را لود میکند
آماده است تا سریع اپ جدید بسازد
📌 اپ شما از صفر ساخته نمیشود؛
یک fork از Zygote است.
🧠 چرا مستقیم executable نمیسازیم؟
چرا مثل لینوکس دسکتاپ فقط یک ELF ندهیم اجرا شود؟
چند دلیل مهم:
🔐 امنیت
📦 سازگاری با چند معماری (ARM / x86)
⚙️ بهینهسازی هنگام نصب
♻️ Garbage Collection
📱 مدیریت lifecycle اپ
ART این مزایا را فراهم میکند.
🧬 جمعبندی مهندسی
اندروید فقط ELF اجرا میکند.
بقیه چیزها فقط لایه هستند.
React Native؟
لایه.
Flutter؟
لایه.
Python؟
لایه.
Java/Kotlin؟
لایه.
همهشان در نهایت:
Your Code
↓
Runtime (ART / V8 / Dart / CPython)
↓
Native Machine Code
↓
ELF
↓
CPU
🎯 نتیجه مهم
اندروید یک سیستمعامل عمومی است که executable اجرا میکند.
هیچ جادویی وجود ندارد.
فقط لایههای انتزاعی وجود دارد.
و هرچه لایهها را بهتر بفهمی،
درک عمیقتری از معماری اندروید و اجرای اپها خواهی داشت.
🔗لینک مقاله:
https://blog.azzahid.com/posts/android-runs-elf-files-everything-else-is-just-layers/
@androidSec_fa
«Android Runs ELF Files — Everything Else Is Just Layers»
تا حالا برات سوال شده:
چطور برنامهای که با
Python
JavaScript
Flutter
Kotlin
یا حتی C++
نوشته شده، روی اندروید اجرا میشه؟
مگه نگفتن اندروید فقط برای Java و Kotlin هست؟
واقعیت خیلی سادهتر و جالبتره 👇
🧩 حقیقت پایهای
اندروید در اصل یک سیستمعامل مبتنی بر لینوکس است.
و لینوکس فقط یک چیز اجرا میکند:
فایلهای ELF (Executable and Linkable Format)
📌 CPU فقط «کد ماشین» میفهمد.
نه Java.
نه Python.
نه JavaScript.
هر زبانی که استفاده کنی، در نهایت باید تبدیل شود به:
Machine Code → ELF → CPU
همین.
🚪 دو راه واقعی اجرای کد در اندروید
اندروید فقط دو مسیر اصلی دارد:
مسیر اول: Java / Kotlin → DEX → ART → Native
روند اجرای اپهای معمولی:
1️⃣ شما با Java یا Kotlin کد مینویسی
2️⃣ تبدیل میشود به DEX (Dalvik bytecode)
3️⃣ هنگام نصب، ART آن را کامپایل میکند
4️⃣ خروجی نهایی: کد native در قالب ELF
ART چیست؟
ART همان Android Runtime است.
خود ART هم یک فایل ELF است به نام:
libart.so📌 نکته مهم:
وقتی اپ اجرا میشود، در واقع دیگر bytecode اجرا نمیشود؛
بلکه کد native واقعی اجرا میشود.
مسیر دوم: Native Code با NDK
در این روش:
با C یا C++ کد مینویسی
با NDK کامپایل میشود
خروجی .so میدهد
.so یک ELF است
مستقیم توسط CPU اجرا میشود
این روش برای:
🎮 بازیها (Unity, Unreal)
⚡ موتورهای JavaScript
🐍 اجرای Python
💙 Flutter
و کتابخانههای سنگین
استفاده میشود.
🐍 پس Python روی اندروید چطور کار میکند؟
جادو نیست.
کاری که انجام میشود:
مفسر CPython را به صورت native کامپایل میکنند
تبدیل به یک فایل .so
اپ آن را load میکند
حالا میتوانی Python اجرا کنی
همین اتفاق برای JavaScript هم میافتد:
V8 یا Hermes کامپایل میشوند
به صورت native اجرا میشوند
کد JS را اجرا میکنند
Flutter هم همینطور:
Dart VM به صورت native اجرا میشود
📌 همه چیز در نهایت به ELF ختم میشود.
🚀 وقتی روی آیکون اپ میزنی چه اتفاقی میافتد؟
اینجا بخش جذاب ماجراست 👇
1️⃣ Launcher یک Intent میفرستد
2️⃣ ActivityManager بررسی میکند
3️⃣ اگر پروسه وجود نداشته باشد، از Zygote میخواهد یکی بسازد
4️⃣ Zygote خودش را fork میکند
5️⃣ اپ جدید در واقع یک کپی از Zygote است
6️⃣ ActivityThread.main() اجرا میشود
7️⃣ lifecycle شروع میشود
Zygote چیست؟
Zygote یک پروسه خاص است که هنگام بوت اجرا میشود و:
ART را preload میکند
کلاسهای framework را لود میکند
آماده است تا سریع اپ جدید بسازد
📌 اپ شما از صفر ساخته نمیشود؛
یک fork از Zygote است.
🧠 چرا مستقیم executable نمیسازیم؟
چرا مثل لینوکس دسکتاپ فقط یک ELF ندهیم اجرا شود؟
چند دلیل مهم:
🔐 امنیت
📦 سازگاری با چند معماری (ARM / x86)
⚙️ بهینهسازی هنگام نصب
♻️ Garbage Collection
📱 مدیریت lifecycle اپ
ART این مزایا را فراهم میکند.
🧬 جمعبندی مهندسی
اندروید فقط ELF اجرا میکند.
بقیه چیزها فقط لایه هستند.
React Native؟
لایه.
Flutter؟
لایه.
Python؟
لایه.
Java/Kotlin؟
لایه.
همهشان در نهایت:
Your Code
↓
Runtime (ART / V8 / Dart / CPython)
↓
Native Machine Code
↓
ELF
↓
CPU
🎯 نتیجه مهم
اندروید یک سیستمعامل عمومی است که executable اجرا میکند.
هیچ جادویی وجود ندارد.
فقط لایههای انتزاعی وجود دارد.
و هرچه لایهها را بهتر بفهمی،
درک عمیقتری از معماری اندروید و اجرای اپها خواهی داشت.
🔗لینک مقاله:
https://blog.azzahid.com/posts/android-runs-elf-files-everything-else-is-just-layers/
@androidSec_fa
Zahid’s Blog
Android Runs ELF Files: Everything Else Is Just Layers
If you’ve ever wondered how apps written in Python, JavaScript, or C++ can run on Android when everyone says “Android is for Java and Kotlin,” you’re asking the right question. The answer isn’t complicated, but it does require understanding what Android actually…
👍4❤1👎1
🚨 کشف یک بدافزار خطرناک در فریمور اندروید – Keenadu
محققان امنیتی یک بدافزار جدید به نام Keenadu را کشف کردهاند که مستقیماً داخل فریمور (Firmware) برخی دستگاههای اندرویدی جاسازی شده است. این یعنی حتی قبل از اینکه کاربر برنامهای نصب کند، دستگاه آلوده است!
🔎 این بدافزار چه کاری انجام میدهد؟
▪️ در سطح سیستمی اجرا میشود و داخل تمام اپها تزریق میشود
▪️ میتواند مجوزهای اپها را دستکاری کند
▪️ اطلاعات دستگاه را جمعآوری و ارسال کند
▪️ موتور جستجو را در مرورگر تغییر دهد (Search Hijacking)
▪️ کلیک و نصب جعلی برای کسب درآمد تبلیغاتی انجام دهد
▪️ حتی بدون اطلاع کاربر به سبد خرید فروشگاههای آنلاین کالا اضافه کند
⚠️ نکته مهم:
در برخی موارد، آلودگی در مرحله ساخت فریمور رخ داده؛ یعنی دستگاه از کارخانه آلوده خارج شده است. حتی بعضی آپدیتهای OTA هم آلوده گزارش شدهاند.
🧩 این بدافزار با چند باتنت بزرگ اندرویدی مثل Triada و BADBOX ارتباط فنی دارد و به صورت ماژولار کار میکند؛ یعنی میتواند بعداً ماژولهای جدید (از جمله جاسوسی) دانلود کند.
📊 طبق آمار، بیش از ۱۳ هزار کاربر در کشورهای مختلف تحت تأثیر این تهدید قرار گرفتهاند.
🛡 اگر دستگاه آلوده باشد چه باید کرد؟
✔️ بررسی وجود آپدیت رسمی و سالم از سمت سازنده
✔️ در صورت آلودگی فریمور، تنها راه قطعی فلش کردن فریمور تمیز است
✔️ اگر فقط یک اپ آلوده باشد، حذف آن کافی است
✔️ در صورت مشکوک بودن رفتار دستگاه (تبلیغات عجیب، تغییر موتور جستجو، نصبهای ناخواسته)، بررسی امنیتی جدی توصیه میشود
📌 جمعبندی:
Keenadu یک بدافزار پیشرفته در سطح سیستم است که نشان میدهد تهدیدات اندرویدی وارد مرحله جدیدی شدهاند — جایی که حتی خود سیستم عامل هم میتواند آلوده باشد.
#امنیت_سایبری #اندروید #بدافزار #Keenadu #CyberSecurity
🔗لینک مقاله:
https://securelist.com/keenadu-android-backdoor/118913/
@androidSec_fa
محققان امنیتی یک بدافزار جدید به نام Keenadu را کشف کردهاند که مستقیماً داخل فریمور (Firmware) برخی دستگاههای اندرویدی جاسازی شده است. این یعنی حتی قبل از اینکه کاربر برنامهای نصب کند، دستگاه آلوده است!
🔎 این بدافزار چه کاری انجام میدهد؟
▪️ در سطح سیستمی اجرا میشود و داخل تمام اپها تزریق میشود
▪️ میتواند مجوزهای اپها را دستکاری کند
▪️ اطلاعات دستگاه را جمعآوری و ارسال کند
▪️ موتور جستجو را در مرورگر تغییر دهد (Search Hijacking)
▪️ کلیک و نصب جعلی برای کسب درآمد تبلیغاتی انجام دهد
▪️ حتی بدون اطلاع کاربر به سبد خرید فروشگاههای آنلاین کالا اضافه کند
⚠️ نکته مهم:
در برخی موارد، آلودگی در مرحله ساخت فریمور رخ داده؛ یعنی دستگاه از کارخانه آلوده خارج شده است. حتی بعضی آپدیتهای OTA هم آلوده گزارش شدهاند.
🧩 این بدافزار با چند باتنت بزرگ اندرویدی مثل Triada و BADBOX ارتباط فنی دارد و به صورت ماژولار کار میکند؛ یعنی میتواند بعداً ماژولهای جدید (از جمله جاسوسی) دانلود کند.
📊 طبق آمار، بیش از ۱۳ هزار کاربر در کشورهای مختلف تحت تأثیر این تهدید قرار گرفتهاند.
🛡 اگر دستگاه آلوده باشد چه باید کرد؟
✔️ بررسی وجود آپدیت رسمی و سالم از سمت سازنده
✔️ در صورت آلودگی فریمور، تنها راه قطعی فلش کردن فریمور تمیز است
✔️ اگر فقط یک اپ آلوده باشد، حذف آن کافی است
✔️ در صورت مشکوک بودن رفتار دستگاه (تبلیغات عجیب، تغییر موتور جستجو، نصبهای ناخواسته)، بررسی امنیتی جدی توصیه میشود
📌 جمعبندی:
Keenadu یک بدافزار پیشرفته در سطح سیستم است که نشان میدهد تهدیدات اندرویدی وارد مرحله جدیدی شدهاند — جایی که حتی خود سیستم عامل هم میتواند آلوده باشد.
#امنیت_سایبری #اندروید #بدافزار #Keenadu #CyberSecurity
🔗لینک مقاله:
https://securelist.com/keenadu-android-backdoor/118913/
@androidSec_fa
👍3
Media is too big
VIEW IN TELEGRAM
📱 شیزوکو (Shizuku) چیه و چطور نصب میشه؟
شیزوکو یه ابزار کاربردی برای اندرویده که به بعضی برنامهها اجازه میده بدون روت، به دسترسیهای سیستمی دست پیدا کنن. یعنی میتونی کارهای پیشرفته انجام بدی بدون اینکه گوشی رو روت کنی 👌
🔹 کاربردها:
▫️ اجرای دستورات سیستمی
▫️ دادن دسترسی پیشرفته به اپها
▫️ جایگزین سبک برای روت در بعضی کارها
⚠️ توجه: خود شیزوکو بهتنهایی کاری نمیکنه و باید اپهای سازگار باهاش نصب باشن.
━━━━━━━━━━━━━━
🛠 آموزش نصب (بدون روت)
1️⃣ نصب برنامه
از Google Play برنامه Shizuku رو نصب کن.
2️⃣ فعال کردن Developer Options
Settings > About phone
روی Build number هفت بار بزن.
3️⃣ روشن کردن Wireless debugging
Settings > Developer options
گزینه Wireless debugging رو روشن کن.
بعد بزن روی Pair device with pairing code.
4️⃣ برنامه Shizuku رو باز کن →
Start via Wireless debugging →
کد Pairing رو وارد کن →
Start
━━━━━━━━━━━━━━
🔄 نکته مهم
بعد از هر بار ریاستارت گوشی باید دوباره Shizuku رو Start کنی.
━━━━━━━━━━━━━━
#شیزوکو #Shizuku #آموزش_اندروید #ترفند_اندروید #بدون_روت
📢 آیدی کانال: @androidSec_fa
شیزوکو یه ابزار کاربردی برای اندرویده که به بعضی برنامهها اجازه میده بدون روت، به دسترسیهای سیستمی دست پیدا کنن. یعنی میتونی کارهای پیشرفته انجام بدی بدون اینکه گوشی رو روت کنی 👌
🔹 کاربردها:
▫️ اجرای دستورات سیستمی
▫️ دادن دسترسی پیشرفته به اپها
▫️ جایگزین سبک برای روت در بعضی کارها
⚠️ توجه: خود شیزوکو بهتنهایی کاری نمیکنه و باید اپهای سازگار باهاش نصب باشن.
━━━━━━━━━━━━━━
🛠 آموزش نصب (بدون روت)
1️⃣ نصب برنامه
از Google Play برنامه Shizuku رو نصب کن.
2️⃣ فعال کردن Developer Options
Settings > About phone
روی Build number هفت بار بزن.
3️⃣ روشن کردن Wireless debugging
Settings > Developer options
گزینه Wireless debugging رو روشن کن.
بعد بزن روی Pair device with pairing code.
4️⃣ برنامه Shizuku رو باز کن →
Start via Wireless debugging →
کد Pairing رو وارد کن →
Start
━━━━━━━━━━━━━━
🔄 نکته مهم
بعد از هر بار ریاستارت گوشی باید دوباره Shizuku رو Start کنی.
━━━━━━━━━━━━━━
#شیزوکو #Shizuku #آموزش_اندروید #ترفند_اندروید #بدون_روت
📢 آیدی کانال: @androidSec_fa
👍3
📱 آموزش حذف برنامههای اضافی اندروید (بدون روت!)
اگر از برنامههای پیشفرض و مزاحم گوشی (Bloatware) خسته شدی، یک روش امن و ساده وجود دارد که بدون روت میتوانی آنها را حذف کنی 👇
🔹 چرا حذف بعضی اپها سخت است؟
بسیاری از گوشیها با اپهای از پیش نصبشده میآیند که معمولاً توسط سازنده قفل شدهاند و حذف مستقیمشان ممکن نیست.
✅ راهحل پیشنهادی
با ترکیب دو برنامه زیر میتوانی این اپها را پاک کنی:
• Shizuku
• Canta Debloater
✨ مزیت مهم:
بدون روت، کمریسک و نسبتاً ساده
🪜 خلاصه مراحل:
1️⃣ فعال کردن Developer Options
2️⃣ روشن کردن Wireless Debugging
3️⃣ اجرای Shizuku
4️⃣ نصب Canta و حذف برنامههای اضافی
این برنامه رو میتونید از گوگل پلی یا apkpure دانلود کنید.
⚠️ نکته مهم:
اپهایی که برچسب قرمز دارند را حذف نکن؛ ممکن است به سیستم آسیب بزند.
🔗 لینک آموزش کامل:
https://www.zoomit.ir/software-application/456454-uninstall-bloatware-apps/?utm_source=Telegram
—
#اندروید #آموزش_اندروید #حذف_برنامه_اضافی #bloatware #ترفند_اندروید #Shizuku #Canta
@androidSec_fa
اگر از برنامههای پیشفرض و مزاحم گوشی (Bloatware) خسته شدی، یک روش امن و ساده وجود دارد که بدون روت میتوانی آنها را حذف کنی 👇
🔹 چرا حذف بعضی اپها سخت است؟
بسیاری از گوشیها با اپهای از پیش نصبشده میآیند که معمولاً توسط سازنده قفل شدهاند و حذف مستقیمشان ممکن نیست.
✅ راهحل پیشنهادی
با ترکیب دو برنامه زیر میتوانی این اپها را پاک کنی:
• Shizuku
• Canta Debloater
✨ مزیت مهم:
بدون روت، کمریسک و نسبتاً ساده
🪜 خلاصه مراحل:
1️⃣ فعال کردن Developer Options
2️⃣ روشن کردن Wireless Debugging
3️⃣ اجرای Shizuku
4️⃣ نصب Canta و حذف برنامههای اضافی
این برنامه رو میتونید از گوگل پلی یا apkpure دانلود کنید.
⚠️ نکته مهم:
اپهایی که برچسب قرمز دارند را حذف نکن؛ ممکن است به سیستم آسیب بزند.
🔗 لینک آموزش کامل:
https://www.zoomit.ir/software-application/456454-uninstall-bloatware-apps/?utm_source=Telegram
—
#اندروید #آموزش_اندروید #حذف_برنامه_اضافی #bloatware #ترفند_اندروید #Shizuku #Canta
@androidSec_fa
زومیت
آموزش حذف برنامههای پیشفرض و غیرقابل حدف از اندروید - زومیت
با استفاده از دو اپلیکیشن معرفیشده در این مقاله میتوانید برنامههای پیشفرض و حذفنشدنی اندروید را بدون روت و کامپیوتر، سریع و امن پاک کنید.
👍3
🔐 تحلیل یک آسیبپذیری Intent Redirection در Samsung Dialer
توی این مقاله، نویسنده یک باگ امنیتی با شناسه SVE-2025–1217 رو بررسی کرده که مربوط به الگوی معروف Intent Redirection در اندرویده.
📌 ماجرا از چه قراره؟
در اندروید، Intent مثل یک پیام برای اجرای یک Activity یا سرویسه. مشکل وقتی پیش میاد که یک Activity صادرشده (exported) بدون اعتبارسنجی کافی، Intent دریافتی از بیرون رو مستقیماً اجرا یا فوروارد کنه.
📌 چیزی که مقاله کشف کرده:
- یک Activity در Samsung Dialer از بیرون قابل دسترسه
- این Activity یک Intent تودرتو (nested intent) رو از extra دریافت میکنه
- فقط یک چک سطحی (resolve) انجام میده
- و بعد Intent داخلی رو با "startActivity()" اجرا میکنه
⚠️ چرا این خطرناکه؟
در این سناریو، اپ Dialer (که دسترسی بالاتری داره) ناخواسته نقش «واسط» رو بازی میکنه و ممکنه یک Intent کنترلشده توسط مهاجم رو اجرا کنه. این دقیقاً الگوی کلاسیک Intent Redirection محسوب میشه.
🎯 نکته امنیتی مهم برای دولوپرها:
اگر Intent تودرتو از ورودی خارجی میگیرید:
- هرگز مستقیم اجراش نکنید
- مقصد رو allowlist کنید
- extraها و URIها رو sanitize کنید
- و اگر لازم نیست، Activity رو exported نگذارید
📝 مقاله:
https://medium.com/@happyjester80/intent-redirection-in-a-samsung-dialer-duplicate-sve-2025-1217-0160b0d79a74
#AndroidSecurity #Samsung #IntentRedirection #MobileSecurity #BugBounty #AppSec #CyberSecurity
📣 @androidSec_fa
توی این مقاله، نویسنده یک باگ امنیتی با شناسه SVE-2025–1217 رو بررسی کرده که مربوط به الگوی معروف Intent Redirection در اندرویده.
📌 ماجرا از چه قراره؟
در اندروید، Intent مثل یک پیام برای اجرای یک Activity یا سرویسه. مشکل وقتی پیش میاد که یک Activity صادرشده (exported) بدون اعتبارسنجی کافی، Intent دریافتی از بیرون رو مستقیماً اجرا یا فوروارد کنه.
📌 چیزی که مقاله کشف کرده:
- یک Activity در Samsung Dialer از بیرون قابل دسترسه
- این Activity یک Intent تودرتو (nested intent) رو از extra دریافت میکنه
- فقط یک چک سطحی (resolve) انجام میده
- و بعد Intent داخلی رو با "startActivity()" اجرا میکنه
⚠️ چرا این خطرناکه؟
در این سناریو، اپ Dialer (که دسترسی بالاتری داره) ناخواسته نقش «واسط» رو بازی میکنه و ممکنه یک Intent کنترلشده توسط مهاجم رو اجرا کنه. این دقیقاً الگوی کلاسیک Intent Redirection محسوب میشه.
🎯 نکته امنیتی مهم برای دولوپرها:
اگر Intent تودرتو از ورودی خارجی میگیرید:
- هرگز مستقیم اجراش نکنید
- مقصد رو allowlist کنید
- extraها و URIها رو sanitize کنید
- و اگر لازم نیست، Activity رو exported نگذارید
📝 مقاله:
https://medium.com/@happyjester80/intent-redirection-in-a-samsung-dialer-duplicate-sve-2025-1217-0160b0d79a74
#AndroidSecurity #Samsung #IntentRedirection #MobileSecurity #BugBounty #AppSec #CyberSecurity
📣 @androidSec_fa
Medium
Intent Redirection in a Samsung Dialer (Duplicate) SVE-2025–1217
بِسْمِ اللَّـهِ الرَّحْمَـٰنِ الرَّحِيمِ
👍2
🔥 معرفی ابزار MythDetector برای امنیت اپهای اندروید
اگر در حوزه AppSec، ریورسانجینیرینگ یا توسعه اندروید فعالیت میکنی، این پروژه میتونه برات جالب باشه 👇
🔎 ابزار MythDetector یک موتور سبک برای تشخیص Runtime Instrumentation در اندروید است که تمرکز اصلی آن روی شناسایی ابزار معروف Frida میباشد.
💡 کاربردها:
• تشخیص Hook شدن اپ
• افزایش امنیت اپهای اندرویدی
• استفاده در تست نفوذ موبایل
• مناسب برای محققان امنیت
⚠️ نکته مهم: این ابزار فقط تلاش میکند وجود Frida را شناسایی کند و تضمین ۱۰۰٪ برای جلوگیری از بایپس ندارد.
🔗 لینک ریپو:
https://github.com/arvinjangid/MythDetector
اگر با Frida کار کردی، نظرت درباره این روشهای detection چیه؟ 🤔
#AndroidSecurity #AppSec #Frida #ReverseEngineering #MobileSecurity #Pentest #CyberSecurity
📢 @androidSec_fa
اگر در حوزه AppSec، ریورسانجینیرینگ یا توسعه اندروید فعالیت میکنی، این پروژه میتونه برات جالب باشه 👇
🔎 ابزار MythDetector یک موتور سبک برای تشخیص Runtime Instrumentation در اندروید است که تمرکز اصلی آن روی شناسایی ابزار معروف Frida میباشد.
💡 کاربردها:
• تشخیص Hook شدن اپ
• افزایش امنیت اپهای اندرویدی
• استفاده در تست نفوذ موبایل
• مناسب برای محققان امنیت
⚠️ نکته مهم: این ابزار فقط تلاش میکند وجود Frida را شناسایی کند و تضمین ۱۰۰٪ برای جلوگیری از بایپس ندارد.
🔗 لینک ریپو:
https://github.com/arvinjangid/MythDetector
اگر با Frida کار کردی، نظرت درباره این روشهای detection چیه؟ 🤔
#AndroidSecurity #AppSec #Frida #ReverseEngineering #MobileSecurity #Pentest #CyberSecurity
📢 @androidSec_fa
GitHub
GitHub - arvinjangid/MythDetector: MythDetector is a lightweight Android application designed to help developers and testers detect…
MythDetector is a lightweight Android application designed to help developers and testers detect presence of Frida in Android apps. - arvinjangid/MythDetector
👍3
🚨 بدافزار بانکی جدید اندروید: Massiv
یک تروجان پیشرفته اندرویدی با نام Massiv شناسایی شده که با جعل اپهای IPTV پخش میشود و هدفش تصاحب کامل گوشی قربانی است.
📺 IPTV یعنی چی؟
خیلی خلاصه: سرویس تماشای شبکههای تلویزیونی از طریق اینترنت (بهجای ماهواره یا آنتن).
🔍 قابلیتهای اصلی Massiv:
• حمله Overlay و ساخت صفحه جعلی روی اپهای بانکی
• Keylogging و سرقت اطلاعات ورود
• رهگیری SMS و نوتیفیکیشن برای گرفتن OTP
• استریم زنده صفحه گوشی برای مهاجم
• کنترل کامل گوشی از راه دور با Accessibility
• سوءاستفاده از هویت قربانی برای افتتاح حساب مالی
📊 این بدافزار در کمپینهای هدفمند (بهویژه جنوب اروپا) در تقلبهای واقعی دیده شده و حتی اپ دولتی gov.pt هم هدف بوده است.
🔗 لینک مقاله:
https://www.threatfabric.com/blogs/massiv-when-your-iptv-app-terminates-your-savings
📢 @androidSec_fa
#Massiv #بدافزار #اندروید #BankingTrojan #IPTV
یک تروجان پیشرفته اندرویدی با نام Massiv شناسایی شده که با جعل اپهای IPTV پخش میشود و هدفش تصاحب کامل گوشی قربانی است.
📺 IPTV یعنی چی؟
خیلی خلاصه: سرویس تماشای شبکههای تلویزیونی از طریق اینترنت (بهجای ماهواره یا آنتن).
🔍 قابلیتهای اصلی Massiv:
• حمله Overlay و ساخت صفحه جعلی روی اپهای بانکی
• Keylogging و سرقت اطلاعات ورود
• رهگیری SMS و نوتیفیکیشن برای گرفتن OTP
• استریم زنده صفحه گوشی برای مهاجم
• کنترل کامل گوشی از راه دور با Accessibility
• سوءاستفاده از هویت قربانی برای افتتاح حساب مالی
📊 این بدافزار در کمپینهای هدفمند (بهویژه جنوب اروپا) در تقلبهای واقعی دیده شده و حتی اپ دولتی gov.pt هم هدف بوده است.
🔗 لینک مقاله:
https://www.threatfabric.com/blogs/massiv-when-your-iptv-app-terminates-your-savings
📢 @androidSec_fa
#Massiv #بدافزار #اندروید #BankingTrojan #IPTV
❤2👍1
🚨 بدافزار جدید اندرویدی با کمک هوش مصنوعی مولد!
محققان ESET از کشف بدافزاری به نام PromptSpy خبر دادهاند که برای اولین بار در جریان اجرای حمله از Generative AI (Google Gemini) استفاده میکند. این بدافزار با تحلیل زنده رابط کاربری گوشی، از AI میپرسد کجا کلیک کند تا خودش را در Recent Apps قفل و ماندگار کند — یعنی دیگر به اسکریپت ثابت وابسته نیست و میتواند با محیطهای مختلف سازگار شود.
🔴 نکته مهم: PromptSpy علاوه بر این، از طریق VNC امکان کنترل کامل گوشی، گرفتن اسکرینشات، ضبط صفحه و حتی سرقت دادههای لاکاسکرین را فراهم میکند.
📄 لینک مقاله:
https://www.welivesecurity.com/en/eset-research/promptspy-ushers-in-era-android-threats-using-genai/
#PromptSpy #AndroidMalware #GenerativeAI #Gemini #MobileSecurity #ThreatIntel #CyberSecurity
@androidSec_fa
محققان ESET از کشف بدافزاری به نام PromptSpy خبر دادهاند که برای اولین بار در جریان اجرای حمله از Generative AI (Google Gemini) استفاده میکند. این بدافزار با تحلیل زنده رابط کاربری گوشی، از AI میپرسد کجا کلیک کند تا خودش را در Recent Apps قفل و ماندگار کند — یعنی دیگر به اسکریپت ثابت وابسته نیست و میتواند با محیطهای مختلف سازگار شود.
🔴 نکته مهم: PromptSpy علاوه بر این، از طریق VNC امکان کنترل کامل گوشی، گرفتن اسکرینشات، ضبط صفحه و حتی سرقت دادههای لاکاسکرین را فراهم میکند.
📄 لینک مقاله:
https://www.welivesecurity.com/en/eset-research/promptspy-ushers-in-era-android-threats-using-genai/
#PromptSpy #AndroidMalware #GenerativeAI #Gemini #MobileSecurity #ThreatIntel #CyberSecurity
@androidSec_fa
👍3
📱 چرا بعضی گوشیها دو تا واتساپ اجرا میکنن؟
تا حالا دیدی روی یه گوشی، از یک برنامه چند نسخه همزمان اجرا میشه؟
مثلاً دو واتساپ با دو اکانت مختلف 🤔
این فقط «کلون ساده» نیست…
پشت صحنه معمولاً از یک تکنیک به نام مجازیسازی در سطح اپلیکیشن استفاده میشه.
🧠 ایده خیلی ساده است:
یک اپ میاد داخل خودش یه فضای جدا میسازه و برنامههای دیگه رو اونجا اجرا میکنه — انگار یه گوشی کوچیک داخل گوشی!
📌 نتیجه برای کاربر:
• میتونی چند اکانت داشته باشی
• برنامهها از هم جدا به نظر میان
• بدون نیاز به چند گوشی کارت راه میافته
در پست بعدی میبینیم دقیقاً این سیستم چطور کار میکنه و چرا برای امنیت مهمه 👀
📢 @androidSec_fa
#Android #Tech #Mobile
تا حالا دیدی روی یه گوشی، از یک برنامه چند نسخه همزمان اجرا میشه؟
مثلاً دو واتساپ با دو اکانت مختلف 🤔
این فقط «کلون ساده» نیست…
پشت صحنه معمولاً از یک تکنیک به نام مجازیسازی در سطح اپلیکیشن استفاده میشه.
🧠 ایده خیلی ساده است:
یک اپ میاد داخل خودش یه فضای جدا میسازه و برنامههای دیگه رو اونجا اجرا میکنه — انگار یه گوشی کوچیک داخل گوشی!
📌 نتیجه برای کاربر:
• میتونی چند اکانت داشته باشی
• برنامهها از هم جدا به نظر میان
• بدون نیاز به چند گوشی کارت راه میافته
در پست بعدی میبینیم دقیقاً این سیستم چطور کار میکنه و چرا برای امنیت مهمه 👀
📢 @androidSec_fa
#Android #Tech #Mobile
👍3❤1
⚙️ پشت صحنه مجازیسازی اپها
حالا بریم ببینیم داخل سیستم چه خبر است 👇
در این روش معمولاً دو نقش داریم:
🔹 Host (میزبان) → برنامهای که محیط مجازی را میسازد
🔹 Guest (مهمان) → برنامهای که داخل آن محیط اجرا میشود
میزبان مثل یک «مدیر صحنه» عمل میکند و اجرای برنامه مهمان را کنترل میکند.
✅ چرا این کار مفید است؟
• اجرای چند اکانت از یک اپ
• تست برنامهها در محیط جدا
• اجرای برخی اپها روی دستگاههای محدود
⚠️ اما نکته مهم:
چون برنامه مهمان داخل محیط میزبان اجرا میشود، اگر میزبان قابل اعتماد نباشد ممکن است ریسک امنیتی ایجاد شود.
در پست آخر جمعبندی میکنیم چرا این موضوع برای امنیت اندروید مهم شده 👇
📢 @androidSec_fa
#Android #Security #Tech
حالا بریم ببینیم داخل سیستم چه خبر است 👇
در این روش معمولاً دو نقش داریم:
🔹 Host (میزبان) → برنامهای که محیط مجازی را میسازد
🔹 Guest (مهمان) → برنامهای که داخل آن محیط اجرا میشود
میزبان مثل یک «مدیر صحنه» عمل میکند و اجرای برنامه مهمان را کنترل میکند.
✅ چرا این کار مفید است؟
• اجرای چند اکانت از یک اپ
• تست برنامهها در محیط جدا
• اجرای برخی اپها روی دستگاههای محدود
⚠️ اما نکته مهم:
چون برنامه مهمان داخل محیط میزبان اجرا میشود، اگر میزبان قابل اعتماد نباشد ممکن است ریسک امنیتی ایجاد شود.
در پست آخر جمعبندی میکنیم چرا این موضوع برای امنیت اندروید مهم شده 👇
📢 @androidSec_fa
#Android #Security #Tech
👍3❤1
🛡 چرا مجازیسازی برای امنیت مهم است؟
دیدیم که مجازیسازی اپها خیلی کاربردی است…
اما چرا متخصصهای امنیت بهش حساساند؟ 🤨
مسئله اینجاست که در بعضی پیادهسازیها:
❗ برنامه میزبان کنترل زیادی روی برنامه مهمان دارد
❗ اگر میزبان مخرب باشد، ممکن است سوءاستفاده کند
❗ تشخیص این محیطها برای بعضی ابزارهای امنیتی سخت است
به همین خاطر گوگل ابزارهایی مثل Play Integrity API و Android Virtualization Framework را معرفی کرده تا برنامهها بتوانند سالم بودن محیط اجرا را بررسی کنند.
---
📖 اگر میخواهی عمیقتر و فنیتر بخوانی:
https://blog.azzahid.com/posts/android-app-virtualization/
📢 @androidSec_fa
#AndroidSecurity #CyberSecurity #InfoSec #Android
دیدیم که مجازیسازی اپها خیلی کاربردی است…
اما چرا متخصصهای امنیت بهش حساساند؟ 🤨
مسئله اینجاست که در بعضی پیادهسازیها:
❗ برنامه میزبان کنترل زیادی روی برنامه مهمان دارد
❗ اگر میزبان مخرب باشد، ممکن است سوءاستفاده کند
❗ تشخیص این محیطها برای بعضی ابزارهای امنیتی سخت است
به همین خاطر گوگل ابزارهایی مثل Play Integrity API و Android Virtualization Framework را معرفی کرده تا برنامهها بتوانند سالم بودن محیط اجرا را بررسی کنند.
---
📖 اگر میخواهی عمیقتر و فنیتر بخوانی:
https://blog.azzahid.com/posts/android-app-virtualization/
📢 @androidSec_fa
#AndroidSecurity #CyberSecurity #InfoSec #Android
Zahid’s Blog
What Is Android Application-Level Virtualization
Application-level virtualization in Android is an advanced technology that allows users to run multiple instances of the same app on a single device. Essentially, one app acts as a host, creating isolated virtual spaces where guest apps run as if they were…
👍3
چرا Burp هیچی نشون نمیده؟!
اگه تست نفوذ موبایل کار کرده باشی، احتمالاً این سناریو برات آشناست:
✅ پروکسی ست
✅ CA نصب
✅ Burp روشن
ولی…
❌ هیچ ترافیکی نمیاد!
خیلیا اینجا فکر میکنن:
«وای این اپ خیلی امنه 😐»
اما خبر خوب 👇
تو اکثر مواقع مشکل از امن بودن اپ نیست — از روش interception ماست.
توی این سری پست میخوایم مقاله زیر رو شیر فهم باز کنیم و ببینیم چطور ترافیک اپهای مدرن رو بگیریم 👇
پست بعدی: روش کلاسیک interception اصلاً چی بود؟
#MobilePentest #BurpSuite #AndroidSecurity #iOSSecurity
📡 @androidSec_fa
اگه تست نفوذ موبایل کار کرده باشی، احتمالاً این سناریو برات آشناست:
✅ پروکسی ست
✅ CA نصب
✅ Burp روشن
ولی…
❌ هیچ ترافیکی نمیاد!
خیلیا اینجا فکر میکنن:
«وای این اپ خیلی امنه 😐»
اما خبر خوب 👇
تو اکثر مواقع مشکل از امن بودن اپ نیست — از روش interception ماست.
توی این سری پست میخوایم مقاله زیر رو شیر فهم باز کنیم و ببینیم چطور ترافیک اپهای مدرن رو بگیریم 👇
پست بعدی: روش کلاسیک interception اصلاً چی بود؟
#MobilePentest #BurpSuite #AndroidSecurity #iOSSecurity
📡 @androidSec_fa
👍5
روش کلاسیک interception (قدیما چه ساده بود 😌)
روش سنتی گرفتن ترافیک موبایل این بود:
1️⃣ نصب CA مربوط به Burp روی گوشی
2️⃣ ست کردن proxy سیستم
3️⃣ اجرای اپ → دیدن ترافیک در Burp
و واقعاً هم کار میکرد!
📱 اکثر اپها:
به user CA اعتماد میکردن
proxy سیستم رو استفاده میکردن
SSL pinning هم خیلی کم بود
ولی کمکم اوضاع عوض شد… 😈
امروز خیلی وقتها همین روش ساده fail میشه.
چرا؟
پست بعدی: دشمن شماره ۱ — SSL Pinning 🔒
#MobilePentest #BurpSuite #SSLpinning
📡 @androidSec_fa
روش سنتی گرفتن ترافیک موبایل این بود:
1️⃣ نصب CA مربوط به Burp روی گوشی
2️⃣ ست کردن proxy سیستم
3️⃣ اجرای اپ → دیدن ترافیک در Burp
و واقعاً هم کار میکرد!
📱 اکثر اپها:
به user CA اعتماد میکردن
proxy سیستم رو استفاده میکردن
SSL pinning هم خیلی کم بود
ولی کمکم اوضاع عوض شد… 😈
امروز خیلی وقتها همین روش ساده fail میشه.
چرا؟
پست بعدی: دشمن شماره ۱ — SSL Pinning 🔒
#MobilePentest #BurpSuite #SSLpinning
📡 @androidSec_fa
👍4
دشمن شماره ۱: SSL Pinning 🔥
SSL Pinning یعنی اپ فقط به یک certificate خاص اعتماد میکنه.
نتیجه چی میشه؟
تو هر کاری بکنی:
✅ CA نصب
✅ proxy درست
❌ ولی handshake fail میشه
نشونههاش:
تو Burp چیزی نمیبینی
اپ خطای network میده
یا silently fail میکنه
📌 امروز SSL pinning تقریباً everywhere هست.
پس راهحل چیه؟
👉 باید pinning رو در runtime بایپس کنیم.
ابزار محبوب:
Frida
Objection
unpinning scripts
اما… داستان هنوز تموم نشده 😏
پست بعدی: محدودیتهای جدید اندروید
#SSLpinning #Frida #MobileSecurity
📡 @androidSec_fa
SSL Pinning یعنی اپ فقط به یک certificate خاص اعتماد میکنه.
نتیجه چی میشه؟
تو هر کاری بکنی:
✅ CA نصب
✅ proxy درست
❌ ولی handshake fail میشه
نشونههاش:
تو Burp چیزی نمیبینی
اپ خطای network میده
یا silently fail میکنه
📌 امروز SSL pinning تقریباً everywhere هست.
پس راهحل چیه؟
👉 باید pinning رو در runtime بایپس کنیم.
ابزار محبوب:
Frida
Objection
unpinning scripts
اما… داستان هنوز تموم نشده 😏
پست بعدی: محدودیتهای جدید اندروید
#SSLpinning #Frida #MobileSecurity
📡 @androidSec_fa
👍4
دشمن شماره ۲: اندروید جدید کارو سخت کرد 😬
از Android 11 به بعد، گوگل بازی رو عوض کرد.
مشکلات جدید:
❌ خیلی از اپها به user CA اعتماد نمیکنن
❌ دسترسی به system cert سختتر شده
❌ از Android 13 به بعد remount تقریباً قفل شده
یعنی چی به زبان ساده؟
حتی اگر pinning نباشه
باز هم ممکنه ترافیک نیاد!
برای همین pentesterها رفتن سمت:
root
Magisk modules
system CA injection
ولی هنوز یه دشمن مخفی مونده… 👀
پست بعدی: چرا Flutter اپها اعصاب خوردکنن!
#AndroidSecurity #MobilePentest #Magisk
📡 @androidSec_fa
از Android 11 به بعد، گوگل بازی رو عوض کرد.
مشکلات جدید:
❌ خیلی از اپها به user CA اعتماد نمیکنن
❌ دسترسی به system cert سختتر شده
❌ از Android 13 به بعد remount تقریباً قفل شده
یعنی چی به زبان ساده؟
حتی اگر pinning نباشه
باز هم ممکنه ترافیک نیاد!
برای همین pentesterها رفتن سمت:
root
Magisk modules
system CA injection
ولی هنوز یه دشمن مخفی مونده… 👀
پست بعدی: چرا Flutter اپها اعصاب خوردکنن!
#AndroidSecurity #MobilePentest #Magisk
📡 @androidSec_fa
👍5
🧵 دشمن مخفی: Flutter apps 😈 (مهم!)
اینجا اون نکته طلایی مقاله است 👇
خیلی از اپهای Flutter:
🚫 proxy سیستم رو ignore میکنن
🚫 stack شبکه خودشونو دارن
🚫 حتی بدون SSL pinning هم ترافیک نمیاد!
یعنی ممکنه:
❌ CA درست
❌ pinning هم نیست
❌ ولی Burp خالیه
و pentester گیج میشه 😵💫
راهحل چیه؟
👉 باید socket رو hook کنیم، نه proxy رو.
و اینجاست که ابزار خفن وارد میشه…
پست بعدی: frida4burp و راهحل عملی 🚀
#Flutter #Frida #MobilePentest
📡 @androidSec_fa
اینجا اون نکته طلایی مقاله است 👇
خیلی از اپهای Flutter:
🚫 proxy سیستم رو ignore میکنن
🚫 stack شبکه خودشونو دارن
🚫 حتی بدون SSL pinning هم ترافیک نمیاد!
یعنی ممکنه:
❌ CA درست
❌ pinning هم نیست
❌ ولی Burp خالیه
و pentester گیج میشه 😵💫
راهحل چیه؟
👉 باید socket رو hook کنیم، نه proxy رو.
و اینجاست که ابزار خفن وارد میشه…
پست بعدی: frida4burp و راهحل عملی 🚀
#Flutter #Frida #MobilePentest
📡 @androidSec_fa
👍3
🧵 راهحل عملی: Frida + frida4burp 🚀
برای اپهای مدرن معمولاً این combo جواب میده:
✅ تزریق CA درست
✅ بایپس SSL pinning با Frida
✅ redirect سوکت با frida4burp
ایده frida4burp چیه؟
به جای اینکه منتظر proxy سیستم باشیم:
👉 میاد socket اپ رو hook میکنه
👉 ترافیک رو مستقیم میفرسته Burp
🔥 برای Flutter خیلی جواب میده.
سناریوی طلایی مقاله:
CA injection
unpinning
socket redirection
با این ترکیب، اکثر اپها باز میشن.
پست آخر: جمعبندی سریع + لینک مقاله 📚
#Frida #BurpSuite #FlutterSecurity
📡 @androidSec_fa
برای اپهای مدرن معمولاً این combo جواب میده:
✅ تزریق CA درست
✅ بایپس SSL pinning با Frida
✅ redirect سوکت با frida4burp
ایده frida4burp چیه؟
به جای اینکه منتظر proxy سیستم باشیم:
👉 میاد socket اپ رو hook میکنه
👉 ترافیک رو مستقیم میفرسته Burp
🔥 برای Flutter خیلی جواب میده.
سناریوی طلایی مقاله:
CA injection
unpinning
socket redirection
با این ترکیب، اکثر اپها باز میشن.
پست آخر: جمعبندی سریع + لینک مقاله 📚
#Frida #BurpSuite #FlutterSecurity
📡 @androidSec_fa
👍3🔥1
🧵 جمعبندی نهایی + لینک مقاله 🎯
اگر Burp چیزی نشون نداد، این چکلیست رو برو:
✅ آیا SSL pinning هست؟ → unpin با Frida
✅ Android جدید هست؟ → system CA injection
✅ Flutter هست؟ → استفاده از frida4burp
✅ هنوز بسته؟ → ترکیبی جلو برو
پیام اصلی مقاله:
❗ روش کلاسیک proxy دیگه همیشه کافی نیست
✅ runtime instrumentation پادشاه جدیده
📚 مقاله کامل اینجاست:
https://medium.com/@justmobilesec/practical-mobile-traffic-interception-1481e33d974e
اگر این سری به کارت خورد، برای رفیق pentesterت بفرست 🤝
#MobilePentest #AppSec #Frida #BurpSuite #Flutter
📡 @androidSec_fa
اگر Burp چیزی نشون نداد، این چکلیست رو برو:
✅ آیا SSL pinning هست؟ → unpin با Frida
✅ Android جدید هست؟ → system CA injection
✅ Flutter هست؟ → استفاده از frida4burp
✅ هنوز بسته؟ → ترکیبی جلو برو
پیام اصلی مقاله:
❗ روش کلاسیک proxy دیگه همیشه کافی نیست
✅ runtime instrumentation پادشاه جدیده
📚 مقاله کامل اینجاست:
https://medium.com/@justmobilesec/practical-mobile-traffic-interception-1481e33d974e
اگر این سری به کارت خورد، برای رفیق pentesterت بفرست 🤝
#MobilePentest #AppSec #Frida #BurpSuite #Flutter
📡 @androidSec_fa
👍3❤1🎉1
🔍 داستان واقعی از پیدا کردن باگ در یک اپ موبایل
یه مقالهای هست میخوام اینو براتون بازش کنم که متوجه بشید چه جوری اومده این کارو انجام داده 👇
یه محقق امنیتی اومده یه اپ موبایل به اسم AeroParts رو بررسی کنه. اولین چیزی که فهمید این بود که این اپ با Cordova ساخته شده.
❓ Cordova یعنی چی؟
خیلی ساده: یعنی برنامهنویس بهجای اینکه اپ رو با جاوا یا کاتلین بنویسه، با HTML و JavaScript نوشته و بعد پیچیده داخل اپ موبایل.
📱 ترجمه خیلی ساده:
اپ Cordova ≈ یه سایت که به صورتwebview توی اپ نمایش میده
چرا این مهمه؟
چون وقتی اینطوری باشه، کدهای اصلی اپ معمولاً راحتتر لو میرن.
---
🪜 مرحله اول — کالبدشکافی APK
محقق اومد فایل APK رو دیکامپایل کرد (یعنی بازش کرد ببینه داخلش چیه).
چی پیدا کرد؟
- کلیدهای رمزنگاری داخل کد 😬
- آدرس سرورهای بکاند
- endpointهای API
یعنی عملاً نقشه پشتصحنه اپ دستش اومد.
⚠️ نکته مهم:
تا اینجا هنوز هیچ هکی روی سرور انجام نشده بود — فقط تحلیل آفلاین بود.
---
🔑 مرحله دوم — شکستن قفل دیتابیس
توی کد دید دیتابیسهای اپ با یه کلید مخفی باز میشن.
اما چون کلید داخل کد هاردکد شده بود، با یه کم دنبال کردن توانست:
✅ کلید اول رو دربیاره
✅ الگوریتم رمزگشایی رو تقلید کنه
✅ کلید نهایی رو بسازه
🎯 نتیجه: دسترسی کامل به دیتای لوکال اپ
این خودش یه ضعف امنیتی جدیه.
---
🌐 مرحله سوم — نگاه به سرور
اینجا داستان جذاب میشه.
داخل کد اپ یه endpoint دید برای دانلود فایل:
fetchFile
این یعنی اپ از سرور فایل میگیره.
اینجا محقق گفت:
«نکنه این ورودی path رو فیلتر نکرده باشن؟ 🤔»
---
🚨 مرحله چهارم — تست خطرناک (LFI)
یه درخواست دستکاریشده فرستاد به سرور:
بهجای فایل معمولی، گفت:
../../../../etc/passwd
اگر اهل لینوکس باشی میدونی این فایل لیست یوزرهای سیستمه.
و چی شد؟
سرور بدون هیچ مقاومتی فایل رو برگردوند!
---
💥 یعنی دقیقاً چه اتفاقی افتاد؟
✅ سرور خودش فایلهای لوکالش رو لو داد
به این میگن:
🔥 Local File Inclusion (LFI)
---
🧠 تصویر ذهنی خیلی ساده
حالت سالم 👌
تو میگی: «این فایل مجاز رو بده»
سرور: «چشم»
حالت خراب 🚨
تو میگی: «برو از پوشههای سیستمی خودت فایل بیار»
سرور: «بفرما»
---
📌 جمعبندی
این اپ سه تا اشتباه بزرگ داشت:
- 🔴 استفاده از Cordova بدون محافظت کافی
- 🔴 نگهداری کلیدها داخل کد
- 🔴 فیلتر نکردن path در سرور
---
#BugBounty #CyberSecurity #MobileSecurity #AndroidSecurity #Pentest #EthicalHacking #Infosec #LFI #OWASP
@androidSec_fa
یه مقالهای هست میخوام اینو براتون بازش کنم که متوجه بشید چه جوری اومده این کارو انجام داده 👇
یه محقق امنیتی اومده یه اپ موبایل به اسم AeroParts رو بررسی کنه. اولین چیزی که فهمید این بود که این اپ با Cordova ساخته شده.
❓ Cordova یعنی چی؟
خیلی ساده: یعنی برنامهنویس بهجای اینکه اپ رو با جاوا یا کاتلین بنویسه، با HTML و JavaScript نوشته و بعد پیچیده داخل اپ موبایل.
📱 ترجمه خیلی ساده:
اپ Cordova ≈ یه سایت که به صورتwebview توی اپ نمایش میده
چرا این مهمه؟
چون وقتی اینطوری باشه، کدهای اصلی اپ معمولاً راحتتر لو میرن.
---
🪜 مرحله اول — کالبدشکافی APK
محقق اومد فایل APK رو دیکامپایل کرد (یعنی بازش کرد ببینه داخلش چیه).
چی پیدا کرد؟
- کلیدهای رمزنگاری داخل کد 😬
- آدرس سرورهای بکاند
- endpointهای API
یعنی عملاً نقشه پشتصحنه اپ دستش اومد.
⚠️ نکته مهم:
تا اینجا هنوز هیچ هکی روی سرور انجام نشده بود — فقط تحلیل آفلاین بود.
---
🔑 مرحله دوم — شکستن قفل دیتابیس
توی کد دید دیتابیسهای اپ با یه کلید مخفی باز میشن.
اما چون کلید داخل کد هاردکد شده بود، با یه کم دنبال کردن توانست:
✅ کلید اول رو دربیاره
✅ الگوریتم رمزگشایی رو تقلید کنه
✅ کلید نهایی رو بسازه
🎯 نتیجه: دسترسی کامل به دیتای لوکال اپ
این خودش یه ضعف امنیتی جدیه.
---
🌐 مرحله سوم — نگاه به سرور
اینجا داستان جذاب میشه.
داخل کد اپ یه endpoint دید برای دانلود فایل:
fetchFile
این یعنی اپ از سرور فایل میگیره.
اینجا محقق گفت:
«نکنه این ورودی path رو فیلتر نکرده باشن؟ 🤔»
---
🚨 مرحله چهارم — تست خطرناک (LFI)
یه درخواست دستکاریشده فرستاد به سرور:
بهجای فایل معمولی، گفت:
../../../../etc/passwd
اگر اهل لینوکس باشی میدونی این فایل لیست یوزرهای سیستمه.
و چی شد؟
سرور بدون هیچ مقاومتی فایل رو برگردوند!
---
💥 یعنی دقیقاً چه اتفاقی افتاد؟
✅ سرور خودش فایلهای لوکالش رو لو داد
به این میگن:
🔥 Local File Inclusion (LFI)
---
🧠 تصویر ذهنی خیلی ساده
حالت سالم 👌
تو میگی: «این فایل مجاز رو بده»
سرور: «چشم»
حالت خراب 🚨
تو میگی: «برو از پوشههای سیستمی خودت فایل بیار»
سرور: «بفرما»
---
📌 جمعبندی
این اپ سه تا اشتباه بزرگ داشت:
- 🔴 استفاده از Cordova بدون محافظت کافی
- 🔴 نگهداری کلیدها داخل کد
- 🔴 فیلتر نکردن path در سرور
---
#BugBounty #CyberSecurity #MobileSecurity #AndroidSecurity #Pentest #EthicalHacking #Infosec #LFI #OWASP
@androidSec_fa
👍4👏1
🧪 چطور شکارچیها حدس میزنن یه endpoint احتمال LFI داره؟
(ادامه داستان قبلی — کاربردی و به درد باگبانتی)
ببین، هیچ هکری از اول نمیدونه یه سرور LFI داره.
همهچی از «بو کشیدن» شروع میشه 👃
اینا مهمترین نشونههایی هست که محققها دنبالش میگردن:
---
🔍 نشونه ۱ — endpoint دانلود فایل
اگر جایی دیدی اپ از این مدل URL استفاده میکنه، چراغ ذهنت روشن بشه:
- download
- fetch
- file
- getFile
- view
- open
چرا؟
چون اینا معمولاً با path فایل کار میکنن.
دقیقاً همینطوری تو این مقاله به fetchFile شک شد.
---
🔍 نشونه ۲ — وجود پارامتر path یا file
اگر توی URL چیزی شبیه این دیدی:
?file=
?path=
?name=
?download=
👈 اینا طلاست برای تست LFI
---
🔍 نشونه ۳ — اپ فایل آفلاین میگیره
اگر اپ:
- دیتابیس دانلود میکنه
- مدیا میگیره
- آپدیت آفلاین داره
معمولاً یه endpoint فایل پشتشه.
---
🧪 تست خیلی پایه که همه میزنن
اولین تست ساده معمولاً اینه:
../../../../etc/passwd
اگر سرور اینو برگردونه = بازی تمومه 😈
---
⚠️ ولی حواست باشه
خیلی وقتا سرورها نیمهمقاومن.
یعنی ممکنه:
- ارور بدن
- بخشی از فایل بیاد
- یا رفتار مشکوک نشون بدن
همینها هم سرنخ طلاییه.
---
🎯 توصیه حرفهای
همیشه این زنجیره ذهنی رو داشته باش:
APK → پیدا کردن endpoint → تست ورودیها → شکار باگ
دقیقاً همون کاری که تو این مقاله انجام شد.
---
🔗 لینک مقاله (جایگزین کن با لینک اصلی):
https://example.com/sample-ahttps://ahmadaabdulla.medium.com/a-step-by-step-guide-to-uncovering-vulnerabilities-in-a-mobile-app-5a6b05e6b23b
---
#BugBounty #CyberSecurity #WebSecurity #LFI #Pentesting #EthicalHacker #AppSec #OWASP #HackerLife
@androidSec_fa
(ادامه داستان قبلی — کاربردی و به درد باگبانتی)
ببین، هیچ هکری از اول نمیدونه یه سرور LFI داره.
همهچی از «بو کشیدن» شروع میشه 👃
اینا مهمترین نشونههایی هست که محققها دنبالش میگردن:
---
🔍 نشونه ۱ — endpoint دانلود فایل
اگر جایی دیدی اپ از این مدل URL استفاده میکنه، چراغ ذهنت روشن بشه:
- download
- fetch
- file
- getFile
- view
- open
چرا؟
چون اینا معمولاً با path فایل کار میکنن.
دقیقاً همینطوری تو این مقاله به fetchFile شک شد.
---
🔍 نشونه ۲ — وجود پارامتر path یا file
اگر توی URL چیزی شبیه این دیدی:
?file=
?path=
?name=
?download=
👈 اینا طلاست برای تست LFI
---
🔍 نشونه ۳ — اپ فایل آفلاین میگیره
اگر اپ:
- دیتابیس دانلود میکنه
- مدیا میگیره
- آپدیت آفلاین داره
معمولاً یه endpoint فایل پشتشه.
---
🧪 تست خیلی پایه که همه میزنن
اولین تست ساده معمولاً اینه:
../../../../etc/passwd
اگر سرور اینو برگردونه = بازی تمومه 😈
---
⚠️ ولی حواست باشه
خیلی وقتا سرورها نیمهمقاومن.
یعنی ممکنه:
- ارور بدن
- بخشی از فایل بیاد
- یا رفتار مشکوک نشون بدن
همینها هم سرنخ طلاییه.
---
🎯 توصیه حرفهای
همیشه این زنجیره ذهنی رو داشته باش:
APK → پیدا کردن endpoint → تست ورودیها → شکار باگ
دقیقاً همون کاری که تو این مقاله انجام شد.
---
🔗 لینک مقاله (جایگزین کن با لینک اصلی):
https://example.com/sample-ahttps://ahmadaabdulla.medium.com/a-step-by-step-guide-to-uncovering-vulnerabilities-in-a-mobile-app-5a6b05e6b23b
---
#BugBounty #CyberSecurity #WebSecurity #LFI #Pentesting #EthicalHacker #AppSec #OWASP #HackerLife
@androidSec_fa
👍4❤1