jmp Ring_ZerO

; go to ring zero
نوشته شخصی و فنی

jmp Ring_ZerO

نوشته شخصی و فنی

  • ۱
  • ۰

Shellcode Analysis

سلام.

ابزارهای مختلفی برای آنالیز شلکدها هست، امروز دوتا ابزار رو معرفی میکنم که یکی به زبان پایتون ShellDetect که محض آشنایی و نحوه کدنویسی در پایتون هستش :دی

ابزار اصلی scdbg هست که برپایه libemu برای آنالیز شلکدها ساخته شده است. با این ابزار شلکدها رو emulate کرده و تمامی API های که شلکد میخاد فراخوانی کنه رو نشون میده.

در زیر یک تصویر نمونه رو میبینین :

JMP.Ring0

  • ۰
  • ۰

As organizations become ever more dependent on networked operations, they are increasingly vulnerable to attack by a variety of attackers, including criminals terrorists and nation states using cyber attacks. New malware attacks, including viruses, Trojans, and
worms, are constantly and rapidly emerging threats However, attackers often reuse code and techniques from previous attacks. Both by recognizing the reused elements from previous attacks and by detecting patterns in the types of modification and reuse observed, we can more rapidly develop defenses, make hypotheses about the source of the malware, and predict and prepare to defend against future attacks We achieve these objectives in Malware Analysis and Attribution using Genetic Information (MAAGI) by
adapting and extending concepts from biology and linguistics. First, analyzing the “genetics” of malware (i.e., reverse engineered representations of the origina program) provides critical information about the program that is not available by looking only at the executable program. Second, the evolutionary process of malware (i.e., the transformation from one species of malware to another) can provide insights into the ancestry of malware, characteristics of the attacker and where future attacks might come from and wha they might look like. Third, functional linguistics is the study of the intent behind communicative acts; its application to malware characterization can suppor the study of the intent behind malware behaviors. To this point in the program, we developed a system tha uses a range of reverse engineering techniques including static, dynamic, behavioral, and functiona analysis that clusters malware into families. We are also able to determine the malware lineage in some situations. Using behavioral and functional analysis we are also able to identify a number of functions and purposes of malware.

Download

  • ۰
  • ۰

Detection based on features is most popular way to  prevent malware these days. Current feature abstracting and matching methods are susceptible to obfuscation techniques,  and cannot deal with the variants which are emerging quickly.


This paper proposes a malware feature extracting method based on its behaviors. This method can abstract the critical behaviors of malware and the dependencies between them through dynamic analysis, and generate the features to defeat malware obfuscations considering semantic irrelevancy and semantic equivalency to improve the describing capabilities of the malware features. This paper also designs a corresponding detecting method based on these features. The experiment results show that our method is more resilient to malware obfuscation techniques, especially for real world malware
variants.

Download

  • ۰
  • ۰

کتاب Violent Python

سلامی دوباره.

خوب تقریبا بعد یک ماه اومد یه پستی بدم، بعد از این همه درگیری کاری و کنفرانس و ...

این کتاب رو شاید خیلیا بشناسن که خوندنش خالی از لطف نیست، مخصوصا دوستان عشق پایتون عین خودم :دی

Violent Python book

این کتاب 7 تا فصل داره :

  • Chapter 1: Introduction
  • Chapter 2: Penetration Testing with Python
  • Chapter 3: Forensic Investigations with Python
  • Chapter 4: Network Traffic Analysis with Python
  • Chapter 5: Wireless Mayhem with Python
  • Chapter 6: Web Recon With Python
  • Chapter 7: Antivirus Evasion with Python

این فایل رو بصورت تورنت میتونید دانلود کنید که راحت باشین.

لینک فایل تورنت [+]

http://bayanbox.ir/id/7835307116878828127?info

موفق باشین.

  • ۰
  • ۰

سلامی دوباره.

بعد از مدتها اومدم یک نکته کوچولو ولی کاربردی رو بگم، البته اونم واس آندروید کارها :دی

خوب دوستان عزیز گاهی شاید براتون اتفاق افتاده که برنامتون رو با emulator تست کردین، خوب همه چی ok اگر باگی بوده و .. رو در زمان اجراش فهمیدین که کجای برنامتون صحیح کار نمیکنه، بعد از شروع به کدنویسی کردین و رفع باگ و ایجاد تغییرات در برنامتون مدتی طول میکشه کارتون، حالا از دوباره میخایین روی emulator اجراکنین ولی میبینید که واستون توی لاگ exception رخ میده!!! یه چیزی توی مایه های زیر :



