PDA

View Full Version : بحث پیرامون ویروسها و آنتی ویروسها



civ0003
دوشنبه 21 اسفند 1385, 14:34 عصر
سلام دوستان
این تاپیک رو باز کردم تا یه بحث پیرامون ویروسهای جهش پذیر و تکنیکهای یافتن اونها داشته باشیم. در واقع میخوام اینجا درمورد جهش در ویروسهای polymorphic و metamorphic بحث کنیم. اینکه جهش پذیری در این ویروسها یعنی چی؟ و اصلا چه جنبه هایی از " جهش زیستی" در این ویروسها وجود داره. چرا این جهشها باعث شده که ویروسهای از این دست تبدیل به کابوس برای شرکتهای آنتی ویروس بشن؟ تکنیکهای فعلی مقابله با اونها چیه؟ آیا ممکنه چیزی به این جهش پذیری اضافه کرد که این روش رو مخوفتر کنه؟ و اگر آره چطور با اون میشه مقابله کرد؟ خیلی دلم میخواد اینجا موشکافیهای عمیق بکنیم ! و در آخر من در مورد نظر خودم دربارهء یه تصحیح در این جهش پذیری و اثرش روی توان فرار ویروس از دست آنتی ویروس اینجا مینویسم و دلم میخواد اینجا اساتید لطف کنن نظر بنده رو نقد ( یا حتی در صورت لزوم رد ) کنن تا بنده دیدگاهها و دانشم رو تصحیح کنم و ارتقا بدم. به طور خلاصه بگم : از اونجایی که من اطلاعاتم در مورد برنامه نویسی و بالاخص ویروس نویسی کمه( :بامزه: :افسرده: :عصبانی++: ) میخوام با سوالهایی که توسط بنده( و سایر افراد ) مطرح میشه و جوابهایی که اساتید محترم میدن یه تاپیک عمومی برای ویروسهای جهش پذیر و مقابله با اونها داشته باشیم که امیدوارم بدرد علاقمندان این حیطه بخوره ! من فقط نمیدونم چند نفر به این موضوع علاقمندن و می تونن و میخوان که به بنده و امثال بنده دانش و تجربیاتشون رو منتقل کنن؟ به همین خاطر اگر به اینجا سر زدید و علاقمند به این موضوع بودید اینجا بگین تا من با یه introduction از اطلاعات خودم شروع کنم و بعد بریم سراغ سوالهای بنده یکی پس از دیگری و جوابهای اساتید و دوستان محترم ( نمیدونم چندتا بعد از کدوم یکی؟! ) .:متفکر:

Younes
سه شنبه 22 اسفند 1385, 13:34 عصر
سلام
موضوع بسیار جالبی هست و از شما وکلیه کسانی که در این بحث شرکت کرده و اطلاعات ما را بالا می برند پیشاپیش تشکر میکنم.

civ0003
چهارشنبه 23 اسفند 1385, 14:44 عصر
سلام.
خوب من میخوام introduction رو بنویسم.
اولین نمونه ی ویروسها ی چند شکل ویروسهایی بودن که فقط از روشهای encryption استفاده میکردن. درواقع ویروس هنگام آلوده کردن یه برنامه کد خودش رو encrypt کرده و این کد انکریپت شده رو وارد برنامه ی قربانی میکنه. حالا یک قطعه کد دکریپشن هم به برنامه قربانی اضافه میکنه تا موقع اجرا کد انکریپت شده رو دکریپت کنه تا به این ترتیب کد قابل اجرا باشه.
خوب به این ترتیب یه ویروس که بر اساس این تکنیک طراحی شده بخشهای زیر رو داره:
1) decryption code
2) encrypted body
به 1 میگیم DC و به 2 میگیم EB.
همونطور که پیداست EB در هر آلوده سازی تغییر میکنه ولی DC ثابت میمونه چون اگه DC هم انکریپته بشه به احتمال خیلی خیلی خیلی زیاد غیر قابل اجرا میشه و یا اگر هم اجرا بشه کاری که انجام میده هیچ ربطی به دکریپشن EB نداره !!! و به این ترتیب دیگه ویروس تکثیر نخواهد شد. خوب بر این اساس آنتی ویروس برای پیدا کردن ویروس فقط میتونه از DC به عنوان علامت آلوده بودن استفاده کنه چون فقط این قطعه در کپی های متفاوت ویروس ثابت باقی میمونه. حالا اگه این قطعه به اندازهء کافی بزرگ نباشه دیگه از این قطعه هم نمیشه برای پیدا کردن ویروس استفاد کرد. پس یه روش برای جلوگیری از شناسایی این ویروسها داشتن DC کوتاهه. روش دیگه که در ویروسهای پلیمورفیک بنیانگذاری شد و در متامورفیکها هم کابرد داره "اضافه کردن یه قطعه کد قابل اجرا ولی بدون تاثیر(junk code) بر رفتار DC به DC " هستش.
برای این کار مثلا nop که کد باینری اون 0x90 هستش, و کاری انجام نمیده رو به یه قسمت از DC اضافه میکنه. به این ترتیب توالی بایتهای DC هم طی هر تکثیر تغییر میکنه و در نتیجه DC هم غیر قابل ردیابی میشه. این کار در ویروسهای پلیمورفیک توسط mutation engine انجام میشه. ویروسهای metamorphic که آخر ویروسهای غیرقابل ردیابی محسوب میشن متن کد به همون زبانی که نوشته شدن رو همراه خودشون حمل میکنن.( که اصولا این کد به زبان اسمبلیه). حالا این ویروس اگر در کامپیوتری که آلودش کرده یه کامپایلر مناسب گیر بیاره کد خودشو کامپایل میکنه ولی این دفعه یه مقدار junk code به متن کد خودش اضافه میکنه و بعد نتیجهء کامپایل رو که یه ویروس جدید با همون کارکرد سابقه اجرا میکنه و . . .. به این ترتیب ویروس به مرور داره تغییر پیدا میکنه و از اونجایی که متن کد شامل هم متن کد DC و هم متن کد EB هست هر دو در حال تغییر طی تقسیم در کامپیوتر مناسب هستن. از طرفی متامورفها بازهم از روشهای انکریپشن و دکریپشن و mutation engine استفاده میکنن که دیگه یافتن اونها رو خیلی سخت میکنه. این ویروسها برای انجام این کار نیازبه یه قسمت به اسم metamorphic engine دارن.
این از intro حالا هر کدوم از قسمتهای بالا توضیحاتش میمونه برای بعد مثلا:
mutation engine.
metamorphic engine.
روشها ی موجود در آنتی ویروسها برای مقابله با هرکدوم.
جزییات و مثالها و . . .
البته توجه داشته باشید که در بعضی رفرنسها متامورفیک به ویروسی گفته میشه که میتونه پلت فرمهای متفاوتی رو آلوده کنه.این نوع از ویروسها مورد نظر نیستن.
در پایان هم بگم خیلی خوشحال میشم اگه کسی نظری یا مطلبی تو این زمینه داره اینجا بنویسه تا گفتگو سریعتر به قسمتهای داغ برسه!

hmm
پنج شنبه 24 اسفند 1385, 20:05 عصر
در پایان هم بگم خیلی خوشحال میشم اگه کسی نظری یا مطلبی تو این زمینه داره اینجا بنویسه تا گفتگو سریعتر به قسمتهای داغ برسه!
تنها نظری که میتونم بگم اینه که لطفا ادامه بده...

