# مباحث متفرقه برنامه نویسی > پروژه‌های Open Source >  پروژه ساخت آنتی ویروس

## pm_hamze

**با سلام به همه دوستان گلم ومدیران زحمت کش و خوب این سایت فوق العاده**
در پست های قبلی خواهش کردیم از مدیران عزیز که در مورد ساختار ویروسها یا تروجانها و کرمها شروع به بحث کنیم که با مخالفت مدیران عزیز مواجه شدیم و ما هم با تمام وجود قبول کردیم و دیگر بحثی در مورد این مطلب نموند.
اما چند سالی است که من در مورد ساختار برنامه های آنتی ویروس تحقیق می کنم و تا حالا چنتا آنتی ویروس ساده در عین حال نسبتا خوب نوشته ام اما اگر دوستان تمایل داشته باشند با همکاری همه آخرین  بر نامه آنتی ویروسی که نوشته ام رو کاملتر کنیم و بتوانیم به دیگران هدیه کنیم.
می خواهیم در ابتدا برنامه نوشته شده را براتون توضیح بدهم و دوستان نظرات-انتقاد و پیشنهادهاشون رو ارائه کنند.
1-در ابتدا برنامه دارای یک بانک اطلاعاتی ایست که شما می توانید با آمدن ویروس های جدید به برنامه معرفی کنید که تاکنون من نزدیک به 1000 تا ویروس رو معرفی کردم.
2-یکی از قسمتهای برنامه چک کردن اسم فایل های موجود در سیستم یا فایلهای جدید با اسامی مندرج در بانک اطلاعاتی.
3-بستن پروسه از تسک منیجر بر اساس نام موجود در بانک اطلاعاتی
4-بررسی ریجستری و پاک کردن کلیدهایی که اسامی مندرج در بانک اطلاعاتی وجود دارد.
5-کنترل تمام وقت قسمتهای RUN  در ریجستری و STARTUP .
تا کنون همین کار هارو انجام دادم اولا که دوستا نظر بدهند که آیا این کارها درست است یا نه دوم اینکه نظر بدهند در مورد اظافه کردن قسمتهای دیگه و سوم اینکه به نظر من آنتی ویروسهای معمول داخل فایل رو هم بررسی می کنند و نصبت به یک سری کدها عکس العمل نشون می دهند که من نتونستم فایلها رو ادیت کنم و یک سری دستورات خاص رو درون آن جستجو کنم.چون هر ویروسی با یک بر نامه نوشته میشه و من نتئنستن فایلها رو اینطوری بررسی کنم.
با تشکر از دوستان منتظر نظراتتون هستم

----------


## vcldeveloper

1- تاپیک به بخش پروژه های Open-source منتقل شد.
2- عنوان تاپیک اصلاح شد.

----------


## pm_hamze

ممنون اما به نظرتون اینجا کسی جواب میده

----------


## pm_hamze

و این پست به چه دلیلی مربوط به Open Source میشه بگید بفهمیم این یه فایل exe است
 و میشه بگی run time نه Open Source ...

----------


## pm_hamze

آقای کشاورز لطفا جواب بدید

----------


## vcldeveloper

> این پست به چه دلیلی مربوط به Open Source میشه بگید بفهمیم این یه فایل exe است


اینجا تنها تالاری از سایت برنامه نویس است که برای توسعه گروهی نرم افزار در نظر گرفته شده.
عنوان اولیه تاپیک شما این بود:



> *دعوت به همکاری برای تکمیل یک برنامه واقعا کار بردی و ضروری*


دعوت از کاربران به همکاری در تکمیل برنامه، با ارائه نظر و Feedback فرق میکنه! در نتیجه، اینطور فرض شد که شما قصد توسعه یک آنتی ویروس با کمک کاربران سایت را دارید. به همین دلیل هم تاپیک به این بخش منتقل شد.
در ضمن، برای تاپیک هایی که ایجاد می کنید، عنوان مناسب انتخاب کنید.

موفق باشید

----------


## terminator68

سلام دوستان.

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

اگه دوستان همت کنند با هم یک آنتی ویروس قوی و خوب بسازیم.

به امید خدا و به امید آن روز که تمام جای دنیا از آنتی ویروس ایرانی استفاده کنند.

----------


## miradli

با سلام
برای درک بهتر از کارکرد آنتی ویروس بد نیست به یک پروژه اپن سورس و سورس کد های موجود نگاه بندازیم تا نتیجه بهتری بگیریم ، من خودم بیشتر چیزهایی که الان می دونم از سورس کدها یاد گرفتم !
یک آنتی ویروس اپن سورس که با زبان ویژوال بیسیک 6 نوشته شده ( تحت مجوز GPL منتشر شده ) از سایت sourceforge دانلود کرده بودم ، حالا ضمیمه می کنم تا شاید با مطالعه اون حرکت خوبی انجام بشه .

1 فایل اول حاوی سورس کد ویروس اسکنر .
2 فایل دوم حاوی سورس کد آنتی ویروس به همراه کنترل های گرافیکی و ظاهری زیبا به همراه بهینه ساز سیستم .
3 فایل سوم حاوی برنامه کمپایل شده آنتی ویروس موجود در فایل دوم .

امیدوارم مفید باشه و ازش استفاده بشه

----------


## Morteza_SOS

برای دلفی کسی چیزی سراغ نداره ؟

----------


## miradli

> برای دلفی کسی چیزی سراغ نداره ؟


این لینک رو پیدا کردم ! AID AV. Delphi Antivirus source code
این لینک هم پیدا کردم اما روسی هست ... . http://www.cracklab.ru/f/index.php?a...orum=6&page=-1

لینک دانلود سورس کد ویروس اسکنر با دلفی 

امیدوارم برای دلفی کارای عزیز مفید باشه ( عشق من دلفی )


اما برای زبان های دیگه اگر با ++C و Python آشنا هستید آنتی ویروس اوپن سورس وجود داره 
*ClamAV و Clamwin*


برای دریافت برنامه و سورس کد و بانک ویروس می تونید به لینک های زیر برید :
*Virus Database*

*Sources*

*ClamAV for Windows*

*ClamWin Free Antivirus*

ClamWin SourceForge.NET

بازدید از این لینک هم در این مورد خالی از لطف نیست :
Free Anti-Virus Software List 


امیدوارم کمکی کرده باشم .

----------


## توسعه نویس

برای ساخت آنتی ویروس باید مسائل مختلفی رو در نظر گرفت:

