وب نوشت شخصی محمد مهدی احمدیان

از «الف» امنیت تا «ی» فلسفه زندگی - عقل معاش در کنار عقل معاد حقیقت زندگی است.

۳ مطلب با کلمه‌ی کلیدی «تحلیل بدافزار» ثبت شده است

الگوریتم‌های تولید دامنه (DGA) در بدافزارها

الگوریتم‌های تولید دامنه (DGA) در بدافزارها

الگوریتم­های تولید دامنه(Domain generation algorithm ) ، قطعه کد­هایی هستند که امروزه باهدف تولید تعداد زیادی از دامنه ­های اینترنتی به‌صورت دوره­ای در بدافزارهای متعددی مورداستفاده قرار می­گیرند. هدف اصلی استفاده از این الگوریتم­ ها این بوده است که  بدافزارها در برابر روش‌های شناسایی لیست ایستای آدرس­های دامنه که به‌راحتی توسط مکانیزم‌های امنیتی لیست سفید و سیاه شناسایی می­شوند از درجه محافظت بالاتری برخوردار شوند. ازآنجایی‌که دامن ه­های تولیدی توسط این ­الگوریتم­های عموماً شبه تصادفی هستند و فرکانس تولید دامنه توسط این الگوریتم­ ها بسیار بالا است این الگوریتم ­ها توسط مکانیزم­های امنیتی لیست سیاه‌ وسفید کنونی به راحتی  شناسایی نمی­شوند و همین امر سبب شده است بسیاری از بدافزارها  به ویژه باجگیرافزارها و بات نت ها به طرق مختلف از این دامنه ­های استفاده نمایند. در کد ذیل نمونه‌ای از الگوریتم ­های تولید خودکار دامنه در بدافزارها آورده شده است.

کد ‏21: یک نمونه شبه کد الگوریتم DGA

suffix = ["anj", "ebf", "arm", "pra", "aym", "unj","ulj", "uag", "esp", "kot", "onv", "edc"]

 

def generate_daily_domain():

 t = GetLocalTime()

 p = 8

 return generate_domain(t, p)

def scramble_date(t, p):

 return (((t.month ^ t.day) + t.day)*p) +t.day + t.year

 

def generate_domain(t, p):

 if t.year < 2014:

 t.year = 2014

 s = scramble_date(t, p)

 c1 = (((t.year >> 2) & 0x3fc0) + s) % 25 + ’a’

 c2 = (t.month + s) % 10 + ’a’

 c3 = ((t.year & 0xff) + s) % 25 + ’a’

 if t.day*2 <0|| t.day*2 >9:

 c4 = (t.day*2) % 25 + ’a’

 else:

 c4 = t.day% 10 +1

 return c1 +’h’+c2+c3+’x’+c4+suffix[t.month - 1]

 

ازآنجایی‌که طراح یا کنترل‌کننده باجگیرافزار از الگوریتم جاسازی‌شده در باجگیرافزارها ی خود اطلاع دارد برخی از دامنه ­هایی را که به‌صورت قطعی الگوریتم تولید می­کند را به کمک روش‌های ثبت دامنه در لحظه[1] و آماده خدمات‌دهی به باجگیرافزارهای مورد هدف می­کند. ازآنجایی‌که عموماً تعداد دامنه ­های تولیدی بسیار بالا می­باشد اتخاذ تصمیمات و اعمال مکانیزم­های امنیتی و پلیسی برای شناسایی و انهدام سرور­های فرمان و کنترل کاری بسیار دشوار به‌حساب می­ آید. از این دامنه‌ها طراحان بدافزار استفاده‌های متعددی ازجمله ارسال فرمان و دریافت اطلاعات و به­روزرسانی بدافزارهای خود می‌نمایند. در بدافزارهای پیشرفته‌تر حتی شنود و رهگیری بستر ارتباطی با این دامنه ها نیز در بسیاری از موارد ناکارآمد است چراکه در این موارد بدافزارهای از مکانیزم های حفظ محرمانگی و حتی صحت داده‌ها نظیر سیستم‌های رمزنگاری کلید عمومی بهره می‌برند.


منبع: احمدیان، محمد مهدی، چارچوبی مبتنی بر تحلیل رفتار برنامه به‌منظور تشخیص باجگیر‌افزارها,پایان‌نامه کارشناسی ارشد دانشکده مهندسی کامپیوتر و فناوری اطلاعات، دانشگاه صنعتی امیرکبیر تهران، ایران،1394


[1] just in time registration

۰ نظر موافقین ۰ مخالفین ۰

تعریف باجگیرافزار

Ransomware که ما از واژه معادل «باجگیرافزار» برای آن استفاده می کنیم از ترکیب دو کلمه Ransom به معنای خون‌بها و Malware به معنای بدافزار تشکیل‌شده است. به‌طور عام باجگیرافزارها گونه ای از بدافزارها هستند که بعد از آلوده‌سازی یک سیستم رایانه‌ای دسترسی به سیستم و یا منابع آن را محدود می‌سازند، سپس طراح باجگیرافزار در ازای دریافت باج از قربانی، محدودیت ایجادشده را برطرف می‌کند [۱]. عملیات تخریبی باجگیرافزارها را می‌توان نوعی حمله ممانعت از خدمات و یا بهتر بگوییم ممانعت از منابع دانست که در حقیقت نقض ویژگی دسترس‌پذیری از نگاه امنیتی است . به طور کلی فرایند عملیاتی اکثر باجگیرافزارها به شکل ذیل می‌باشد. مراحل آن در ادامه توضیح داده می شود[۲].


باجگیرافزار ، بدافزار باجگیر

 
۰ نظر موافقین ۰ مخالفین ۰

قلاب سازی در تحلیل و طراحی بدافزار

در این پست ارائه خودم  در درس تحلیل آسیب پذیری های نرم افزار  با موضوع «قلاب سازی در تحلیل و طراحی بدافزار» را برای شما قرار داده ام. امیدوارم برای علاقمندان حوزه بدافزار مفید باشد.

 قلاب سازی, قلاب سازی پویا, تحلیل بدافزار, محمد مهدی احمدیان

دانلود در ادامه مطلب

۰ نظر موافقین ۰ مخالفین ۰