civ0003
دوشنبه 17 اردیبهشت 1386, 10:42 صبح
مشکلات و بی حوصلگی و نتیجه . . . مدتها هیچی...
خوب میخوام یه نگاهی به یه روش جالب در آنتی ویروسها برای ردیابیه ویروسهای encrypted داشته باشیم. مشکل ردیابی این ویروسها همون طور که میدونید اینه که قسمت اصلی و حجم اساسی از اونها در هر همانندسازی تغییراتی غیر قابل پیشبینی داره و تنها قسمت DC از اونها که اصولا کوتاه هم هست ثابت میمونه. خوب حالا گه DC به اندازه ی کافی طولانی باشه که بشه با اطمینان بالایی گفت یونیکه میشه DC رو به عنوان رشته ی ردیابی به کاربرد وتمام. ویروس نویس n ماه زحمت کشید با 0.5 ساعت بررسی ویروسش مرد. حالا اگه DC کوتاه بود چطور ؟ اونقدری که دیگه بدونیم اصلا یونیک نیست؟ یعنی چه باید کرد؟
در اینجا یکی از روشهایی که AV ها استفاده میکنن اینه که یه کامپیوتر مجازی در واقع CPU و RAM مجازی میسازن و اجازه میدن که برنامه روش اجرا بشه. حالا dc شروع میکنه eb رو به حالت قابل اجرا و اصلی دکریپته کردن. این یعنی اینکه eb به چیزی تبدیل میشه که همیشه ثابته. هر جا ویروس رو دکریپته کنید یه کد ثابت بدست میارین و این یعنی ویروس لو رفت.! خوب البته این تکنیک مشکلات زیادی داره. یکی از اونها اینه که ساختن یه کامپیوتر مجازی پر هزینه و سخته. و تازه بعد از طراحی باید به این فکر کنیم که این پروسه چقدر زمانبر خواهد بود. هر برنامه اجرایی باید یه بار در کامپیوتر مجازی لود بشه یه مقدار اجرا بشه و بعد توی برنامه دنبال یه رشته ی مشکوک بگردیم. اینجای کار هم مشکل وجود داره. چه طور بفهمیم که ویروس به اندازه ی کافی دکریپته شده. ممکنه چند ایده به ذهن بیاد که برخی رو بررسی میکنیم.
1) بر اساس تعداد کد اجرا شده:
از کجا بدونیم DC کجا قرار گرفته که حالا . . ..
2)بر اساس زمان سپری شده:
خوب ویروس میتونه یه سیکل بسازه و ما رو برای مدتی که اون هم میتونه متغیر باشه سرکار بزاره.
3)خوب اصولا DC یه لوپه و ما میتونیم با رسیدن به اولین لوپ برای مدتی صبر کنیم .مثلا N بار لوپ اجرا بشه و بعد . . ..
خوب جوابش مشخصه. میریم سر کار . . ..
یه سری کارها برای حل برخی مشکلات انجام شده. مثلا اینکه اول ما برنامه رو برای DC با یه رشته جستجوی مناسب میگردیم. خوب اگه رشته پیدا شد میفهمیم که به یه احتمالی هرچند اندک( چون رشته جستجوی ما یونیک نیست) این برنامه آلودس. اگه رشته پیدا نشد مطمئن هستیم که ویروس وجود نداره. ولی اگه شک ایجاد شد از کامپیوتر مجازی برای بررسی استفاده میکنیم. محل رشته ی مشکوک رو هم میدونیم کجاست پس هروقت این رشته ی مشکوک وارد عمل شد میتونیم بررسی ها رو شروع کنیم.به این ترتیب استفاده از کامپیوتر مجازی در موارد نا مشکوک حذف شد=> زمان زیادی رو نجات دادیم.
و محلی به عنوان رشته ی مشکوک علامتگذاری شده پس میشه ایده هایی در مورد لحظهء شروع دکریپشن داشت. حالا این روش در پلیمورفیکها به مشکلاتش بسیار افزوده میشه. روش فکر کنید ....

civ0003
سه شنبه 08 خرداد 1386, 12:30 عصر
اینجا میخوام یه مثال از قسمت decryptor ویروسهلی نوع اول ارائه بدم.
این دکریپتور مال ویروسیه به اسم Cascade
lea si,start ;position to decryt, dynamically set
mov sp,0682h ; length of encrypted body=1666 bytes
: Decrypt
xor [si],si ; decryption key/counter 1
xor [si],sp ; decryption key/counter 2
inc si ;increment one counter
dec sp ; decrement the other
jnz Decrypt ; loop until all bytes ae decrypted
Start: ; Encrypted/Decrypted Viru Body
خوب به نظر شما این دکریپتور چه نکات جالبی داره ؟
البته باید بگم که این ویروس برای DOS طراحی شده و خوب الان نیتونید بهش گیر بدید ولی با توجه به ارائه شدنش در زمان پروسسورهای 16 بیتی و داس نظر بدید.

ICEMAN
سه شنبه 08 خرداد 1386, 13:36 عصر
ممنون بحث جالبی شروع شده ولی بخش امنیت نرم افزار فک کنم مناسب تر بود

greenway
سه شنبه 08 خرداد 1386, 15:20 عصر
mov si,0682h ; length of encrypted body=1666 bytes


به نظر میرسد اشتباه تایپی در کدی که نوشتید هست. یک دستور mov بعد از یک lea که هر رو بر روی si تاثیر میگذارند ، عملا دستور lea بی اثر می شود. اما در مورد نکته جالب این کد، عدم امکان اجرای خط به خط آن توسط دیباگرهای زمان قاجار از نکات جالب این ویروس است که دلیل آن استفاده دیباگرها از Stack pointer بود. برای دیباگ این چیزها از دیباگر Deglucker نوشته ولادمیر نشنیو استفاده میشد. خدا داس را بیامرزد ، تکنیکهای مورد استفاده این روزها بسیار Tricky تر از این موضوعات است.

civ0003
چهارشنبه 09 خرداد 1386, 10:38 صبح
سلام.سلام.سلام...
ایول. خیلی خوشحال شدم. دقیقا همینطوری خوبه. بحث کنیم . هممممممممممممم. واقعا اینجوری بهتره. در واقع اینطوری داریم به صورت remote مطالعهء گروهی رو تمرین میکنیم. و من بسیار از این قضیه خوشحال میشم. توی کار گروهی همیشه ما میتونیم به هم انرژی بدیم و هم دیگه رو تحریک کنیم برای مطالعهء بیشتر. واقعا از greenway و ICEMAN ممنونم.
خوب باید خدمت ICEMAN جان بگم که اینجا رو انتخاب کردم چون بحثی که من در نهایت میخوام بهش برسیم موضوعیه که چهار حیطهء امنیت و الگوریتم و زبان اسمبلی(البته بهتره بگم زبان ماشین) و هوش مصنوعی رو در بر میگیره. نکتهء جالب اینه که بیش از همه زبان ماشین و هوش مصنوعی رو مورد توجه قرار میده و کمرنگترین قسمت امنیت خواهد بود. ولی در شروع امنیت پررنگترینه.
خیلی ممنون میشم که greenway و ICEMAN عزیز و سایر دوستانی که در این مورد اطلاعاتی دارن لطف کنن اینجا ارائه بدن تا ما دانشمون رو افزایش بدیم و در عین حال موضوعات با سرعت بیشتری پیش بره.
greenway جان باید خدمت جنابعالی عرض کنم : دقیقا حق با شماست.اون mov رو اشتباه تایپ کردم. درستش اینه:
mov sp,0682h
ضمنا باید بگم که گفته بودم این یه دکریپتور بسیار قدیمیه. شما هم که خودتون اینو میدونید. این طوری باهاش برخورد نکن. تو زمان خودش خیلی خوب بود.

ICEMAN
چهارشنبه 09 خرداد 1386, 13:22 عصر
همین قدر اطلاعات برای پیاده سازی یک مدل نمونه البته به شرط تسلط به ASM و OS Structure و ساختار فایل های اجرایی کافیه .(از این تکنیک در ShellCode نویسی هم استفاده میشه)

:More Info
http://en.wikipedia.org/wiki/Polymorphic_code
http://en.wikipedia.org/wiki/Metamorphic_code
http://en.wikipedia.org/wiki/Self-modifying_code
http://en.wikipedia.org/wiki/Alphanumeric_code
http://en.wikipedia.org/wiki/Timeline_of_notable_computer_viruses_and_worms
و
http://www.securityfocus.com/infocus/1635
http://vx.netlux.org/lib/ama00.html
امید وارم مفید باشه ...

civ0003
شنبه 19 خرداد 1386, 14:38 عصر
سلام
از ICEMAN عزیز ممنونم که این لینکهای خوب رو اینجا قرار دادن. با توجه به این لینکها به نظرم نگاه به "آنچه که تا به حال گذشت" تقریبا کافیه. فکر میکنم که حالا باید به گوشه های دیگهء بحث اشاره کنم تا به سوالها نزدیکتر بشیم.
خوب اینجا سه دسته لینک قرار دادم که مهمترینشون سومیه. اگه با الگوریتمهای ژنتیکی آشنا هستید و به لینکهای ICEMAN سر زدید فقط به لینک آخر مراجعه کنید اونجا دوتا لینک هست و چند سئوال به سوالا فکر کنید و به لینکها سر بزنید. خوب البته اگه حوصلهء سوالا رو نداشتید به لینکها حتما سر بزنید.
1)اول یه لینک برای جمع بندی "آنچه که . . ." :
http://www.awprofessional.com/articles/article.asp?p=366890&seqNum=1&rl=1