1- باید لیست تمام ویروس های منتشر شده از زمان ویندوز 95 رو به دست آورد. هم چگونگی کار کرد و هم یک نسخه از خود ویروس رو داشت. میشه نام و نحوه فعالیت ویروس ها رو از سایتهای آنتی ویروس های معروف پیدا کرد. اما در مورد بدست آوردن یک نسخه از ویروس ها نمی دونم. نسخه ویروس ها و برنامه آنتی ویروس بهتره در محیط ها مجازی مثل Virtual PC و یا vmWare Virtual machine آزمایش شوند.

2- روزانه بین 1 تا بیش از 10 ویروس جدید شناسایی می شوند، پس باید قدرت به دست آوردن ویروس های جدید و نحوه فعالیتشون رو داشت. در غیر اینصورت آپدیت بانک اطلاعاتی یا نمیشه و یا ناقص انجام میشه.

3- برنامه نویسی آنتی ویروس باید خیلی سیستمی انجام بشه. مثلا تایمر کنترل کننده برنامه نباید پردازش زیادی رو از CPU بگیره. ضمنا باید بشه با کرنل سیتم عامل به نوعی ارتباط داشت. مثلا در مواقعی که فعالیت مشکوکی انجام میشه بشه از پردازش ها خود سیستم عامل و توابعی که درون کار در حال ارسال پیغام به سیتم عامل هستند نیز کمک گرفت.

----------


## terminator68

سلام.

انتی ویروس در هر لحظه باید کد فرآیند ها رو چک کنه.

مثلا ویروسی میاد فولدر اپشن رو غیر فعال میکنه و آنتی ویروس باید در هر لحظه چک کنه.

----------


## Mask

> مثلا ویروسی میاد فولدر اپشن رو غیر فعال میکنه و آنتی ویروس باید در هر لحظه چک کنه


این فرایند رو چطور باید انجام داد.

----------


## Felony

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

البته به همین سادگی ها هم نیستا !!!

----------


## vcldeveloper

> البته به همین سادگی ها هم نیستا !


آنتی ویروس ها توابع مختلف API مثل تابع کار با رجیستری را Hook می کنند تا قبل از اینکه برنامه ایی بتوانند این توابع را اجرا کند، آنتی ویروس بتواند بررسی های خود را انجام دهد.

----------


## maalimom

سلام
دوست عزیز من یک آنتی ویروس تقریبا حرفه ای طراحی کردم
شاید بتونم کمکتون کنم

قابلیت جستجو و حذف و تشخیص ویروس و کلیدهای خراب رجیستری و حفاظت از فلش مموری ها و ...

----------


## maalimom

سلام
دوست عزیز من یک آنتی ویروس تقریبا حرفه ای طراحی کردم
شاید بتونم کمکتون کنم

قابلیت جستجو و حذف و تشخیص ویروس و کلیدهای خراب رجیستری و حفاظت از فلش مموری ها و ..
maalimom@yahoo.com

----------


## Mask

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



> آنتی ویروس ها توابع مختلف API مثل تابع کار با رجیستری را Hook می کنند


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

----------


## maalimom

سلام دوست عزیز من یک آنتی ویروس تقریبا حرفه ای نوشته ام
اگه مایلید میتونم بهتون کمک کنم

با امکان ساخت فایل حذف یا killer
امکان جستجو تشخیص و حذف کامل ویروس
برگردادن پوشه ها و فایلهای به ظاهر حذف شده
امکان تغییر در رجستری 
حفاظت از فلش مموری ها و حافظه ها
و ...
maalimom@yahoo.com

----------


## Felony

> سلام دوست عزیز من یک آنتی ویروس تقریبا حرفه ای نوشته ام
> اگه مایلید میتونم بهتون کمک کنم
> 
> با امکان ساخت فایل حذف یا killer
> امکان جستجو تشخیص و حذف کامل ویروس
> برگردادن پوشه ها و فایلهای به ظاهر حذف شده
> امکان تغییر در رجستری 
> حفاظت از فلش مموری ها و حافظه ها
> و ...
> maalimom@yahoo.com


دوست گرامی شما نام کاربری کسی که این تاپیک رو ایجاد کرده بخون ببین زیرش چی نوشته !!!
ایشون " محروم شده " هستند یعنی اخراج شدند برای همین جواب 3 پست شما رو ندادن ...

----------


## Mask

> سلام دوست عزیز من یک آنتی ویروس تقریبا حرفه ای نوشته ام
> اگه مایلید میتونم بهتون کمک کنم
> 
> با امکان ساخت فایل حذف یا killer
> امکان جستجو تشخیص و حذف کامل ویروس
> برگردادن پوشه ها و فایلهای به ظاهر حذف شده
> امکان تغییر در رجستری 
> حفاظت از فلش مموری ها و حافظه ها
> و ...
> maalimom@yahoo.com


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

----------


## Mask

> آنتی ویروس ها توابع مختلف API مثل تابع کار با رجیستری را Hook می کنند تا قبل از اینکه برنامه ایی بتوانند این توابع را اجرا کند، آنتی ویروس بتواند بررسی های خود را انجام دهد.


جناب کشاورز وقتی من یک برنامه یا تابع  رو می خام هوک کنم دیگر ، آنتی ویروسها بهش گیر میدند و برنامه منو ویروس میشناسن. باید چیکار کنم؟؟/

----------


## vcldeveloper

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


علتش اینه که اونها توابع را سطح پایین تری هوک می کنند. مثلا شما تابع را در سطح User Mode هوک می کنید، اونا میان تابع Kernel Mode ایی که API مورد نظر شما فراخوانی میکنه را در سطح کرنل هوک می کنند. در نتیجه راحت متوجه میشند شما میخواید تابع API ایی را هوک کنید، و عکس العمل نشون میدند. در واقع آنتی ویروس های حرفه ایی وقت خودشان را با سر و کله زدن با توابع هوک User Mode تلف نمی کنند. هر چه بیشتر به هسته ویندوز نزدیک باشند، کنترل بیشتر بر عملکرد برنامه ها و کاربر دارند، و متوقف کردنشان هم سخت تر میشه.

----------


## Mask

با سلام و خسته نباشید 
پس می فرمایید باید چی کار کنیم که سبک هوک کردنمون Kernel Mode باشه و آنتی ویروس نفهمه  که User Mode  هستش.

----------


## vcldeveloper

> پس می فرمایید باید چی کار کنیم که سبک هوک کردنمون Kernel Mode باشه و آنتی ویروس نفهمه  که User Mode  هستش.


باید با کرنل ویندوز و چگونگی برنامه نویسی برای آن آشنا باشید، و برای ویندوز Driver بنویسید.

