PDA

View Full Version : امنیت در تست برنامه های دیگران



eshpilen
یک شنبه 08 بهمن 1391, 11:44 صبح
میگم وقتی کسی فایل اجرایی برنامش رو میذاره واسه تست، اونوقت ما اجرا کنیم یوقت ممکنه هک بشیم؟ ممکنه هک بشیم و خودمون اصلا متوجه نشیم؟ ممکنه روی سیستممون یه برنامهء کنترل از راه دور کار بذاره؟

اگر بله، خب پس اصولا نباید برنامه های هیچ شخصی رو اجرا کنیم!

تازه حتی اگر کدمنبع هم باشه و بخوایم کامپایل کنیم بازم نیاز هست که کل سورس رو آدم نگاه کنه و بفهمه تا مطمئن باشه توش کد خطرناکی نداره.

راستی درمورد برنامه های کرک شده هم همین خطر امنیتی همیشه وجود داره. نه؟

واقعا چطور میشه در این دنیایی که این همه برنامه های ناشناس رو روی سیستم خودمون نصب و اجرا میکنیم، امنیت حداقلی داشته باشیم؟

حمید محمودی
یک شنبه 08 بهمن 1391, 12:52 عصر
سلام،


آیا تضمینی وجود دارد که این فایل حاوی Trojan نباشد؟

اگر منظور از تروجان ، همان کد مخربی است که به عنوان Backdoor عمل میکنه ، بله ، بررسی متن باینری فایل میتونه تضمین کنندهء وجود یا عدم وجود Backdoor باشه . این برنامه فارغ از ماهیتش ، قطعا" یک تروجان نیست . هر چند نمیفهمم چرا اینطوری Pack اش کرده و ResourceString مربوط به گروه Crack کنندهء peX داخل این برنامه دقیقا" چیکار میکنه !

تا Disassembly نشه چطور میشه از فایل باینری فهمید؟
یک فایروال هم میگه که آیا این فایل پورتی را باز کرد
حالا شاید اومدیم و از روش های دیگری مثل HTTP tunel/ ICMP,.....(Revese www shell)dاستفاده کرده بود بازم از باینری میشه فهمید ؟
تو معماری Win32 برنامه های لایهء کاربرد موظف به استفاده از توابع سیستم عامل هستند . فی المثل هیچ برنامهء سطح کاربردی نمیتونه یک اتصال شبکه ای ایجاد کنه بدون اینکه از WinSock استفاده کنه . فلذا با مطالعهء Import Table فایلهای باینری و درک نحوهء عملکرد توابع مورد کاربرد و اندک دانشی از اسمبلی ، میتونی بفهمی آیا یک برنامه اجرائی بالاخره یک زمانی یک اتصال شبکه ای ایجاد خواهد کرد یا خیر . چون برنامهء مذکور از WinSock استفاده نکرده ( و هیچ برنامهء سطح کرنلی هم نصب نکرده و قطعا دانش برنامه نویسش اینقدر نیست که بتونه از سطح کاربرد ، کد در Ring0 اجرا کنه ) پس منطقا این برنامه یک "تروجان" نیست .به نقل از توضیحات پست های 12و 15 رو در این تاپیک (http://barnamenevis.org/showthread.php?7509)؛ من زیاد متوجه نشدم از توضیحات ایشون؛ اگر کسی بیشتر میتونه توضیح بده، یا مقاله و/یا منبعی معرفی کنه، خوشحال میشیم ;)

r00tkit
یک شنبه 08 بهمن 1391, 15:19 عصر
بله دقیقا همه این چیزا ممکنه و اجرای فایل باینتری که هیچ هکر محترم می تونه حتی با فونت فایل یا فایل doc یا pdf یا خیلی چیزای دیگه توی سیستمت کد اجرا کنه و تو هیچی نفهمی یا حتی باکلیک روی یه لینک الوده مرور گرت رو اکسپلویت کنه و بتونه از راه دور روی سیستمت کد اجرا کنه و باز هم تو متوجه نشی


تو معماری Win32 برنامه های لایهء کاربرد موظف به استفاده از توابع سیستم عامل هستند . فی المثل هیچ برنامهء سطح کاربردی نمیتونه یک اتصال شبکه ای ایجاد کنه بدون اینکه از WinSock استفاده کنه . فلذا با مطالعهء Import Table فایلهای باینری و درک نحوهء عملکرد توابع مورد کاربرد و اندک دانشی از اسمبلی ، میتونی بفهمی آیا یک برنامه اجرائی بالاخره یک زمانی یک اتصال شبکه ای ایجاد خواهد کرد یا خیر . چون برنامهء مذکور از WinSock استفاده نکرده ( و هیچ برنامهء سطح کرنلی هم نصب نکرده و قطعا دانش برنامه نویسش اینقدر نیست که بتونه از سطح کاربرد ، کد در Ring0 اجرا کنه ) پس منطقا این برنامه یک "تروجان" نیست .

این مطلب کمی اشتباه هستش چون ممکنه بدافزار ادرس تابع ها رو توی رانتایم بدست بیاره پس IAT خالی داشته باشه برای متوجه شدن اینکه فایل چه غلطی می کنه باید دقیق انالیز بشه حتی ممکنه در شرایطی بدافزار احسای کنه توی محیط تست داره اجرا می شه و کار خاصی نکنه


اشپی : اوصیکم به گوگله و تقوا :|

silverfox
یک شنبه 08 بهمن 1391, 17:11 عصر
Antivirus + Sandbox + Virtual machine ،بسته به این که چقدر مشکوکی نسبت به اون برنامه می تونی از اینا استفاده کنی یا قبل از دانلود یه جا چک کنی لینکش رو(با این آنتی ویروس آنلاین ها)

FastCode
یک شنبه 08 بهمن 1391, 17:17 عصر
شما اگر یه سر به vupen بزنی دیگه طرف کامپیوتر نمیری

FastCode
یک شنبه 08 بهمن 1391, 17:31 عصر
Antivirus + Sandbox + Virtual machine ،بسته به این که چقدر مشکوکی نسبت به اون برنامه می تونی از اینا استفاده کنی یا قبل از دانلود یه جا چک کنی لینکش رو(با این آنتی ویروس آنلاین ها)
Dual Virtual Machine
یا یک ساختار سوم مثل mipsel یا aremel
qemu-system-mipsel -hda L1host
توی اون سیستم
qemu-system-x86_64 -hda L2host
بعدش از هر sandbox ی که دوست داری استفاده کن

من خودم تا حالا از armel استفاده میکردم
فکر میکنم مجبورم از امروز تغییرش بدم

سرعتش در بهترین حالت ۷۰٪ هاست ه و در بدترین به ۳۰ یا کمتر هم میرسه

اگر قرار باشه اتفاقی بیافته هیچ کدوم فایده نداره
برای شبکه:
بهترین روش برای هک نشدن اینه که در هاست میانی یک VPN به بیرون بزنید و ترافیک رو از اون bridge کنید
چون کارت های شبکه مجازی نقاط ضعف زیادی دارن
(آخرین exploit ه e1000 در kvm ه هنوز توی صفحه اول ه lkml ه)