2)و حالا چند لینک در مورد الگوریتمهای ژنتیکی.
http://en.wikipedia.org/wiki/Genetic_algorithm
http://www.meteck.org/gaover.html
http://www.ai-junkie.com/ga/intro/gat1.html
http://www.doc.ic.ac.uk/~nd/surprise_96/journal/vol4/tcw2/report.html
http://www.aaai.org/AITopics/html/genalg.html
http://www.rennard.org/alife/english/gavintrgb.html
http://www.generation5.org/content/2000/ga.asp

3) یه لینک به یه دیدگاه دیگه از الگوریتمهای ژنتیک که از نظر من برای بحث ما کاربردیه و در صورت نبودن این دیدگاه الگوریتمهای ژنتیکی کاربردی در بحث ما نخواهند داشت.
http://www.barnamenevis.org/forum/showthread.php?t=67646

خوب حالا با این مطالب میخوام این ایده رو به ذهنها نزدیک کنم:تغییر فانکشن ویروس طی جهش. نه فقط تغییر توالی بایتها و یا به عبارتی ساختمان ویروس.
البته ممکنه این ایده قبلا پیاده سازی شده باشه! ولی من از این امر مطلع نیستم. ممکنه امکان پذیر نباشه که باز هم نظر قطعی و علمی درموردش ندارم. در هر صورت میخوام اینجا در مورد امکانش بحث کنیم. و بعد از اون در بارهء توانش و بعد هم روشهای مقابله باهاش.

greenway
شنبه 19 خرداد 1386, 17:00 عصر
یک ایده ای رو از خیلی وقت پیش در ذهن داشتم. تصور کنید که یکسری الگوی ویروس نر و یکسری الگوی ویروس ماده داشته باشیم که وقتی روی یک سیستمی هر دو نوع ویروس وجود داشته باشند و یکی از آنها فعال باشه ، هنگام اجرای دومی ، حالت Polymorph کدهای این دو ویروس رو با هم ترکیب کرده و یک بچه ویروس نر یا ماده جدید با کدهای جدید به وجود بیاره .

civ0003
یک شنبه 20 خرداد 1386, 13:16 عصر
ایدهء جالبیه greenway جان.
ولی یه سوال: فکر نمیکنی این ساختاری که پیشنهاد دادی فاکشنهای جدیدی تولید نمیکنه؟
در واقع میخوام بگم من سوالم در مورد ویروسهایی با فاکشن جدیده که این فاکشن توسط برنامه نویس طراحی نشده بلکه . . . جهش این توانایی جدید رو به ویروس هدیه داده. البته من با جزییات پیشنهادت آشنا نیستم ولی اگه ایده ای در مورد ایجاد فانکشن جدید توی ویروسهات داری بگو تا در موردش بحث کنیم.

Inprise
یک شنبه 20 خرداد 1386, 13:47 عصر
خوب حالا با این مطالب میخوام این ایده رو به ذهنها نزدیک کنم:تغییر فانکشن ویروس طی جهش. نه فقط تغییر توالی بایتها و یا به عبارتی ساختمان ویروس.
البته ممکنه این ایده قبلا پیاده سازی شده باشه! ولی من از این امر مطلع نیستم. ممکنه امکان پذیر نباشه که باز هم نظر قطعی و علمی درموردش ندارم. در هر صورت میخوام اینجا در مورد امکانش بحث کنیم.

ویروس بحث مبتذلی هست و کسی چنین توان و قابلیت نرم افزاری رو طبیعتا برای تولید Malware استفاده نمیکنه ، و حتی کسانی که فعالیتهای اکادمیک در این زمینه انجام دادن و میدن به سمت و سوئی کشیده میشن که حتی فکر کردن در مورد "نوشتن" اون کد براشون بی معنیه ، چه برسه به تبدیل چنین کدی به کد مخرب و ویروس و ...

در واقع طراحی منطق و نوشتن کد توسط خود ماشین بحث جدیدی نیست و یکی از مهمترین مسئله های عمومی محققین سیستمهای خبره واگذار کردن روند طراحی جواب سوال و نوشتن Prototype به ماشین هست .

مثلا ماشینهای سخنگو با درک الگو و منطق زبان و با توجه به آموخته های قبلی تکلم میکنن و این یک نوع طراحی جواب و نوشتن کد توسط ماشین است که جلوه های صوتی و تصویری هم داره

برای اینکه تابعی توسط ماشین نوشته بشه ، باید زیرساختی برای یادگیری وجود داشته باشه و روندی برای آموزش . فریم ورک یادگیری مفاهیم زبان ماشین رو دریافت میکنه و ماشین طی روند یادگیری نحوه استفاده از این مفاهیم رو یاد میگیره و بعد بسته به توان فریمورک و دقت مرحله یادگیری خروجی هائی که تولید میکنه قابل انتظار تره ( اگر فروم ما فارسی نبود با استفاده عبارت های انگلیسی بهتر این مفاهیم قابل انتقال بود )

Malware ها معمولا هداف کوچک و کوتاه مدت و ساده ای دارن و کسانی هم که در این زمینه کار میکنن عمدتا افراد کم سوادی هستند . وجود یک ویروس قوی یا یک ترفند چند لایه و جدید لزوما به معنای وجود دانش عمیق در نویسنده اون نیست ، این مسائل بیشتر از دانش به روش متکی هستند و روش چیزی است که زود منتقل میشه ؛ مثلا به همین دلیل هست که میبینی یک کرکر 18 ساله میتونه خیلی از نرم افزارها رو کرک کنه و در سایتها و وبلاگها و سایر محیطها چنان در مورد این فرآیند ادعا کنه گوئی واقعا دانش و سواد عمیقی داره ، در حالیکه اون یاد گرفته با استفاده از ابزاری که نمیدونه دقیقا چطور نوشته شده ، و با مطالعه راهنماهائی برای مسائل مشابه ، یه مسئله مشابه رو در محل متفاوتی حل کنه . به همین دلائل نباید انتظار داشته باشیم لبه های جدی تر دانش نرم افزار به سمت Malware برن . یعنی نمیتونی انتظار داشته باشی کسی از AI بصورت خیلی جدی در تولید یک ویروس استفاده کنه ، که فرضا موفق بشه یک کد مخرب با رفتار متفاوت تولید کنه ؟ و این کد در مقابل Behavioral Analysis چه شانسی داره ؟ رفتار متفاوت ، که ممکنه نتیجه وجود یک کد با ساختار متفاوت باشه ،__ و الزاما هم اینطور نیست__ لزوما یک حرکت مثبت برای یک ویروس نیست.

موفقیت ویروس در استفاده از نقائص است ، نه تقویت منطق تخریب ، یا استفاده از AI برای تغییر رفتار . ویروسها بخاطر ذات و ماهیت مخرب و نامطلوبشون نمیتونن میزبان خوبی برای تکنیک های خبره باشن ، یک فایروال یا یک HIDS متقابلا میزبانهای خوبی برای این تکنیکها هستن .

اما بخاطر ماهیت نابالغ و در حال رشد مفاهیمی از این دست و به این دلیل که فعلا ( و برای سالها ) مبتنی بر مطالعه و ایده سازی و طرح مسئله و ارائه روشهای جل کلی و عمومی بوده اند بیشتر از هر چیزی کاربردهای آکادمیک یا غیر صنعتی دارند ، و هر کسی که بصورت جدی وارد یکی از این مسیرها بشه طبیعت و اسلوب اونها باعث میشه سر از جائی در بیاره که خیلی با فضا و محیط Malware Development یا حتی Malware Analysis فاصله داره . جدی ترین کارهائی که من اخیرا در زمینه Malware Analysis دیده ام مطالعه با روشهای آماری و تحلیل باینری بر اساس Entropy و Statistical Classification و ...بوده است که خیلی مسائل ابتدائی ای هستند ( در مقابل لبه های آکادمیک این مسئله که خیلی خیلی جلوتر است ) مثلا Sabre security یک موتور تحلیل باینری و طبقه بندی اونها بر اساس یک موتور تشخیص رفتار خیلی خوب ارائه کرده که سال قبل در یک نمایشگاه آلمانی جایزه صد هزار یوروئی ای هم بهش دادن ، و مهمترین کاربرانش هم شرکتهای تولید کننده آنتی ویروس هستن که روزانه با کوهی از Malware سر و کلیه میزنن . حد بالا و جدی ترین فعالیتی که در این زمینه شده است همینهاست...جلوتر که بری خبری از تولید وجود نداره چون اصولا این مسئله در این حوزه بدون کاربرده ، اما در زمینه تشخیص زبان ، تشخیص چهره ، تشخیص خط ، ترجمه همزمان ، جعل دست خط ، تشخیص Pattern رفتاری و ... سایر موارد تولیدهای صنعتی از تولیدهای آکادمیک چندان عقبتر نیستند .

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