----------


## Mask

> باید با کرنل ویندوز و چگونگی برنامه نویسی برای آن آشنا باشید، و برای ویندوز Driver بنویسید


میشه بفرمایید با چه زبونی. باید درایور بنویسم. و آیا آنتی ویروسی مثل AVG یا NOD روی سیستم درایور نصب میکنه.

----------


## vcldeveloper

> میشه بفرمایید با چه زبونی.


مناسب ترین ابزار برای نوشتن درایور در ویندوز در حال حاضر ++VC هست که هم کامپایلرش Kernel Mode را پشتیبانی میکنه، هم محصول خود مایکروسافت هست و برای این کار قابلیت هایی براش در نظر گرفته شده، هم مثال های DDK براش وجود داره.



> آیا آنتی ویروسی مثل AVG یا NOD روی سیستم درایور نصب میکنه.


من باهاشون کار نکردم، ولی احتمالا این کار را می کنند. کاسپرسکی را می دانم که این کار را میکنه، چون ازش استفاده کردم.

----------


## Mask

با  سلام به جناب كشاورز عزيز
من پيگيري كردم درمورد نوشتن درايور با ويژوال سي اما هيچ كتاب كامل به زبان فارسي كه بتونه منو از ابتدا راهنمايي كنه پيدا نكردم و انگار اين بحث خيلي سنگين و پيچيده است آيا شما كتابي (الكترونيكي يا كتاب معمولي) سراغ نداريد كه در اين مورد آموزش داده باشد.
و يه سواله ديگه اگر بتوانيم با ويژوال سي درايور بنويسيم مي توانيم قطعات كامپيوتر را شبيه سازي كنيم.

----------


## MFiRE

> من پيگيري كردم درمورد نوشتن درايور با ويژوال سي اما هيچ كتاب كامل به زبان فارسي كه بتونه منو از ابتدا راهنمايي كنه پيدا نكردم و انگار اين بحث خيلي سنگين و پيچيده است آيا شما كتابي (الكترونيكي يا كتاب معمولي) سراغ نداريد كه در اين مورد آموزش داده باشد.


کتابه *نفوذ به نرم افزار* (انتشارات ناقوس) ، درایور نویسی با اسمبلی رو اموزش داده !

کتاب ماله ساله 84 هست . شاید گیرتون بیاد !

----------


## vcldeveloper

> من پيگيري كردم درمورد نوشتن درايور با ويژوال سي اما هيچ كتاب كامل به زبان فارسي كه بتونه منو از ابتدا راهنمايي كنه پيدا نكردم


منبع فارسی بدرد بخوری پیدا نخواهید کرد. اگر میخواید با تکیه بر منابع فارسی *موجود* آنتی ویروس بنویسید، بهتر هست که وقت خودتان را تلف نکنید، چون به جای خاصی نمیرسید.




> انگار اين بحث خيلي سنگين و پيچيده است


بله!




> آيا شما كتابي (الكترونيكي يا كتاب معمولي) سراغ نداريد كه در اين مورد آموزش داده باشد.


خیر، ولی می تونید درباره DDK Windows، و Kernel-mode programming تحقیق کنید. البته یکی از چیزهایی که باید روش کاملا تسلط داشته باشید، آشنایی با نحوه کار ویندوز هست، برای این کار در حال حاضر بهترین کتاب Windows Internals هست. بطور کلی، در بخش امنیت نرم افزار یکسری کتاب خوب در تاپیکی با عنوان کتابخانه امنیت نرم افزار، توسط Inprise معرفی شده.

----------


## Mask

> يه سواله ديگه اگر بتوانيم با ويژوال سي درايور بنويسيم مي توانيم قطعات كامپيوتر را شبيه سازي كنيم


نظرتون راجع به این چیه.

----------


## Mask

ای بابا، خیلی وجدانا سخته!! هیچکی سر در نمیاره حتی استادمون!!
دوستان لطف می کنند نمونه کدی برای هوک کردن Kernel Mode اگه دارند بزارند تا لا اقل از اینا شرو کنیم.
و همچنین آیا اگه از طریق Kernel Mode توابع رو هوک کنیم دیگه هیچ آنتی ویروسی  گیر نمی ده؟

----------


## vcldeveloper

> همچنین آیا اگه از طریق Kernel Mode توابع رو هوک کنیم دیگه هیچ آنتی ویروسی  گیر نمی ده؟


بستگی به آنتی ویروسش داره. اگر قرار بود هیچکدوم گیر ندند که ویروس نویس ها جشن می گرفتند!

----------


## Mask

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

----------


## vcldeveloper

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


دوست عزیز، من قبلا هم گفتم؛ اطلاعی در این زمینه ندارم. چیزهایی که میدونستم را گفتم.

----------


## rostamkhani

سلام دوستان عزیز 


هشدار زیر رو بخوانید و از سایت استفاده کنید
این سایت دیتابیسی از کد ویروسها می باشد
***** *WARNING** ****
_The Virus Source Code Database (VSCDB) is for information purposes only, for researchers and computer virus or programming enthusiasts. No warranty is given or to be implied for any software listings contained herein. You take full responsibility for any damages caused by compiling, running, or sharing this information. Be aware that running any malicious code on another's computer or computer network might be a criminal act. Use at your own risk!_http://www.totallygeek.com/vscdb/

و

اینجام سورس چندتا ویروس هست
http://www.62nds.co.nz/pg/e90.php
احتمالا واسه ایران بستنش اگه مشکل داشتین از لینک زیر استفاده کنید با Copy و Paste
http://www.hideany.com/index.php?q=a...9wZy9lOTAucGhw

و 
http://www.google.com/search?hl=en&q=virus+source

----------


## alfa1988

سلام من ميخوام يك آنتي ويروس به زبان اسمبلي بنويسم به عنوان پروژه ترم ميخام يكم تحقيق كنم و واسه چند تا ويروس كه با فلش منتقل ميشن آنتي ويروس بنويسم لطفا منو راهنمايي كنين

----------


## manvaputra

> یه نمونه کدی چیزی که واسه شروع کافی باشه


دوست عزیز یه نگاه به این لینک بندازید:

Kernel-mode API spying

----------


## RoostaYeBekr

> برای دلفی کسی چیزی سراغ نداره ؟


بخصوص C#‎.NET ؟

 :لبخند: 
 :لبخند گشاده!:

----------


## Felony

> بخصوص C#‎.NET ؟