[2013-04-26 20:04:28 - Amin.Hesab] Android Launch!
[2013-04-26 20:04:28 - Amin.Hesab] adb is running normally.
[2013-04-26 20:04:28 - Amin.Hesab] Performing com.example.amin.hesab.MainActivity activity launch
[2013-04-26 20:04:28 - Amin.Hesab] Automatic Target Mode: Preferred AVD 'Test' is available on emulator 'emulator-5554'
[2013-04-26 20:04:28 - Amin.Hesab] Uploading Amin.Hesab.apk onto device 'emulator-5554'
[2013-04-26 20:04:28 - Amin.Hesab] Failed to install Amin.Hesab.apk on device 'emulator-5554': timeout
[2013-04-26 20:04:28 - Amin.Hesab] Launch canceled!



یک Exception باعنوان timeout خوب راه حل اینه بیاییم و تایم که منتظر response از emulator هست رو بیشتر کنیم. حالا چطور؟

از منوهای موجود در eclipse به مسیر زیر برین :



Window -> Preferences -> Android -> DDMS



حالا گزینه ADB Connection time out رو که براساس میلی ثانیه است بیشتر کنید. بنده از ADT نسخه v21.1.0 استفاده میکنم و مسیرمنوهارو گفتم، شاید در نسخه های مختلف مسیر فرق کنه.

  • ۰
  • ۱

امروز دنبال کتاب دیتابیس حاجی سیلبرشاتس (Abraham Silberschatz) واس دانلود میگشتم  یک بلاگ قشنگ پیدا کردم چندین کتاب رفرنس رو واس دانلود گذاشته، شامل کتابهای زیر میشه که مراجع خوبیه واس کنکور و براحتی میتونید دانلود کنید:



  • Operating System Concepts Ninth Edition by Abraham Silberschatz, Peter Galvin and Greg Gange
  • William Stallings Operating Systems Internals And Design Principles - 7th Edition - 2011
  • Operating System Concepts, Silberschatz, 8th Edition
  • Introduction To Algorithms (CLRS) - Third Edition
  • Computer Networks Andrew S. Tanenbaum Fifth Ed 2011
  • Computer Networks, Fifth Edition- A Systems Approach - Larry L. Peterson and Bruce S. Davie 
  • و ...



بعضی کتابها همراه با Solution هستند که اوناروهم میتونید دانلود کنید، و بازهم میگم بیشتر به درد بچه های کنکوری میخوره که کارشون راه بیافته و دیگه دغدغه ای نداشته باشن و اگر مشکلی در کتاب های ترجمه و یا دیگر کتب داشتن بتونن از روی رفرنس حل کنند وگرنه واس دانشگاه همون جعفرنژاد و ... بسه.


http://computerscience2.persiangig.com/document/
http://computerscience3.blogfa.com


دوستان عزیز اگر ویرایش های جدیدتری پیداکردین ممنون در اختیار من هم و دیگر دوستان قرار بدین.

  • ۱
  • ۰

MemoryLeak چیست؟

 سلام به دوستان عزیز.

نیت کرده بودم پست ی در مورد Memory Leak بنویسم و در این پست بیشتر باابن باگ آشنا میشیم و حرف میزنیم و کدها بصورت Native code و دلفی هستش (بخش اول) که بعدا سراغ managed code ها هم میریم (بخش دوم).

وقتی که یک برنامه فضایی از حافظه رو در اختیار میگیره و به خودش اختصاص میده، مثلا ساخت یک نمونه از کلاس ها و ... اگر نتونه اون فضای اختصاص یافته رو آزاد کنه این باگ اتفاق میافته که ممکن است با اجرای زیاد برنامه فضای زیادی از حافظه اشغال شده و ازاد نشه و با کمبود حافظه مواجه بشیم.  این باگ توسط برنامه نویس قابل رفع هست. نمونه خیلی ساده که بگم نوشتن برنامه multi-thread اگر به درستی نتونید ترید های ساخته شده رو free کنید حافظه بیخود اشغال میشه.

این باگ رو برای برای موارد خاصی در نظر میگیریم ، مثلا برنامه هایی که در سرور ها اجرا میشن و ممکن است چندسال در حال جرا باشند که اگر همچین باگی در برنامه باشد بعد ازمدتی کل کارها میخابه بعلت اشغال حافظه بیخود و شاید به حد ریستارت نمودن کل سیستم بکشه.

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

procedure PrintFile(const fileName : string);
 var
   myFile   : TextFile;
   fileData : TStringList;
   i        : Integer;
 
 begin
   // Create the TSTringList object
   fileData := TStringList.Create;      // This allocates object memory
 
   // Load the file contents into the string list
   fileData.LoadFromFile(fileName);     // Expands the object memory size
 
   // Open a printer file
   AssignPrn(myFile);
 
   // Now prepare to write to the printer
   ReWrite(myFile);
 
   // Write the lines of the file to the printer
   for i := 0 to fileData.Count-1 do
     WriteLn(myFile, fileData[i]);
 
   // Close the print file
   CloseFile(myFile);
 end;

به نظرتون باگ memory leak کجا داره اتفاق میافته؟