civ0003
یک شنبه 20 خرداد 1386, 15:26 عصر
inprise جان از مطالبی که نوشتی ممنونم. واقعا ممنونم. البته این کاملا طبیعیه که اینطور نسبت به این مطالب ساده و ابتدایی که اینجا ارایه شده( اون قسمت هایی که من نوشتم) این چنین عکس العمل نشون بدی و در واقع نظر بدی ( که مشخصا نظری صحیح و در خور این موضوعه). ولی من میخوام چند نکته رو برای روشن شدن قضیه مطرح کنم. فقط مطلبی رو که قبل از خوندن این چند نکته لازمه بهش اشاره کنم اینه لطف کنید تک تک نکات رو دقیق بخونید و تمام نکات رو هم بخونید. لطفا از هیچ کدوم سرسری نگذرید.

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

2) هدف بعدی بنده ارایه و بررسی روشهای فعلی آنتی ویروسها جهت شناسایی ویروسها بوده و نشون دادن اینکه هیچ کدوم از این روشها هیچ توانایی در مقابله با این ویروس ندارن.

3) و در پایان این بحث قرار بوده روش یا روشهای پیشنهادی برای مقابله با این ویروس رو اینجا مورد نقد و بررسی قرار بدیم.

4) از طرفی لازمه برای درک صحیح این قضیه دانشتون رو در مورد ژنتیک و تکامل زیاد کنید. به خوبی و دقت باید شکل گیری حیات رو بفهمید. در مرحلهء بعد باید خوب روی اکولوژی و رفتار شناسی مطالعه کنید. بعد باید دوباره برید سراغ درک صحیح انتخاب طبیعی . در مرحلهء بعد باید خوب شکل گیری هوش رو در طبیعت بفهمید. اصلا هوش دقیقا برای موجودات زنده چه کار میکنه که توسط انتخاب طبیعی انتخاب شده؟ باید مسیر پیچیده شدن هوش رو دنبال کنید. هوش سلولی. هوش چند سلولی یا جامعهء سلولی هوشمند. موجود چند سلولی هوشمند. هوش چند موجودی یا جامعهء هوشمند و . . .. بعد برید سراغ الگوریتمهای ژنتیکی. روشها و جزییاتشون. خوب در مورد مسیری که دنبال میکنن و چیزی که بدست میارن مطالعه کنید و دقیق بشید. بعد باید توان جواب دادن به سوال رو داشته باشید : تفاوت اصلی آنچه که امروز الگوریتم ژنتیکی نامیده میشود با آنچه در طبیعت به وقوع پیوسته و می پیوندد در چیست؟
حالا باید بفهمید که این تفاوت چه سودها و چه زیانهایی داره؟ اگه این تفاوت را برداریم به چی میرسیم؟ در سیستمی که طراحی میکنیم چه تغییراتی باید ایجاد کنیم تا توان پذیرش برداشتن این تفاوت رو داشته باشه؟ اگر این مراحل رو به خوبی و به درستی طی کنید میتونید بفهمید که من نگران تولید چی هستم. فقط در دو حالت شما میتونید نگران نباشید: اثبات کنید که انچه که با گذروندن مراحل بالا بش رسیدید امکان پیاده سازی در کامپیوترها رو نداره و یا شما اصلا به اون چیزی که من میگم نرسیدید!!!

حالا روی صحبتم با شخص inprise واقعا بنده باز هم ازشون به خاطر نظراتشون تشکر میکنم. لطف کنید حتما به بحثهایی که امروزه هر چند محدود پیرامون تهیهء سیستم هوشمند در معنای عام جریان داره مراجعه کنید. البته بنده به خوبی میدونم که شما بسیار دانش بالایی دارید و اصلا منظورم این نیست که از این بحث دورید ولی از طرفی میدونم بنده دقیقا به موضوعی اشاره میکنم که تا به حال توی ایران هیچکی حتی سراغش نرفته. من به بسیاری از گروهها و اساتید و دانشجوها و سایتها و . . . توی این کشور سر زدم ولی همه بهم خندیدن. هیچکی حتی نمی دونست که چیزی رو که من ازش حرف میزنم و به عنوان یه ایده مطرح میکنم سالهاست پیاده سازی شده و روش کار شده. البته بهشون حق میدم به این خاطر که من خودم در اون(!) باره 3 سال گشتم و به سختی مطلب گیر آوردم. خوب اونها حق دارن چیزی ندونن. شما هم inprise جان حق داری که در این باره چیزی ندونی و وقتی در مورد AI صحبت میکنی بگی:
برای اینکه تابعی توسط ماشین نوشته بشه ، باید زیرساختی برای یادگیری وجود داشته باشه و روندی برای آموزش . فریم ورک یادگیری مفاهیم زبان ماشین رو دریافت میکنه و ماشین طی روند یادگیری نحوه استفاده از این مفاهیم رو یاد میگیره و بعد بسته به توان فریمورک و دقت مرحله یادگیری خروجی هائی که تولید میکنه قابل انتظار تره ( اگر فروم ما فارسی نبود با استفاده عبارت های انگلیسی بهتر این مفاهیم قابل انتقال بود )

inprise جان باید خدمت شما عرض کنم که این شیوهء برخورد شما بارها برای من وقتی با گروههایی که بالا بهشون اشاره کردم گفتگو میکردم اتفاق افتاده. البته برخورد شما خوبه!. شده حتی به من خندیدن. میدونم که ممکنه الان هم به این خاطر که این تاپیک رو مطرح کردم برخی بخندن. اما من یه چیزایی تو حیطهء هوش مصنوعی میدونم که مطمئنم کمتر کسی در این باره توی این کشور بدونه. و میدونم که یه کاربرد بسیار وحشتناک از اون همین موضوعیه که میخواستم مطرح کنم. و خواستم یه بررسی در مورد امکانش داشته باشیم که اگر امکان پذیریش حتمی شد در مورد روش مقابله اقدام کنیم. ولی خوب مثل اینکه همیشه وقتی برای بیان موضوعی قلنبه سلنبه صحبت نکنی بهت انگه بیسوادی میزنن و سریع چیزایی رو هم که بلدی ربطش میدن به تخریب و سوء نیت. OK.
خیلی زیاد حرف برای گفتن دارم خیلی. هم چیزایی که باید بخونید تا به چیزی که میگم برسید هم چیزایی که مربوط به خون دل خوردن طوی این کشور برای کارهای تحقیقاتی هم چیزایی که برمیگرده به یه جاهایی مثل برنامه نویس که وقتی میخوای دوستانه و خودمونی صحبت کنی . . .. بگذریم.

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

greenway
یک شنبه 20 خرداد 1386, 19:50 عصر
به نحوی با Inprise موافقم. شخصا به دنبال موضوعاتی میگردم که دارای کاربرد بیشتری در زندگی روزمره ما باشه . در مورد ویروس ها موضوعات زیادی را در 10 سال گذشته دنبال کرده ام ، آرشیو از Virus Bulletin و Virus Heaven و سایت Zombie خدابیامرز دارم. کار تجاری در مورد ویروسها انجام داده ام ، اما به طور خلاصه بعضی از کارها را بعضی ها در شرایط خاص انجام میدهند که به نظرم شرایط هیچکدام ما به آن نمیخورد. ویروسها هم مانند زبانهای برنامه سازی در طول این سالها دچار تحولات زیادی شده اند ، موضوع ویروس در روزهای اخیر در حال فراموشی است و بیشتر به سمت کرم و Malware کشیده شده است. دلایل مختلفی در این مورد وجود دارد ، امضای دیجیتال ، فایلهای دارای Overlay ، فایلهای محافظت شده و ... باعث شده اند در عمل ویروسهای امروز نمی توانند مانند ویروسهای نسل Dos روی همه سیستم ها به صورت یکسان و مخفی عمل کنند. از طرفی مباحث System Programming روز به روز پیچیده تر شده و حفره های موجود در نرم افزارها روز به روز کمتر می شود. از طرف دیگر هم روز به روز در سیستم عامل ملی ( ویندوز ) امکان دسترسی مستقیم به منابع توسط برنامه نویسان کمتر می شود. برای مثال در داس ما چیزی به نام Section در فایل اجرایی نداشتیم ، اما ضد ویروس Kaspersky روی ویندوز تمام کدهای Relocateable نوشته شده در یک Section فایل PE که در انتها به هر طریقی کنترل اجرا به Section دیگری منتقل شود را به عنوان ویروس شناسایی می کند. حتی الگوریتمهای شناسایی نیز عوض شده ،‌ روشهای مقابله هم عوض شده ، تحقیقاتی که کاربرد نهایی نداشته باشد و یا کاربرد مقطعی داشته باشد جز اتلاف سرمایه بازده دیگری ندارد. به نظر من‌ ، ما انقدر از دنیایی که در اطرافمان میگذرد عقب هستیم که نیازی به پیش بینی و پیشگیری نیست ،‌ همین که موضوعات کشف شده قبلی را بومی کنیم پیشکش.