دوست عزیز کل بحث این تاپیک رو ساخت یه آنتی ویروس واقعی بوده و آنتی ویروس واقعی تقریبا با Kernel Mode بودن محقق میشه اونوقت شما میگی #C ؟ آخه خود #C به دات نت وابستس !
این که نشد آنتی ویروس .

----------


## ehsanforghanivb

سلام.حالا من این آنتی ویروس را فارسی کردم :گیج: !!!!!!!!!!!!!!!!!!!!

لینک دانلود فایل اجرایی
رمز عبور:52111

عالیه: :تشویق: ..
خوبه: :لبخند: ...
متوسطه: :متفکر: ...
بده :متعجب: ...
خیلی بده: :گریه: ...
...را برام به ehsan.forghani@yahoo.com ایمیل بزنین!!!!!!!!!

----------


## sang9111

> سلام من ميخوام يك آنتي ويروس به زبان اسمبلي بنويسم به عنوان پروژه ترم ميخام يكم تحقيق كنم و واسه چند تا ويروس كه با فلش منتقل ميشن آنتي ويروس بنويسم لطفا منو راهنمايي كنين


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

----------


## C_Sharp_Dot_Net

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

----------


## ra0661

رفيق حداقل سورس آنتي ويروس را بزار تا ما هم بتونيم كاري برات بكنيم

----------


## xxxxx_xxxxx

> رفيق حداقل سورس آنتي ويروس را بزار تا ما هم بتونيم كاري برات بكنيم


سورس اين برنامه تو پست شماره هشت از همين تاپيك وجود داره. (ايشون فقط فارسيش كردند)

----------


## ra0661

سلام رفيق خيلي تشكر از كمك ات ولي من اين را كه گرفتم من مي خواستم  از اين دوست كه اين را نوشته در خواست كنم كه سورس آنتي اش را بزاره تا ما هم كمكي كنيم همين با زهم تشكر مي كنم
------------------------------------------------
pm_hamze 

*پروژه ساخت آنتی ویروس* 
**با سلام به همه دوستان گلم ومدیران زحمت کش و خوب این سایت فوق العاده**
در پست های قبلی خواهش کردیم از مدیران عزیز که در مورد ساختار ویروسها یا تروجانها و کرمها شروع به بحث کنیم که با مخالفت مدیران عزیز مواجه شدیم و ما هم با تمام وجود قبول کردیم و دیگر بحثی در مورد این مطلب نموند.
اما چند سالی است که من در مورد ساختار برنامه های آنتی ویروس تحقیق می کنم و تا حالا چنتا آنتی ویروس ساده در عین حال نسبتا خوب نوشته ام اما اگر دوستان تمایل داشته باشند با همکاری همه آخرین بر نامه آنتی ویروسی که نوشته ام رو کاملتر کنیم و بتوانیم به دیگران هدیه کنیم.
می خواهیم در ابتدا برنامه نوشته شده را براتون توضیح بدهم و دوستان نظرات-انتقاد و پیشنهادهاشون رو ارائه کنند.
1-در ابتدا برنامه دارای یک بانک اطلاعاتی ایست که شما می توانید با آمدن ویروس های جدید به برنامه معرفی کنید که تاکنون من نزدیک به 1000 تا ویروس رو معرفی کردم.
2-یکی از قسمتهای برنامه چک کردن اسم فایل های موجود در سیستم یا فایلهای جدید با اسامی مندرج در بانک اطلاعاتی.
3-بستن پروسه از تسک منیجر بر اساس نام موجود در بانک اطلاعاتی
4-بررسی ریجستری و پاک کردن کلیدهایی که اسامی مندرج در بانک اطلاعاتی وجود دارد.
5-کنترل تمام وقت قسمتهای RUN در ریجستری و STARTUP .
تا کنون همین کار هارو انجام دادم اولا که دوستا نظر بدهند که آیا این کارها درست است یا نه دوم اینکه نظر بدهند در مورد اظافه کردن قسمتهای دیگه و سوم اینکه به نظر من آنتی ویروسهای معمول داخل فایل رو هم بررسی می کنند و نصبت به یک سری کدها عکس العمل نشون می دهند که من نتونستم فایلها رو ادیت کنم و یک سری دستورات خاص رو درون آن جستجو کنم.چون هر ویروسی با یک بر نامه نوشته میشه و من نتئنستن فایلها رو اینطوری بررسی کنم.
با تشکر از دوستان منتظر نظراتتون هستم

----------


## emadfa

البته یک چیز مهم که متاسفانه دوستان به اون اشاره نکردند, روش Heuristic Analysis  هست که برای نوشتن یک آنتی ویروس از هر چیزی مهمتره. چون حتی با به روز بودن بانک اطلاعاتی آخر سر هم این خود آنتی ویروسه که باید با شبیه سازی و بررسی ساختار برنامه مخرب بودن اون رو تشخیص بده. 

موفق باشید.

----------


## Mask

> سلام رفيق خيلي تشكر از كمك ات ولي من اين را كه گرفتم من مي خواستم از اين دوست كه اين را نوشته در خواست كنم كه سورس آنتي اش را بزاره تا ما هم كمكي كنيم همين با زهم تشكر مي كنم
> ------------------------------------------------
> pm_hamze


این دربه در اخراج شده :لبخند:

----------


## Mask

> سلام می خواستم پروژه اسمبلی تحول استاد دهم شما می توانید کمکم کنید:
> برنامه ای بنویسید که تقویم یک سال دلخواه را روی خروجی نمایش دهد؟(برای این منظور سال مورد نظر و روز اول سال از ورودی گرفته شود و تقویم یک ماه خاص آن که از کاربر سوال می شود نمایش داده می شود).
> توجه: برنامه باید کبیسه بودن یا نبودن سال مورد نظر را در نظر بگیرد؟
> 
> لطفا کمک کنید


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

----------


## ebham33

سلام به دوستان

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

--------------------------------------------------------------------
وبلاگ من :http://www.mk-groups.persiangig.com
سایت آوزشی هک ایرانیان راه اندازی شد( با قابلیت آپلود فایل نا محدود با حجم نا محدود) :
http://mehdi-sz.ning.com

----------


## Sahandlab