Inprise
یک شنبه 20 خرداد 1386, 21:37 عصر
@civ0003 : با توجه به جوابی که نوشتی فهمیدم جواب قبلی من چندان بهت کمک نکرده چون از برآورد قبلی من جوانتر و کم تجربه تر هستی ( تصادفا اینجا این یه امتیازه ) بنابراین سعی میکنم همان جواب رو متفاوت بنویسم شاید مفیدتر باشه .


اگر این مراحل رو به خوبی و به درستی طی کنید میتونید بفهمید که من نگران تولید چی هستم. فقط در دو حالت شما میتونید نگران نباشید: اثبات کنید که انچه که با گذروندن مراحل بالا بش رسیدید امکان پیاده سازی در کامپیوترها رو نداره و یا شما اصلا به اون چیزی که من میگم نرسیدید!!!
-...-
البته بهشون حق میدم به این خاطر که من خودم در اون(!) باره 3 سال گشتم و به سختی مطلب گیر آوردم. خوب اونها حق دارن چیزی ندونن. شما هم inprise جان حق داری که در این باره چیزی ندونی...

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

در واقع مسئله ای که تو سعی کردی درباره اش حرف بزنی ، یعنی تولید کد توسط ماشین ، مسئله جدید یا حاد یا خاص یا منحصر به فردی نیست . این یکی از مسائل روتین AI هست و سالهاست که بصورت آکادمیک بهش پرداخته میشه ، و حتی من که در این زمینه تحصیل کردم و تز دارم و شغل مشاوره صنعتی داشتم __ نه در ایران __ به خودم جرات ندادم مقولهء AI رو بصورت کاربردی ادامه بدم ، و تو اگر مایل باشی نتیجه مثبتی هم از این بحثها بگیری خوبه به واقعیتهائی توجه کنی :

- AI عمر زیادی داره ، اما در برخی از زمینه ها عمر آکادمیک و صنعتی اش نزدیک به هم هستن و در برخی از زمینه ها فقط عمر آکادمیک داره . در زمینه اتوماسیون و کنترل پیشرفت AI در صنعت خیلی زیاده که مثالهاش در جواب قبلی ام هست ، اما در زمینه های مشخصی با اینکه همیشه مسائل AI وجود داشتن هیچوقت کاربرد عملیاتی جدی ای وجود نداشته ، مثلا هیچوقت از AI در بهبود عملکرد سیستم عامل استفاده نشده ، نه به این دلیل که چنین مفهوم یا کاربردی نمیتونه وجود داشته باشه ، و نه به این دلیل که Paper و پروژه و مطالعه ای در این زمینه نیست __ که هست __ دلیل عدم این کاربرد ، عدم کاربری و کاربردی بودنش هست . "در حال حاضر" تولید کنندگان سیستم عامل علاقه مند به سرمایه گذاری در مورد سازگاری ، سهولت کاربری ، خدمات آنلاین ، امنیت و مواردی از این دست هستند ، پس اگر کسی حتی ده سال قبل برای کاربرد AI در سیستم عامل شروع به تحقیقات اکادمیک کرده باشه و امروز نوشته ها و روشها و راه حلها و ایده های زیادی داشته باشه ، باز هم شانسی نداره که نتایج زحماتش رو در زمان حیاتش مشاهده کنه ، چون همین حالا مسیر توسعه سیستم عامل تا بیش از سی سال دیگه قابل پیش بینی است ...

- AI میتونه برای عموم مسائل راه حل ارائه کنه ، و این به آن معنی نیست که منطقی باشه تو بدون توجه به واقعیتهای اطراف یکی رو انتخاب کنی و سالها تحقیق و بررسی کنی ، تا به احمقهای اطراف بفهمونی که بله ، در این زمینه "هم" میتوان از AI استفاده کرد .

- تولید کد توسط ماشین __ که مسئله ویروس فقط یکی از جنبه های اون میتونه باشه __ هم یکی از اون مسائل هست . تا بحال ، مسئله اصلی در محاسبات فقدان کامپیوتری که بتواند کد هم بنویسید نبوده است ، و برای آینده طولانی ای هم چنین صورت مسئله ای وجود نخواهد داشت ، و این "واقعیت" به این معنی نیست که این مسئله نمیتواند جنبهء آکادمیک داشته باشد ، و تو نمیتوانی در این زمینه حرفی بزنی ؛ اتفاقا تو میتونی سه سال تحقیق کنی و مجموعه ای از نوشته ها و کدها برای ارائه آماده کنی . بقول معروف so what ؟

- "امکان" تحقیق و مطالعه در یک زمینه ، با "کاربردی" بودن این تحقیق ، دو مساله کاملا متفاوت هستند . من در جواب قبلی ام سعی کردم توضیح بدم که چرا پرداختن به مقوله Machine Developed Code خصوصا با گرایش Malware مساله عملیاتی و کاربردی ای نیست که نیاز به تکرار مجدد همان جواب نیست .

- نتیجه این است که مقوله AI یا اقتدا به راه حلهای ژنتیک برای ارائه مفهوم و مسیر جدیدی در زمینه توسعه Malware یا مقابله با اون ، هر چند میتونه محور یک تحقیق باشه ، اما چون کاربری نداره در عمل بلا استفاده و بدون منفعت هست . تو همین حالا میتونی تابلو ترین ویروس رو با دستکاری ساده ای Undetectable کنی و بهترین HIDS ها و آنتی ویروسها هم در بازداشت اون ناکام هستن ، خیلی ها روی اینترنت Malware shop دارن و از ویروس و تروجان خودشون یا حتی هر شلکدی که خودت باهاش حال میکنی با سی چهل دلار ناقابل باینری تولید میکنند با گارانتی عدم بازداشت توسط یک لیست بلند بالا از محصولات امنیتی ، و راست هم میگن ، این واقعیته که وچود داره , و مسالهء امروز کسانی که Malware مینویسن و کسانی که باهاش مقابله میکنن در همین سطح و محدوده است . امروز ویروس نویسها به عبور از SandBox نورمن فکر میکنن ، و با مطالعه کردن موتور نورمن یک باگ احمقانه پیدا میکنن و مشکلشون رو حل میکنن و کمپانی های آنتی ویروس هم با کوه عظیمی از Sample هائی که با Honeypot هاشون جمع کردن موتور تشخیصشون رو تغذیه میکنن و به همین ترتیب بسیاری از ویروسها رو گیر میندازن و هر جا هم موفق نشدن ، خوب ، نشدن ، اتفاق حادی نمیفته . اینها مجموعه ای از "واقعیت"های امروز این بیزینس هست . من به عنوان فردی که در این کسب و کار زندگی شلوغی داشتم و دارم ، مطلبی که توسط تو مطرح شده رو "غیر واقعی" تلقی میکنم و جواب قبلی در این راستا بود . این مطلب غیر واقعی البته میتونه موضوع یک تحقیق خیلی باحال آکادمیک باشه ، و تو بعد از دو سال ممکنه بتونی موتور خفنی بنویسی که رسما یک تابع واقعی تولید میکنه که اجرا هم میشه ، و من ضمن اینکه از خوندن Paper ات هیجان زده میشم ، باز هم بهم میگم : so what ؟ حالا میخوای باهاش چیکار کنی ؟ منظورت اینه که یه ویروس به حجم 150 مگابایت منتشر کنی ؟ ( که صد و چهل و نه و نیم مگابایتش موتور و بانک آموزه های AIات که حاوی Learning Cave اته هست ) یا خیال میکنی اگر نهایتا ویروست خواست که هدر سایر فایلهای PE رو ادیت کنه ، چون فقط و فقط یک ویروس یا کد متفاوته ممکنه Host Based IDS سیستم قربانی بهش ارفاق کنه و بیخیالش بشه ؟ قس علی هذا . اینها هم بخش دیگه از "واقعیت" های این مسئله هستن .

ما برای اینکه یک مسئله داشته باشیم لزوما نباید یک کاربرد داشته باشیم ، پس تو میتونی خوشحال باشی و تحقیقت رو ادامه بدی . مهمتر از همه این هست که در این مسیر چیزهای زیادی یاد میگیری . اما همه اینها نافی "واقعیت"هائی که گفتم نیستن .

civ0003
دوشنبه 21 خرداد 1386, 12:49 عصر
سلام.
دوستان از راهنمایی هاتون ممنونم.:بوس: جناب inprise واقعا لطف کردید. خوب از حالا باید به فکر تصحیح روشهام باشم. توضیحاتتون واقعا کمک کننده بود. درسته حق با شماست. اینطور که من با توضیحات شما فهمیدم واقعا چیزی از ایده های کلی در AI نمیدونم. خوب نتیجه گیری اینکه باید این حیطه رو که هم غیر کاربردیه و هم دانشم درش خیلی خیلی خیلی کمه رها کنم و در پی موضوعاتی کاربردی تر بگردم و در عین حال باید خوب دانشم رو در هر زمینه ای که پس از این در پی میگیرم افزایش بدم و با خوندن یکی دو مقاله احساس کامل بودن نکنم. بازم ممنونم.:متفکر:
خوبه. این تاپیک اگه برای کسی نتیجه نداشت برای من خیلی خوب بود: هم یه کار بدون کاربرد رو رها کردم و پس از این وقتم رو با این کار هدر نمیدم(ماهی رو هر وقت از آب بگیری تازست! ) و هم یاد گرفتم که در هر زمینه ای بسیار بسیار موضوعات هست که نمیدونم.
البته جملهء خلاص بمونه برای 2-3 هفته بعد !!!.:لبخند:

civ0003
چهارشنبه 13 تیر 1386, 16:09 عصر
سلام.
دوباره اومدم تا جملهء خلاصی رو که گفته بودم بگم:

" Computer Immunodeficiency Virus = CIV منتشر شد. "
این ورژشن 0.004 هستش. ورژن 0.000 تا 0.003 فقط آزمایشی بود هیچ وقت کشت داده نشد ولی حالا 0.004 آمادس برای اینکه واقعا میبینم اینجا هیچکی تا نبینه باور نمیکنه و تا مدرک هم نداشته باشی بهت میخندن و همه یک صدا فقط بلدن از اون چیزی که تا حالا دیدن و شنیدن حرف بزنن و نمیخوان یه کم هم که شده توجه کنن.
البته این civ 0.004 ورژن بتاس. بتاس چون این ویروس به مرور منابع زیادی رو اشغال میکنه و باید زمان هر سیکل همانندسازیش طوری باشه که هم 1) بتونه انواع کدهای جدید رو تولید کنه و هم اینکه 2) پر کردن هارد و رم و گرفتن سی پی یوزیج مانع از دست رفتن کامپیوتر قربانی تا زمان پیدا کردن قربانی های بعدی نشه. با بررسی نتیجه ها میتونم سرعت سیکل رو تنظیم کنم. در ضمن یک نکتهء ویژه برای آقای Inprise : اگه به اینجا سر زدین بدونین کل حجم این ویروس 32 (سی و دو ) کیلو بایت شده. کیلو بایت نه مگا بایت. آره. حتی 150 کیلو بایت هم نشد که بگی یه خورده شبیه حرف تو شد. و جالب اینجاس که civ0.000 هم فقط 1.5 مگابایت حجم داشت به همین خاطر از همون روزی که از بیش از چند مگابایت حرف زدی فهمیدم اصلا توجه نمیکنی من از چی دارم حرف میزنم. خوب بعد از تست و تغییرات نهایی میبینمتون البته ممکنه طی همین مدت به ورژن بتا آلوده شده باشین.
Catch CIV If You Can !:بوس:

watjomanjee
دوشنبه 18 تیر 1386, 10:31 صبح
سلام.
من civ هستم. یه مشکلی با ID قبلیم پیش اومده مجبور شدم با این ID مطلب بنویسم. خوب تستهای مربوط به سرعت سیکل همانندسازی انجام شد. و آخرین تغییرات هم اعمال شد. CIV0.004 داره میاد. هرچند میدونم طی یک ماه آینده ورژن های متفاوتی ازش رو می سازم و میفرستم تو شبکه ولی فعلا همین حد توان حمله براش فکر کنم کافی و منطقیه و میتونه به مرور پیشروی کنه. ببینم آیا کسی روشی برای مقابله باهآش داره؟ ولی میدونم حالا حالا ها کسی نمیتونه روشی برای مقابله باهاش پیدا. شاید هم راهی برای مقابله باهاش وجود داره؟:متفکر:

greenway
دوشنبه 18 تیر 1386, 17:08 عصر
یعنی منظورت اینه که روش وقت بگذاریم ؟ التماس نکن ، اگر پول وقتمون رو میدی دنبال راه مقابله اش بگردیم.

illegalyasync
دوشنبه 18 تیر 1386, 17:58 عصر
دوست عزیز
من نوشته های تو رو خوندم . اگر چه وقتی افرادی در زمینه ای تلاش میکنن ولی Terminology صحبحش رو نمیشناسن فهمیدن مطالبشون خیلی سخت میشه اما چنانچه من فهمیدم تو داری یک ویروس متامورفیک مینویسی ؟ خوب این چیز جدیدی نیست . در نوشته های تو و جوابهائی که دوستان به تو دادند خواندم که میخواستی ویروست برای نسلهای بعدی توابع جدیدی تولید کند . آیا منظور است هست که در یک نسل تابع آ فایل کپی کند و در نسل بعدی این تابع کار متفاوتی انجام دهد مثلا یک بوق بزند ؟ منظور از تولید توابع متفاوت همان عملکرد متفاوت هست ؟ این رو من یه جور شوخی تلقی میکنم اما اگر هم چنین برنامه آزمایشی ای بنویسید چطور میتوان اسمش را ویروس گذاشت ؟ مثلا چطور ممکنه ویروس شما همواره خودش را به Import Directory فایل های PE اضافه کند و EP را بازنویسی کند و در عین حال در هر نسل عملکرد متفاوتی داشته باشد ؟ طبیعی است اگر Infection مفهوم روشنی داشته باشد نمیتوانید انتظار داشته باشید آن مفهوم با یک کار کاملا بی معنی عوض شود اما شما باز هم یک ویروس داشته باشید .

متامورفیسم تغییر ظاهری دستورات ماشین و انتخاب Combination مناسب برای افزایش عدم الگو پذیری باینری است . یعنی فرض این است که کد اصلی ویروستان را بصورت رمز شده به عنوان Payload منتقل میکنید و Stub تان بصورت متا مورفیک تغییر میکند . حتی اگر بتوانید چنین ویروسی را شخصا بنویسید تحلیل و بازداشتش کار ساده ای هست . اگر میخواهید امتحان کنید یک نمونه از ویروسی که نوشتی رو اینجا بگذار و توضیح بده که معنی این ویروس چیه و چطور تخریب میکنه و تحلیلش وقت زیادی از ما نمیگیره . از بحثهای صفحه قبلی تان خیلی تعجب کردم چون مسئله ویروس را به AI مرتبط کردید در حالیکه متا مورفیسم و AI کوچکترین ارتباطی ندارند و AI هم اصلا مسئله ای نیست که به ویروس و اکسپلویت مربوط بشه .

Inprise
دوشنبه 18 تیر 1386, 18:58 عصر
از بحثهای صفحه قبلی تان خیلی تعجب کردم چون مسئله ویروس را به AI مرتبط کردید در حالیکه متا مورفیسم و AI کوچکترین ارتباطی ندارند و AI هم اصلا مسئله ای نیست که به ویروس و اکسپلویت مربوط بشه

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