> با سلام
> برای درک بهتر از کارکرد آنتی ویروس بد نیست به یک پروژه اپن سورس و سورس کد های موجود نگاه بندازیم تا نتیجه بهتری بگیریم ، من خودم بیشتر چیزهایی که الان می دونم از سورس کدها یاد گرفتم !
> یک آنتی ویروس اپن سورس که با زبان ویژوال بیسیک 6 نوشته شده ( تحت مجوز GPL منتشر شده ) از سایت sourceforge دانلود کرده بودم ، حالا ضمیمه می کنم تا شاید با مطالعه اون حرکت خوبی انجام بشه .
> 
> 1 فایل اول حاوی سورس کد ویروس اسکنر .
> 2 فایل دوم حاوی سورس کد آنتی ویروس به همراه کنترل های گرافیکی و ظاهری زیبا به همراه بهینه ساز سیستم .
> 3 فایل سوم حاوی برنامه کمپایل شده آنتی ویروس موجود در فایل دوم .
> 
> امیدوارم مفید باشه و ازش استفاده بشه


________________________-
سلام - آيا نمي شود در پروژه دومي CRC فايل را داد؟ در پروژه اولي كه شد، اما در دومي موفق نشده ام
با تشكر

----------


## volkswagen

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

----------


## volkswagen

سلام-بانک اطلاعاتی این آنتی ویروس بل چی ساخته شده و چجوری که نمیشه بهش دسترسی داشت؟

----------


## majid3000

با سلام ای ول
دستتون درد نکنه منم دارم شروع به برنامه نویسی می کنم الان هم C#‎ را به صورت نیمه حرفه ای بلدم

----------


## sara_t

سلام دوستان
درسته این تاپیک قدیمیه اما من این برنامه رو دانلود کردم اما نمیفهمم که دیتابیس ویروسها کجاست؟
میشه لطف کنید بگید توی دیتا بیس یه ویروس چی ذخیره میشه؟




> با سلام
> برای درک بهتر از کارکرد آنتی ویروس بد نیست به یک پروژه اپن سورس و سورس کد های موجود نگاه بندازیم تا نتیجه بهتری بگیریم ، من خودم بیشتر چیزهایی که الان می دونم از سورس کدها یاد گرفتم !
> یک آنتی ویروس اپن سورس که با زبان ویژوال بیسیک 6 نوشته شده ( تحت مجوز GPL منتشر شده ) از سایت sourceforge دانلود کرده بودم ، حالا ضمیمه می کنم تا شاید با مطالعه اون حرکت خوبی انجام بشه .
> 
> 1 فایل اول حاوی سورس کد ویروس اسکنر .
> 2 فایل دوم حاوی سورس کد آنتی ویروس به همراه کنترل های گرافیکی و ظاهری زیبا به همراه بهینه ساز سیستم .
> 3 فایل سوم حاوی برنامه کمپایل شده آنتی ویروس موجود در فایل دوم .
> 
> امیدوارم مفید باشه و ازش استفاده بشه

----------


## sara_t

هدف اختراع چرخ نیست دوست عزیز 
اما یادگیری این موضوع درک خیلی مسایل دیگه رو بالا میبره. حداقل اگه بفهمیم یه انتی ویروس چطور کار میکنه خیلی چیزا رو یاد گرفته ایم!

----------


## MohsenB

سلام به همه

کسی کدی ، کامپوننتی داره که بشه روی کار تمام برنامه های در حال اجرا نظارت کرد ؟

مثلا بشه فهمید برنامه ها الان دارن به چه فایلهایی اکسس میزنن ؟

یه چیزایی مثل Alfa File Monitor رو پیدا کردم ولی روی ویندوز 7 خطا میده .

----------


## AlgorithmX

من یک پروژه ضد ویروس به زبان VB6 دارم! امدوارم که به دردتون بخوره!

حجمش حدود 1 مگه اما چون سایت قبول نکرد مجبورشدم 3 تیکش کنم!

----------


## akbarg64

سلام.یه سوال دارم.در مورد فایل های آپدیت یه توضیحی بدین.اصلا در مورد این توضیح داده نشد.ممنون.

----------


## Nima NT

> سلام به همه
> 
> کسی کدی ، کامپوننتی داره که بشه روی کار تمام برنامه های در حال اجرا نظارت کرد ؟
> 
> مثلا بشه فهمید برنامه ها الان دارن به چه فایلهایی اکسس میزنن ؟
> 
> یه چیزایی مثل Alfa File Monitor رو پیدا کردم ولی روی ویندوز 7 خطا میده .


واسه این کار باید با مفاهیم Hook آشنا باشید ، برای نوشتن آنتی ویروس لازم هست که تمامی عملیات هوک در سطح کرنل انجام بشه و لازمه اون نوشتن درایور و تسلط بر ++C هستش پس بهتر هست موتور آنتی ویروس رو با این زبان پیاده سازی کنید ( البته کل پست ها رو مطالعه نکردم و اگر قرار هست آنتی ویروسی طراحی بشه عرض کردم ).

----------


## ra0661

داداش ها بزار  رو یکیشون تمرکز کنیم و هر کدوممون رو یه قسمتش کار کنه و بعد از تموم   هر کس سورسشو میزار  بعد یه چیز باحال ازش در میاد نظرتون چیه

----------


## hasht.rood

سلم دوستان
بنده سورس كامل انتي ويروس كاسپر اسكاي ورژن 8 رو دارم
اگر ميتونيد همكاري كنيد و يه انتي ويروس كامل بسازيم پ.خ بدين
منتظرم

----------


## Hossenbor

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

----------


## stahad1

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

----------


## سوداگر

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


فعلا که زننده ی این تاپیک، محروم شده :ناراحت: حالا به هر دلیلی.
خودتان یکی را حَکَم قرار بدید که پی گیر قضیه باشه نه تشنه سورس کد و منفعت طلب و ...

----------


## jafar2012

ببخشید که ما هم یه قدمی تو این تاپیک زدیم
ولی *Dezfoul* راست می گه وبا نظر *Hossenbor* موافق هستم
ولی یه سوالی هست چند وقته توسرم هست ایا استفاده از بانک اطلاعاتی مناسب هست یا به عبارتی این اسم یا پسوند یا ساختار ویروسی رو که می خواهیم داخل بانک اطلاعاتی ذخیره کنیم نمیشه جای دیگه ای ذخیره کرد و ایا بانک اطلاعاتی قابل اطمینان است یا به عبارتی کستی نموتونه به راحتی توش دست کاری کنه
سوال دوم ایا یه انتی ویروس می تونه 0و1 رو هم تحلیل کنده یا به قولی شناسایی بکنه

----------


## IamOverlord

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

----------


## ra0661

الان بیشتر ضد ویروس های همین ایرانی خودمون که اسم نمیبرم از دیتابیس نود 32 و بقیه استفاده میکنن به سادگی فقط کار سختشون این بوده که تونستن به دیتابیس این ویروس کش ها نفوذ کنن حالا به تریقی و با برنامه خودشون بچسبونن

خوب ما هم از همین جاش استارت را میزنیم و جلو میریم تا چیز خوبی ازش در بیاد

----------


## shadel

> با سلام
> برای درک بهتر از کارکرد آنتی ویروس بد نیست به یک پروژه اپن سورس و سورس کد های موجود نگاه بندازیم تا نتیجه بهتری بگیریم ، من خودم بیشتر چیزهایی که الان می دونم از سورس کدها یاد گرفتم !
> یک آنتی ویروس اپن سورس که با زبان ویژوال بیسیک 6 نوشته شده ( تحت مجوز GPL منتشر شده ) از سایت sourceforge دانلود کرده بودم ، حالا ضمیمه می کنم تا شاید با مطالعه اون حرکت خوبی انجام بشه .
> 
> 1 فایل اول حاوی سورس کد ویروس اسکنر .
> 2 فایل دوم حاوی سورس کد آنتی ویروس به همراه کنترل های گرافیکی و ظاهری زیبا به همراه بهینه ساز سیستم .
> 3 فایل سوم حاوی برنامه کمپایل شده آنتی ویروس موجود در فایل دوم .
> 
> امیدوارم مفید باشه و ازش استفاده بشه


از دوستان برنامه نویس کسی میتونه
یه لطفی به من کنه و این برنامه SMP_Virus_Scanner.zip  همین 89 کیلوبایتیه.
کسی میتونه منوی ABOUT رو از زیر منوی اصلی help بذاره جای خود help و مابقی زیر منوی help رو کلا پاک کنه
یعنی جای help روی about بگیره در منو بار.
کسی میتونه این کار رو بکنه؟
ضروری واسم و آپ کنه؟

----------


## djnew2009

سلام 
تو آنتی ویروست سعی کن از Process injection هم استفاده کنی 
تو شرکت هایی که آنتی ویروس می سازند میان از این تکنیک هم استفاده می کنند

----------


## Gharibi.co

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

----------


## Gharibi.co

همه افرادي كه حتي يه بار هم به اينجا سر نميزنين و اصلا اين چيزايي رو كه نوشتم رو نميخونين توجه كنين :
نوشتن آنتي ويروس اونقدر ها هم كه فكر مي كنين  كار پيچيده و سختي نيست تا الان چند نفر رو سراغ دارم كه اين كار رو به تنهايي انجام دادن از جمله همين نويسنده اين تاپيك چيزاي خوبي هم از آب در اومدن ولي به دلايلي كامل نبودن و نياز به كار گروهي دارن 

بياين اعلام حضور كنين باور كنين ميشه موفق شد 

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

----------


## Hossenbor

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

----------


## Hossenbor

در ضمن دوستان با تجربه اگه امکان داره ایده ها و نظراتونو بدین و اینم بگم امتحانامه امکان شروع پروژه اصلی برام نیست تا اون وقت یک جمع بندی و یک تحقیق می کنیم و رویه پروژه کوچولو شروع می کنیم

----------


## Gharibi.co

دوست خوبم  خوشحالم كه بالاخره يه علاقه مند پيدا شد ما الان سه نفر شديم من و شما و خود شروع كننده تاپيك . ايشون از 2 سال پيش اين كار رو شروع كرده به نتايجي هم رسيده ولي نيمه كاره مونده ميشه از تجاربش استفاده كرد 
چند موضوع هست كه بايد مد نظر قرار بديم 
اول اينكه نوشتن يه همچين آنتي كه شما ميگين براي شروع شايد كمي دلخوش كننده باشه ولي اگه بخوايم موفق بشيم بايد وقت و انرژي رو براي اصل كار بزاريم البته نميدونم براي شما چقدر زمان ميبره اگه مي تونين توي يه زمان كوتاه به طوري كه لطمه به درس و وقتتون نزنه به قول معروف براي دست گرمي بد نيست 
موضوع دوم : نتايج تحقيقاتي كه به صورت كلي تا الان كردم اين بوده كه اولا زبان برنامه نويسي مهم نيست ولي ترجيها خونواده سي باشه بهتره (براي دسترسي بهتر به كرنل )بعد از اون مهم موتور اون آنتي ويروسه كه بر بايد تصميم بگيريم به چه شكلي كار كنه مثلا مثل كسپر سكي ديتابيس داشته باشه يا مثل نود فوت پرينت ها رو دنبال كنه كه كلا 2 سيستم متفاوت ولي كارا هستن 
موضوع سوم :تخصص هاي مورد نيازه براي انجام اين پروژه .
بهترين راه اينه كه از هر زبون برنامه نويسي كسي فرد واردي رو تو گروه داشته باشيم چون يه سري سورسهايي رو ميشه تو نت پيدا كرد و با مهندسي معكوس اونها عملكرد دقيق يه آنتي قوي برامون روشن ميشه به جز اون به افراد شبكه كار حرفه اي هم نياز داريم در حدي كه بتونيم با سوراخ هاي ويندوز و بك دورها دقيقاآشنا بشيم و   بستنشون رو توي آنتي خودمون مد نظر قرار بديم . به جز اين موارد يه آلگوريتم نويس ماهر نياز هست كه فقط كارش نوشتن يه آلگوريتم  خيلي قوي و بدون نقص براي موتور آنتي باشه 
پيشنهاد من اينه كه از هر 2 روش كسپر و نود استفاده كنيم و يه جورايي 2 موتوره باشه برنامه اينجوري مو لاي درزش نميره بدست آوردن ديتابيس هم زياد سخت نيست ولي مهم روش به كار بردنشه 
اميدوارم دوستان ديگه هم به زودي به جمعمون بيان كه گروه رو ببنديم و كار رو استارت بزنيم 
لطفا هر كسي كه تخصصي داره حتي اگه فكرميكنه به درد اين كار هم نميخوره اعلام كنه شايد يه جورايي براي بخشي از كار از تخصصش استفاده كرديم 
منتظر پيامهاي شما هستيم

----------


## antimalware

برای این که ما از نرم افزار های داخلی حمایت کنیم ، به امید خدا هر وقت درست و تکمیل شد می توانید بر تست فنی اش روی مرکز تست ما هم حساب کنید 

ما برای شما تست فنی رایگان می گیریم  ، خوبه ؟

 برای اطلاعات به سایت زیر مراجعه کنید

www.u0vd.org

----------


## Hossenbor

سلام من استارت کردم چندتا سوال دارم گرفتن امضای فایل یعنی چی همون کد md5 یا sh1 هست یا نه و سوال دوم اگه بله ایا تمام قسمت فایل برای بدست اوردن امضا استفاده میشود و سوال سوم روش رئال تایم پروتکتینگ چیه و دوما فرقش با حالت کرنل مود چیه و کدوم بهتره برای استفاده اگه باهم فرق دارن و سوال چهارم چه مدت زمان برای من طول میکشه تا این روشو پیاده کنم و سوال پنجم روش هوش مصنوعی تو این زمینه چیه و چطوری میشه پیاده اش کرد و سوال ششم اولین قسمتی که باید روش تمرکز کنم چیه با تشکر

----------


## Gharibi.co

> برای این که ما از نرم افزار های داخلی حمایت کنیم ، به امید خدا هر وقت درست و تکمیل شد می توانید بر تست فنی اش روی مرکز تست ما هم حساب کنید 
> 
> ما برای شما تست فنی رایگان می گیریم  ، خوبه ؟
> 
>  برای اطلاعات به سایت زیر مراجعه کنید
> 
> www.u0vd.org


از لطفت ممنون رفيق حتما اين كار رو خواهيم كرد 

دوستان عزيزي كه فرصت انجام اين كار رو ندارن ولي از نظر فني اطلاعاتي دارن كه فكر مي كنن به درد ما ميخوره خوشحال ميشيم كه نظراتشون رو اعلام كنن .

از همه دوستان برنامه نويس حرفه اي  خواهش مي كنم سوالاتي رو كه براي بچه هاي گروه ايجاد ميشه بدون پاسخ نزارن اميدوارم همه افراد بازديد كننده  حد اقل يه سهم كوچيك هم كه شده توي اين پروژه گروهي داشته باشن حتي با جواب دادن به يه سوال 

ضمنا تا الان 4 نفر شديم  و همونطور كه دوست عزيزم Hossenbor  گفت كار استارت خورده زبون پايه براي اين كار ++C انتخاب شده و به اميد خدا بزودي شاهد خبراي خوبي هستيم 
اگه باز هم كسي مايله براي همكاري دست گرمش رو صميمانه مي فشاريم

----------


## mohssen67

سلام اقا من تز ارشدم روی همین موضوعه.خوشحال میشم بتونم کمکی بکنم

----------


## Gharibi.co

> سلام اقا من تز ارشدم روی همین موضوعه.خوشحال میشم بتونم کمکی بکنم


دوست عزيز عاليه اگه ممكنه كمي از تجاربتون و زمينه برنامه نويس تون بگين

----------


## Mask

امروز یکم حال داشتم .
یه چند خطی براتون مینویسم.
آنتی ویروسی که من نوشتم : شامل قسمتهای متعددی بود . کم کم براتون میگم.
در مرحله اول و میشه بگی بزرگترین مشکلی که من باهاش مواجه بودم . مسیر فعلی کاربر بود.
یعنی باید میفهمیدم که کاربر الان کجای ویندوز اکسپلورر هست.
اول بار با هوک این کار رو کردم. اما مشکل بزرگی که بود . برای ویندوزهای 32 و 64 بیتی هر کدوم باید یه روش پیاده میشد. که دردسر زیادی داشت.
دیدم خیلی اذیت میکنه . چون هوک من یوزر مد بود و ثبات نداشت.
در مرحله بعدی هوک رو گزاشتم کنار و اومدم سراغ استفاده از Api ها برای بدست آوردن مسیر.
اونم تا حدودی جواب داد . اما بازم ثبات نداشت. تا یکی از دوستان یه فیلتردرایور نوشته بود ، که از ایشون خریداری شد و مورد استفاده قرار گرفت.
در مرحله بعدی : مسیری رو که کاربر ، در اون بود رو داشتیم ، یه FindeFile میکردیم و Md5 فایلها رو بدست می آورم  و با بانک اطلاعاتی که داشتم ، کوئری میگرفتم . اگه تو بانک بود ، یه صفحه طراحی شده بود که بالا میومد و اعلام میکرد یه ویروس پیدا کرده (یادش بخیر).
اما باز اینجا کلی مشکل به وجود میومد :
1- فایلهایی که حجمشون بالا بود ، کلی زمان میبرد که md5 بگیریم ازشون.
2- نیاز نبود همه نوع فایل رو md5 بگیریم . اما چون من ناشی بودم ، همه رو میگرفتم.
3- اگه کاربر میرفت تو یه شاخه ای مثل system32 و با حجم عظیمی از فایلها مواجه میشد ، تا برنامه میومد md5 بگیره و بعد کوئری ، کاربر 4 تا مسیر دیگه هم رفته بود  :لبخند گشاده!: 
و ...
که کم کم روش کار کردم و مشکلات رو مرتفع کردیم.
اگه وقت شد. کم کم راهی رو که رفتم براتون میگم.
موفق باشید.

----------


## Hossenbor

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

----------


## Hossenbor

در ضمن دوست عزیز میشه دیتابیستونو از کجا گرفتین ممنون من امروز یک مصاحبه از رییس شرکت کوییک هیل خوندم خیلی راهنماییم کردم ولی متاسفانه ادرسش یادم نیست تو سایت اشیانه بود و ایشون گفته بود که علاوه بر تسلط کامل بر ویندوز باید تو مهندسی معکوس هم مهارت بالایی داشته باشن که خدا رو شکر دارم کم کم یاد میگیرم و اینکه بدترین دشمنان انتی ویروسها ویروسهایه چند ریختی و چندتا نوع ویروس بود معرفی کرد

----------


## Hossenbor

سلام دوستان یک مشکله دیگه کسی راه حلی نداره وقتی امضایه یک فایل رو میگیریم اگر اون فایل یک بایتش تغییر کنه برنامه هم امضایه متفاوتی تولید میکنه ممنون میشم راهنماییم کنید

----------


## Hossenbor

و یک سوال دیگه چه فایلهایی رو باید اسکن کنم منظورم اینه که متن نباشه یا عکس نباشه البته تو قالب واقعیشون نه فایل اجرایی تغییر پسوند داده شده و یک سوال دیگه از فایلهایه اسکریپتی مثل bat یا vps هم باید اثر انگشت بگیرم؟  باتشکر

----------


## Gharibi.co

> در ضمن دوست عزیز میشه دیتابیستونو از کجا گرفتین ممنون من امروز یک مصاحبه از رییس شرکت کوییک هیل خوندم خیلی راهنماییم کردم ولی متاسفانه ادرسش یادم نیست تو سایت اشیانه بود و ایشون گفته بود که علاوه بر تسلط کامل بر ویندوز باید تو مهندسی معکوس هم مهارت بالایی داشته باشن که خدا رو شکر دارم کم کم یاد میگیرم و اینکه بدترین دشمنان انتی ویروسها ویروسهایه چند ریختی و چندتا نوع ویروس بود معرفی کرد


دوست خوبم به دست آوردن اين ديتابيس اصلا سخت نيست خيلي راحت ميشه به روزترين ديتابيسها رو  از شركتهاي مهم و معتبر سراسر دنيا بدست آورد. سختي كار اونجاست كه بايد هر يه دونه فايل رو با كل محتويات اين ديتابيس مقايسه كنه و اين كار سرعت رو فوق العاده كم ميكنه . اين مشكل رو توي خيلي از آنتي ملوير هاي كوچيك ميشه ديد پس بايد يه فكري براي اين كار كرد كه نحوي ديگه برنامه سالم يا خراب بودن يك فايل رو تشخيص بده .




> سلام دوستان یک مشکله دیگه کسی راه حلی نداره وقتی امضایه یک فایل رو میگیریم اگر اون فایل یک بایتش تغییر کنه برنامه هم امضایه متفاوتی تولید میکنه ممنون میشم راهنماییم کنید


من فكر مي كنم درستي كار دقيقا همين جاست اگه آنتي بتونه تشخيص بده كه يك بايت عوض شده وظيفه خودش رو انجام داده يعني اينكه اين آنتي بياد كل فايلها رو به 2 دسته تقسيم كنه دسته اول اونايي كه امضاشون عوض نشده كه طبيعتا اينها به عنوان فايلهاي پاك ميشناسه و كاري به كارشون نداره دسته دوم اونايي هستن كه حداقل يك بايت عوض شده دارن (حتي 1 بيت ) اون فايل ها رو حتما بايد چك كنه چون نه آنتي و نه حتي كاربر اطلاع داره كه اين تغيير كار ويروس بوده يا خود اون برنامه يا os پس براي اطمينان بايد اون رو تو ليست چك كردناي خودش بزاره و اگه تميز بود دوباره امضاي جديد ازش بگيره .





> و یک سوال دیگه چه فایلهایی رو باید اسکن کنم منظورم اینه که متن نباشه یا عکس نباشه البته تو قالب واقعیشون نه فایل اجرایی تغییر پسوند داده شده و یک سوال دیگه از فایلهایه اسکریپتی مثل bat یا vps هم باید اثر انگشت بگیرم؟ باتشکر


اين اشتباهه كه بين فايلها فرق بزاريم به اين دليل كه ممكنه كدهاي مخرب توي كدهاي هر فايلي خودشون رو جاسازي كنن و از نظر تئوري حتي به عكسها هم نميشه اعتماد كرد (البته تا حالا ويروسي ديده نشده كه به عكس يا mp3 بچسبه ولي با اين حال آنتي هاي قوي دنيا حتي اينها رو هم اسكن مي كنن ) دليلش هم اينه كه وقتي او اس مياد با كمك نرم افزار پلير اون فايل كدهاي درون اون فايل رو ميخونه كه اجرا كنه كدهاي مخرب هم مي تونن قد علم كنن
بنابر اين همه چيز رو بايد اسكن كنه

----------


## Hossenbor

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

----------


## Hossenbor

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

----------


## Gharibi.co

> سلام دوستان قسمت دیتابیسش تمام شد بی زحمت یک دیتابیس اگه کسی لطف کنه ممنون میشم فقط روش تهیه امضا شم لطف کنین اخه من از کل فایل امضا نگرفتم و تنها از اول فایل امضا گرفتم با تشکر دوستان این پروژه اصلی نبود برای همین سورسشو نذاشتم چونکه گروهمون کامل نیست و وقتی کامل شد پروژه اصلی رو شروع میکنیم ولی اگه کسی لازم داشته باشه براش میذارم


خبر خوبي بود دوست عزيز خوشحالم كه قسمتي از كار داره پيش ميره 
امضا  نگرفتن از كل فايل اشتباهه به اين دليل كه ويروس مي تونه بدون تغيير حجم فايل كدهاي خوش رو يه گوشه كناري توي اون فايل جاسازي كنه و به جاي  يه سري از كداي اون فايل بشينه پيشنهاد من اينه روش امضا گرفتن به اين شكل باشه كه مثلا از هر فايل چندين بخشش رو به طور تصادفي ولي با يه نظم روشن براي خود انتي بگيره و با يه فرمول خاص اونو خلاصه سازي كنه 
ضمنا يه سري ديتابيس وجود داره كه برات ايميل مي كنم

----------


## Hossenbor

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

----------


## Sorn01

سلام میدونم که این بحث ها مال خیلی وقت پیشه و میدونم کسانی که این پست ها رو دادن شاید نباشن ولی

من یه آنتی ویروس با زبان های #C++‎ , Css , Html , C طراحی کردم که اصل کارش با C++‎ هست و 50 درصدش کامل شده
حالا نیاز به کمک دارم نمیدونم کسی کمکم میکنه یا نه ولی بدونید خیلی کمک نیاز دارم
دوستانی که میخان در تکمیل این پروژه به من کمک کنن با ایمیل من تماس بگیرن 
با تشکر :    ایمیل من  : sorn01@yahoo.com

----------


## E power

من گرافیست هستم
برای طراحی گرافیکی رابط کاربری می تونم کمک کنم
اینم آیدی یاهو : silverlight.mind

----------


## faranak.p

با سلام 
پروزه ی این ترم من ساخت آنتی ویروس توی محیط c برای ویندوز xp  هست
من حتی نمیدونم از کجا باید شروع کنم و چه چیزایی باید یاد بگیرم 
میشه کمکم کنید؟
آخه من ترم 2 هستم و تنها محیطی که تاحالا توش کد نوشتم پایتون بوده و از ویندوز و چیزایی که تو این تاپیک نوشتین سر در نمیارم 
اگع ممکنه یکی بگه که از کجا باید شروع کنم؟؟ :متفکر:  :ناراحت:

----------


## Abbas Naghdi

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

----------


## imanpajand

میشه عکسی از محیطش بزاری عزیز؟

----------


## imanpajand

> سلام
> دوست عزیز من یک آنتی ویروس تقریبا حرفه ای طراحی کردم
> شاید بتونم کمکتون کنم
> 
> قابلیت جستجو و حذف و تشخیص ویروس و کلیدهای خراب رجیستری و حفاظت از فلش مموری ها و ..
> maalimom@yahoo.com


میشه عکسی از محیطش بزاری؟

----------


## peyman_Esi

سلام ببخشید این برنامه را با چه زبانی نوشتید

----------