watjomanjee
چهارشنبه 20 تیر 1386, 11:22 صبح
سلام دوستان.
خوب من حرفی برای گفتن ندارم. چون . . . ببینید میپذیرم که من اطلاعات و دانش بسیار بسیار کمی در مورد کامپیوتر دارم حالا چه برسه به برنامه نویسی حالا تو این اوضاع دیگه جایی برای داشتن ادعا در ویروس نویسی نمیمونه . . . و الی آخر تا نوشتن یه ویروس جدید با ساختاری جدید و توانایی های جدید. ولی با همهء این اوصاف این ویروس رو نوشتم. در ضمن با همهء این اوصاف اگه من با این اطلاعات کمم بحثهای صفحه های قبل رو میخوندم به راحتی میفهمیدم که این structure ای که دربارش داره توضیح داده میشه تفاوت بسیار بسیار زیادی با ویروسهای متامورف داره. فکر میکنید من براچی این ویروس رو منتشر کردم درحالی که تا حالا 4 ورژن ازش رو کامپیوتر خودم تست شده و جواب داده بودند؟ حالا چی شد که من ورژن 5 ام رو منتشر کردم؟
چون به دلیلی نامعلوم برای من تا امروز بسیار بسیار افراد کمی میفهمن که من چی میگم. البته این افراد بسیار بسیار کم هم بعد از اینکه من یه pc مجازی ساختم و یه نمونه از ویروسم رو روش اجرا کردم فقط به واسطهء نتایج تولید شده درحالی که کمی از زبونشون از دهنشون بیرون زده بود و خیره به مانیتور و نتایج نگاه میکردن پذیرفتن که "میشه". بله "میشه" .
البته خوب من امروز فهمیدم که چرا کسی حرفهام رو نمیفهمه. از illegalyasync ممنونم چون ایشون به من دلیلش رو گفت: من ترمینولوژی مربوط به این حیطه ای رو که دارم دربارش صحبت میکنم بلد نیستم و به این ترتیب فهمیدن حرفام سخته. باشه من سعی میکنم از این به بعد روی ترمینولوژی این حیطه کار کنم تا شاید یه روزی درست حرف زدن در این حیطه رو یاد بگیرم !!!.
ولی چون تا امروز از این دلیل مطلع نبودم چندی قبل تصمیم گرفتم یه ورژن از این ویروس رو منتشر کنم. تا شاید در عمل برخی رو قانع کنم. ولی خوب ای کاش illegalyasync رو زودتر درزندگیم میدیدم. شاید به مشکل خودم پی می بردم و این اشتباه رو نمیکردم و این ویروس منتشر نمی شد ولی چه کنم که زندگی همینه و همیشه بخت با شما یار نیست و همچنین دانش!
راستی illegalyasync جان من خودم اصلا شوخ نیستم ولی CIV تا حالا یکی دو بار تو تسهاش شوخیهای جالبی باهام کرده. یادم میاد 8 روز پیش وقتی رو لپتاپ یکی از دوستام تستش میکردیم یکی از بچه هاش موقع اجرا تنظیمات موشواره ! رو دستکاری میکرد! یا یکی از بچه هاش بعد از یه تست چند روزه یه شوخی جالب انجام میداد که بهتره بهش فکر نکنی: باشه خودت آلوده میشی میبینی !

ضمنا من فکر میکنم تا روزی که به CIV0.004 و یا فرزندانش آلوده نشدین زیاد در مورد رابطهء هوش مصنوعی و ویروسها فکر نکنید. نه شما illegalyasync و نه شما Inprise جان.

برای اون دوستی هم که از وقت و این جور چیزا حرف زد: همین قد بدون که من فکر میکنم راهی برای کنترل این ویروس وجود نداره. تو نمیخواد وقتتو تلف کنی به نتیجه نمیرسی !.

greenway
چهارشنبه 20 تیر 1386, 11:45 صبح
یادم میاد 8 روز پیش وقتی رو لپتاپ یکی از دوستام تستش میکردیم یکی از بچه هاش موقع اجرا تنظیمات موشواره ! رو دستکاری میکرد! یا یکی از بچه هاش بعد از یه تست چند روزه یه شوخی جالب انجام میداد که بهتره بهش فکر نکنی: باشه خودت آلوده میشی میبینی !

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

Inprise
چهارشنبه 20 تیر 1386, 19:22 عصر
@watjomanjee : لطفا با یکی از مدیران ارشد سایت تماس بگیر تا مشکل آی دیت رو حل کنن و بتونی با آی دی قبلی ات بنویسی و لطفا دیگه با این آی دی دوم چیزی ارسال نکن . ممنون

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

civ0003
چهارشنبه 20 تیر 1386, 23:06 عصر
سلام.
حالا خوب شد. چون حرفات رنگ و بوی خوبی دارن inprise جان. امیدوارم همیشه همینطور ساده و دوستانه حرف بزنی.0.004 CIV رو بزودی اینجا آپلود میکنم. الان 6 ساعته که به خودش و سورسش دسترسی ندارم. تا یکشنبه هفته بعدهم در دسترس نخواهد بود. از این رو آپلود میره برای دوشنبه. یه نکته هم بگم : اونقدام که فکر میکنی سنم به فوتبال دستی نمیخوره.
من خودم از کل کل متنفرم ولی وقتی یه جایی یه چند نفر "متذکر" شدن رو با "مضحکه" کردن اشتباه میگیرن و تنها راه ارتباطی یه تعداد نوشتس مجبورم کل کل کنم چون . . .بگذریم.

civ0003
یک شنبه 24 تیر 1386, 01:32 صبح
سلام.
اینم دو تا civ0.004. فقط امیدوارم گیر ندین که آی این ویروس نیست به اینا میگن فلان... شما هر چی دلتون خواست صداش کنین. در ضمن انتظار نداشته باشین بعد از 15 دقیقه کنترل سیستم رو در دست بگیره چون برای اینکه خیلی حملهء سنگینی به سیستمون نکنه و قابل کنترل باشه سرعت همانند سازیش رو آوردم پایین. البته اگه یه سریعش رو خواستین میتونین به من خبر بدین یا خودتون با یه کم دستکاری سرعتش رو ببرین بالا. اینم بگم من هنوز به فایل هام دسترسی ندارم. 2 شنبه اگه خواستین سورسشو میزارم براتون. البته اونقدر ساده هست که سورس نخواد!. راستی خود این چیزی که دریافت میکنین چیز خاصی نیست. باید اجراش کنین و بعد برید سراغ کارهای خودتون. باش کاری نداشته باشین. بعد از اینکه 10 ساعت فعالیت کرد برید دنبال بچه ها بگردین و بررسی شون کنید چیزای جالبی میبینین. البته اینها هم چیز خاصی نیستن و حوادث واقعا جالب 150 ساعت زمان میخواد. خوب همونطور که گفتم میتونین سرعت همانندسازی رو ببرین بالا تا نتایج رو زودتر ببینید ولی این همانندسازی رو انفجاری میکنه و ممکنه کامپیوترتون از دست بره! تصمیم با خودتونه!
بفرماین CIV0.004 :

civ0003
سه شنبه 26 تیر 1386, 13:32 عصر
سلام.
خوب عمر این تاپیک هم دیگه به سراومده. امروز باید درش تخته بشه. به همین خاطر یکی از قوانین سایت رو زیر پا میذارم تا مدیران شوتش کنن. از مدیران محترم هم میخوام لطفا این کار رو انجام بدن. خوب، خیلی خوب بود. از بعضی از دوستان استفاده بردم. به عنوان آخرین کار زندگیم واقعا نمی دونم خوب بود یا بد. فقط همین قد می دونم که احتمالا حرف درستی زدم. تقریبا دیگه کاری نمونده. حالا که دیگه دارم میرم بذارین تا تهش رو بگم. البته خوبیش اینه که به زودی این تاپیک حذف میشه و اشخاص زیادی نمی تونن بخوننش، هرچند من دارم خودمو گول میزنم که :" نه نه ،مدیران سایت این قسمت رو حذف نمیکنن پس برای اولین و آخرین بار با آدمهایی که تا حالا ندیدیشون درد و دل کن". با همهء این اوصاف امروز قبل از تموم شدن داستان به خواهرم یکم کامپیوتر یاد میدم. طفلک اصلا نمیدونه کلیک چپ چیه کلیک راست چیه!. ای کاش . . .ای کاش . . . اه . . . لعنت به این زندگی که همه چیزش دروغ. دروغ محض. لعنت به من که هنوز نتونستم تو عمرم یه جمله با اطمینان بگم. همیشه شک همیشه شک همیشه شک. نمیدونم آخرش همش دروغ یا توش راست هم پیدا میشه؟ دیگه اصلا مهم نیست. ولی . . .میترسم. آره . . .آره من واقعا می ترسم ولی این کارو میکنم. تا حالا هم اگه این کارو نکردم بخاطر پدرو مادرم بود، دلم براشون میسوخت، ولی دیگه احساس ترحمم به اونها هم نمیتونه جلوی منو بگیره. ای کاش اصلا اونا وجود نداشتن. چون فکر کردن به غم وغصهء اونها منو منصرف میکنه . . . ولی من ،بالاخره امشب تمومش میکنم. نازی . . . نازی . . . نه عزیزم گریه نکن داداشی ِ لعنتی رو میخوای چی کار که دو سال دیگه این افکار احمقانشو به تو هم منتقل کنه که . . . مثل مامان و بابا زندگی کن. . .
مثل همیشه بدقولم. نه سورسciv هیچوقت آپلود شد وقولی هم دو شب پیش به یکی دادم هنوز . . .. امیدوارم تا امشب به همشون برسم. امیدوارم. "امید" : احمقانه ترین کلمهء زندگیم که از قضا بیشتر از بقیهء لغات استفاده کردم. مثل "خدا" با وجود اینکه بش ایمان نداشتم خیلی وقتا میگفتم ای خدا . . .هه هه هه هه . . .. نمیدونم . . . نمیدونم . بذار ببینم آره یه کار مونده برام . . . خوب . . . براتون میگم . . . اهم . . . آره میگم. امروز میخوام به دختری که 4 سال دوستش داشتم و تا حالا بش نگفتم بگم : "سلام. 4 سال با تمام وجود دوستت داشتم. خدا!!! حافظ !" بذار اگه خدا هست مواظبش باشه. ولی مثل اینکه مواظب من نبود. الان یکم فکر میکنم خدا هست. من حرفم بهت اینه:
ماییم و موج سودا، شب تا بروز تنها خواهی بیا ببخشا، خواهی برو جفا کن
هرچند میدونم :
بر شاه خوب رویان واجب وفا نباشد ای زرد روی عاشق تو صبرکن وفا کن
خوب دیگه چقد؟ اصلا گور بابای این شعرا همش چاخان پاخان سر هم کردن.
اصلا امکان نداره که باشی. عمرم رو گذاشتم تا . . . پس کوشی ؟ دروغه بابا دروغه! ولی من بهتون میگم : دروغه ولی گول بخورین. گول بخورین نذارین زندگیتون به فاک بره. اه لعنتی. حوصلم از تایپ کردن داره سر میره... ولی خوب این ریزه کاریهارو تموم میکنم. هرطور شده. هیچی نباید نیمه کاره بمونه جزاین زندگیه لعنتی.
قبل از نوشتن چیزی که واقعا حرف دل منه و درضمن باعث نقض اساسی قوانین سایت میشه بگم که امروز من بازم به اینجا سر میزنم. اگه درش تخته نشده بود و کسی چیزی نوشته بود حتما میخونم.راستی اگه به سرتون زد که نصیحتم کنید اینو بگم :
رو سر بنه به بالین تنها مرا رها کن ترک من خراب شب گرد مبتلا کن.
ضمنا اینم بگم همهء ابیات این نوشته چه قبلیها و چه بعدیها رو مثل محسن نامجو بخونین. به نظر من بهترین شکلی اجرایی بود که منو ارضا میکرد و همون چیزی بود که من میخواستم.
دیگه آخرین دفعاتیه که میام. واقعا bye.

هستی ازما آلت خورده هستیم ما از هستی
هستی ازما آلت خورده هستیم ما از هستی
اهم اِهم...
اهم...
هستی ازما آلت خورده هستیم ما از هستی
هستی ازما آلت خورده هستیم ما از هستی

هستی از ما آلت خورده است و پندارد همی خورده ایم ما ز هستی، موز هستی را آلت گونه میخوریم ما بی بدون بی هیچ هستی که هست باشدمان
برای روز مبادا مباد که باشیم ما بر هستی ماندگارتر از هستهء هلویی که نیست شود از برای آمدن ِ هستهء دیگر برهستی
که هست باشدمان برای روز مبادا مباد که باشیم ما برهستی
ماندگارتر از هستهء هلویی که نیست شود از برای آمدن ِ هستهء دیگر برهستی
هستی از ما آلت خورده هستیم ما از هستی
...
وتنها همان هستِ بی هست است که هل می دهدمان شتاب کنید تا بمانیم برهستی و نمانیم از هستی
میدویم ما بی بدون بی هیچ هستی
گاوآهن گونه و میدویم ما بی بدون بی هیچ هستی
...
وین میانه یکی نیست بر خالی هستهء من ِ هلو شده هست شده یکی آلت که خورده ام من از هستی و درد میکند بدجور
درد میکند بدجور
طوری که روی دشت هستی بدوم و نعرهء من و ما هم هستیم برآورم که من ... نه باید بدوم
فقط یک کلمه بگویم که من ... نه باید بدوم،بدوم،بدوم و بگویم، بدوم و بگویم بر هستیان ِ بر هستی :
هستی ازما آلت خورده هستیم ما از هستی ازما آلت خورده هستیم ما از هستی ازما آلت خورده هستیم ما از هستی ازما آلت خورده هستیم ما از هستی ازما آلت خورده هستیم ما از هستی ازما آلت خورده هستیم ما از هستی ازما آلت خورده هستیم ما از هستی ازما آلت خورده هستیم ما از هستی ازما آلت خورده هستیم ما از هستی. . . . . . . .................................................. ....... هستی ازما آلت خورده هستیم ما از هستی. . . . . ..................................................

greenway
سه شنبه 26 تیر 1386, 13:41 عصر
بعد از مدتی یکی از بچه های ویروس به جای شما به فروم برنامه نویس وارد شده و پست جدید خواهد نوشت

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

illegalyasync
سه شنبه 26 تیر 1386, 18:06 عصر
اوه ! چقدر دل رفیقمون پره
بذار من یه کمی در مورد ویروست بنویسم . بعدا حالت بهتر میشه میای میخونیش میبینی دنیا همونقدر تاریکه که خودت بخواهی

به این کارهائی که کردی میگن Shell Modification و خیلی ساده میشه جلوشونو گرفت . هم نورتن هم Kaspersky بدون اینکه Sig ویروستو داشته باشن نمیذارن حتی اجرا بشه پس در مجموع این ویروس هیچ شانسی نداره و کاملا بی ارزش هستش . اول یک فایل با نام تصادفی میسازی و یه رکورد با عنوان Motherboard Update Driver به رجیستری اضافه میکنی و هر دو فایلت رو تو به لیست فایلهائی اتواستارت ویندوز اضافه میکنی . دستکاری کردن کلیدهای رجیستری اینترنت اکسپلورر و استفاده از tftp و ...تابلو ترین کاری هست که worm ها و ویروسها انجام میدن . احمقترین آنتی ویروسم اینو میفهمه

M A R S H A L
چهارشنبه 27 تیر 1386, 16:25 عصر
باید بگم که واقعا" نا امید شدم... وقتی هموطنی مثل شما رو میبینم که وقت زیادی (طبق فرمایش خودتون) را روی چنین کاری میگذاره و در نهایت نتیجه کار این فایلهای ضمیمه شده شده... مومن اونهمه ادعا و تبلیغ آخرش همین ؟؟؟ اصلا" نیازی به اجرای فایلهات نیست،‌ فقط کافیه یه کوچولو با دیباگر ها آشنا باشی،‌ تا کل عملیاتی که فایلهای شما قرار هست که انجام بدن ،‌بیاد دستت... راستی من آخرش متوجه نشدم که چطوری قراره این فایلها به "Hardware" آسیب بزنند؟

mountainking
سه شنبه 09 مرداد 1386, 13:59 عصر
من فایلاتو دیدم. اینایی که تو اینجا گذاشتی که برمیگرده به عصر اختاپوس!!!!!!. این dcomrpcex یا دستکاریهای رجیستری که تو کردی چیز جدیدی نیست. ببینم آخرین بار کی سرچ کردی؟ این کاربرد AI که میگفتی دقیقا کجای برنامت هست؟:لبخند: من که چیزی ندیدم.:متفکر: کسی چیزی توی این فایلا دیده؟ اونجایی که فایلت خودشو کپی میکنه به نظرم یه مقدار مشکل داره!. چی میخواستی بنویسی؟ این چیه؟ تو که به قول خودت "بچه های civ" رو خراب میکنی؟ یه copyfile استفاده میکردی، راحت. API ویندوزم نمیشناسی،نه؟:گیج: