آموزش ویژوال بیسیک و برنامه نویسی

سورس,ویژوال بیسیک,نرم افزار,باشگاه,بدنسازی,فوتبال,آنالیز,پیش بینی,کد,برنامه نویسی

آموزش ویژوال بیسیک و برنامه نویسی

سورس,ویژوال بیسیک,نرم افزار,باشگاه,بدنسازی,فوتبال,آنالیز,پیش بینی,کد,برنامه نویسی

پیدا کردن لیست یک سری وبلاگ

لیست وبلاگ های سایت هایی مثل بلاگفا و پرشین بلاگ رو می تونید با استفاده از کنترل Web Browser و با کد زیر بدست بیارید:

کد:
Private Sub Command1_Click()

    Dim i As Integer
    Dim str As String
    
    List1.Clear

    For i = 0 To WebBrowser1.Document.links.length - 1
        str = WebBrowser1.Document.links.Item(i)
        If Left$(LCase(str), 4) = "http" And InStr(1, LCase(str), ".persianblog.ir") > 0 Then
            List1.AddItem (WebBrowser1.Document.links.Item(i))
        End If
    Next i

    MsgBox "Process Completed"
    
End Sub

آدرس لیست وبلاگ های سایت پرشین بلاگ:

کد:
http://persianblog.ir/weblogs.aspx

در صورتی که صفحه موردنظر از تکنولوژی پویا استفاده کنه روش بالا جواب نمیده

اسم های تکراری در لیست باکس

یه فرم ، یه لیست باکس و یک دکمه درست کن.اینم کدش:
کد:
Private Sub Command1_Click()

Dim i As Long
Dim j As Long
    With List1
        For i = 0 To .ListCount - 1
            For j = .ListCount To (i + 1) Step -1
                If .List(j) = .List(i) Then
                    .RemoveItem j
                End If
            Next
        Next
    End With

End Sub


Private Sub Form_Load()
For i = 1 To 10
List1.AddItem "item " & i
List1.AddItem "item " & i + 1
Next

End Sub

قرار دادن بلاک مطالب تصادفی در سایت قالب دلتا لایف

قرار دادن بلاک مطالب تصادفی در سایت



این ماژول قرار دادن مطالب تصادفی در سایت است که براتون میذارم

ابتدا فایل ضمیمه را دانلود کنید و آن را در مسیر مورد نظر آپلود نمایید یعنی فایل rand_news.php را در مسیر engine/modules/ آپلود نمایید

سپس فایل index.php در روت اصلی را باز کنید . و دنیال کد زیر در آن بگردید
کد:
require_once ROOT_DIR.'/engine/init.php';
بعد از این کد این کد را در زیرش قرار دهید
کد:
require_once ROOT_DIR.'/engine/modules/rand_news.php';
سپس دنبال این کد بگردید
کد:
$tpl->set('{info}', "<span id='dle-info'>".$tpl->result['info']."</span>");
این کد را در زیرش قرار دهید
کد:
$tpl-> set ('{rand_news}', $rand_news);
سپس به مدیریت قالب بروید و از انجا در قالب سایتتون در قسمت main.tpl یک قالب جدید اضافه کنید به نام {rand_news}

کار تمام شد
منبع : ParsaDL
فایل های پیوست شده
نوع فایل: zipRandom News[wWw.ParsaDL.Com].zip (1.3 کیلو بایت, 0 نمایش)

ماژول ثبت نام سریع برای دیتالایف



این ماژول ثبت نام سریع برای دیتالایف است.

کد زیر را در قالب اصلی سایت در main.tpl در زیر هر بلاک یا قسمتی که دوست داشتید ثبت نام سریع قرار بگیره قرار دهید

کد:
[group=5]
<form  method="post" name="registration" id="registration" action="?do=register">
          
                             Username:
                             <br>
                             <input type="text" name="name" id='name' style="width:108; height:21" class="f_input" />
                             <BR>
                              <input style="height:18px; font-family:tahoma; font-size:11px; border:1px solid #DFDFDF; background: #FFFFFF" title="Checking 

Availablity" onclick="CheckLogin(); return false;" type="button" value="Check Name" /><div id='result-registration'></div>
                             <BR> 
                             Password:
                             <BR>
                             <input type="password" name="password1" class="f_input" />
                             <BR>
                            Confirm Password:  
                             <BR>                          
                             <input type="password" name="password2" class="f_input" />
                             <BR>
                             <BR>
                             E-Mail:<BR>
                            <input type="text" name="email" class="f_input" />
                             <BR>
                             Safety Code:
                             <BR>
                            <img src="/engine/modules/antibot.php" alt="Please Write This Code in The Box Below" border="0">
                            <BR>
                            Enter Here:
                            <BR>
                            <input type="text" name="sec_code" style="width:115px" class="f_input" />
                            <BR>
                          <input type="image" style="width:80px; height:20px" src="/templates/Default/images/dlet_bttn_submit.gif" name="submit" alt="Submit" />
                          <input name="submit_reg" type="hidden" id="submit_reg" value="submit_reg">
</form>
[/group]
به همین راحتی .

نمایش عکس تصادفی در سایت برای قالب دلتا لایف




با نصب این ماژ.ل میتوانید کنار سایتتون عکس تصادفی از مطالب سایت قرار دهید.

ابتدا فایل ضمیمه را دانلود کنید و فایل dle_img.php را در مسیر گفته شده یعنی در پوشه Engine/Modules/ آپلود نمایید

سپس فایل index.php در روت اصلی را باز کنید و دنبال عبارت زیر بگردید
کد:
$tpl->set('{topnews}',$topnews);
به زیر آن این کد را اضافه کنید
کد:
$tpl->set('{dle_img}',$dle_img);
در مسیر engine/init.php فایل init.php را باز کنید و دنبال کد زیر در آن بگردید:
کد:
require_once ENGINE_DIR.'/modules/calendar.php';
این د را زیر کد بالایی اضافه کنید
کد:
require_once ENGINE_DIR.'/modules/dle_img.php';
حال برای نشان دادن کافی است به قالب main.tpl قالب {dle_img} را اضاف کنید ( از قسمت مدیریت سایت ویرایش قالب )

کار تمام شد
موفق باشید
فایل های پیوست شده
نوع فایل: zipRandom Image(wWw.ParsaDL.Com).zip (1.4 کیلو بایت, 1 نمایش)

گذاشتن منوی موضوعات درختی برای قالب سایت دلتا لایف




ابتدا فایل ضمیمه را دانلود کنید
فایل های مورد نظر را در پوشه های گفته شده آپلود نمایید.

فایل index.php که در روت اصلی است را باز کنید و دنیال کد زیر بگردید
کد:
require_once ROOT_DIR.'/engine/init.php';
بعد از این کد زیر را زیر کد بالایی اضافه کنید
کد:
require_once ROOT_DIR.'/engine/modules/treemenu.php';
دنبال کد زیر در همان فایل بگردید
کد:
$tpl->set('{login}',$login_panel);
این کد را زیر آن اضافه کنید
کد:
$tpl->set('{treemenu}', $treemenu);
$tpl->set('{title}', $title_tag);
فایل index.php را ذخیره کنید و از آن خارج شوید

سپس به مدیریت قالب بروید و از انجا در قالب سایتتون در قسمت main.tpl یک قالب جدید اضافه کنید به نام {treemenu}

کار تمام شد
فایل های پیوست شده
نوع فایل: zipTreeMenu(wWw.ParsaDL.Com).zip (15.0 کیلو بایت, 4 نمایش)

ماژول بلوک آب و هوا برای قالب سایت دلتا لایف




توضیح: این یک ماژول ساده برای ایجاد یک بلوک آب و هوا توسط gismeteo می باشد.

شروع نصب:

اول از همه فایل دانلودی را دانلود کنید و همانطور که گفته شده آپلود کنید.

سپس main.tpl را باز کنید و کد زیر را در یک جای خوب قرار دهید:
کد:
{pogoda_almaty}

engine\engine.php را باز کنید:

بدنبال متن زیر بگردید:
کد:
if($titl_e) $metatags['title'] = $titl_e.' &raquo; '.$config['home_title'];
در زیر آن متن زیر را قرار دهید:
کد:
include_once ENGINE_DIR."/modules/pogoda_almaty.php";
index.php را باز کنید و دنبال متن زیر بگردید:
کد:
$tpl->set('{info}',$tpl->result['info']);
در زیر آن متن زیر را قرار دهید:
کد:
$tpl->set('{pogoda_almaty}',  $pogoda_almaty);
نکته: برای نمایش شهر های دیگه در فایل می بایست در pogoda_almaty.php بدنبال متن زیر بگردید و سپس آدرس وارد شده را با آدرس مورد نظر خود عوض کنید:
کد:
$text = file_get_contents("http://informer.gismeteo.ru/xml/36870_1.xml");
فایل های پیوست شده
نوع فایل: zipmodules_2_pogoda.zip (291.6 کیلو بایت, 1 نمایش)
__________________



ماژول لوگوی دوستان برای سایت دلتا لایف



1- فایل زیر رو دانلود کنید و فایل های درون آن را به جاهای مشخص شده کپی کنید:
دانلود کنید

2- به آدرس زیر بروید تا Sql ها در دیتابیس وارد شوند:


بعد از نصب ماژول فایل linklogo_install.php را از روی هاست پاک کنید.

3- فایل index.php رو باز کنید و به دنبال کد زیر بگردید:
کد:
require_once ROOT_DIR.'/engine/init.php';
بعد از کد بالا , کد زیر رو قرار دهید:
کد:
require_once ROOT_DIR.'/engine/modules/linklogo.php';
4- در همان index.php به دنبال کد زیر بگردید:
کد:
$tpl->load_template('main.tpl');
5- فایل Admin.php رو باز کنید و کد زیر را پیدا کنید:
کد:
'editnews'     => 'user',
بعد از کدی که پیدا کردید , کد زیر رو قرار بدید:
کد:
'linklogo'       => 'admin',
6- فایل Engine/Inc/Options.php رو باز کنید و کد زیر را پیدا کنید:
کد:
$options['others'] = array(
بعد از آن , کد زیر را قرار دهید:
کد:
array(
'name'       => "لوگوی دوستان",
'url'        => "$PHP_SELF?mod=linklogo",
'descr'      => "اضافه , حذف و ویرایش کردن لوگوی دوستان",
'image'         => "linklogo.png",
'access'     => "1",
),
حالا با قرار دادن تگ {linklogo} در بلوک مورد نظر خود در main.tpl میتونید این ماژول رو به نمایش در بیارید.

با تشکر از گروه دیتالایف انجین فارسی
فایل های پیوست شده
نوع فایل: zipFriends-Logo.zip (16.9 کیلو بایت, 0 نمایش)

آموزش کرک نرم افزار قسمت سوم

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

(توجه به دلیل اینکه تمام فایلها در persiangig آپلود شدن بعضی مواقع ممکنه قادر به دانلود نباشد در این مواقع چند ساعت بعد دوباره مراجعه نمایید. با تشکر)

خوب طبق معمول برنامه های مورد استفاده :

Ollydbg :  لینک دانلودCmdBar plugin :  لینک دانلودdiE (اختیاری)  :  لینک دانلودCarckTools  :  لینک دانلودلیستی از API های پر کاربرد در کرک  : لینک دانلود
Microsoft Win32 Programmer's Reference (اختیاری) : لینک دانلود

هدف :

Crackme 3  :  لینک دانلود

 

خوب میریم سر کار اصلیمون: اول برنامه رو با PEiD یا DiE چک کنید که پک نشده باشه.

حالا برنامه رو اجرا کنید یک کد الکی بدید مثلا من 12121212 دادم بعد Check  رو بزنید

خوب چه اتفاقی افتاد!! بله اینبار مثل سری قبل نیست و پیامی ظاهر نشد!! خوب پس چه باید کرد؟

اینجاست که باید با مفهوم API آشنا بشیم.

API چیست: API مخفف Application programming Interface می باشد که شامل یکسری توابع از پیش ساخته شده برای ویندوز است و در فایلهای کتابخانه ای (DLL) قرار گرفته اند. که برنامه نویسان بنا به نیازشان از این API ها در برنامه هاشون استفاده میکنند.

چند نمونه از API ها

Edit boxes :
GetWindowTextA
GetWindowTextW
GetDlgItemTextA
GetDlgItemTextW
GetDlgItemInt

Message boxes :
MessageBoxA
MessageBoxW

Registry:
RegCreateKeyA
RegOpenKeyA
RegQueryValue
RegQueryValueEx

سری اول که Edit boxes هست برای گرفتن یه مقدار از کاربر که در برنامه ما هم یکی از همینا بکار رفته برای گرفتن سریال

سری دوم Message boxes برای نمایش یه پیام مثل پیامهایی که قبلا دیدیم

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

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

نکته: اگر توجه کنید بعضی از API ها با A پایان یافته که برای مقادیر ASCII هست و بعضی W که برای مقادیر Unicode و دربعضی مواقع باید هر دو برسی بشه تا ببینیم کدوم بکار رفته

قبل اینکه کار رو شروع کنیم مطمعن بشین که پلاگین CmdBar  در ollydbg نصب است. برای فهمیدن این موضوع ollydbg را باز کنید و مطمعن بشین نواری مانند نوار در شکل موجود باشد

نکته : اگر این نوار نبود پلاگین cmdbar که در بالا معرفی شده دانلود و هر چ یتوش بود را در پوشه ollydbg\plugin قرار دهید بعد olly  را دوباره اجرا کنید

خوب حالا کمی با API ها آشنا هستیم برنامه رو داخل Ollydbg  باز میکنیم و بعد با کلید F9 اجراش میکنیم(اگر نمی دونید چطور با Ollydbg کار کنید به مقاله های قبلی رجوع کنید). ما می دونیم که برای گرفتن سریال برنامه احتمالا از GetWindowTextA یا GetDlgItemTextA استفاده کرده (در بیشتر موارد اینجور هست)

من در نوار پایین این دستور رو تایپ میکنیم  و بعد اینتر می زنیم(به بزرگی و کوچیکی حروف توجه کنید)

bp GetWindowTextA

و بعد از آن این دستور

bp GetDlgItemTextA

bp مخفف Breakpoint هست که در قسمتهای قبل توضیح دادیم یعنی چی با این دستور یه نقطه توقف در ابتدای کدهای API ذکر شده قرار می دیم و به محض اینکه برنامه بخواد ازشون استفاده کنه برنامه توسط ollybg متوقف شده اختیار برنامه رو دست ما میده و به این شکل می فهمیم کجا برنامه API رو صدا می زنه خوب حالا پنجره برنامه رو بیارید یه کد بدید دکمه Check رو بزنید خوب برنامه اینجا متوقف شد(نقطه شروع API در کتابخانه user32.dll که در شکل علامت زدم) اگر به گوشه پایین سمت راست توجه کنید مانند شکل میبینیم که GetWindowTextA فراخانی شده نکته : لازم به ذکره به این ناحیه که در کادر مشخص هست Stack گفته می شود خوب ما احتیاجی به این قسمت کد نداریم پس با کلید F8 تا دستور RETN میریم و بعد روی دستور RETN نیز F8 رو می زنیم نکته : یه راه ساده تر برای رسیدن به RETN زدن کلیدهای ترکیبی Ctrl+F9 هست حالا اینجا هستیم اینم بدرد نمی خوره می تونیم با زدم Ctrl+F9 تا به RETN بریم و بعد F8 بزنیم حالا اینجا هستیم اینجا هم بدرد نمی خوره باز باید Ctrl+F9 بزنیم تا به RETN بریم و بعد F8 بزنیم(به جز این 2 بار دیگه این کارو بکنین تا به این کد پایین برسیم) خوب اینجا اونجایی که باید باشیم به اون نوشته ها که علامت زدم دقت کنید "You win" "Good man, You now cracking me" این باید نوشته های یه پیام باشه وقتی ما سریال درست میدیم ظاهر بشه و دستور JNZ که قبلشه اگر سریال اشتباه باشه مارو بعد از پیام می فرسته (به پیکان سفید رنگ در عکس پایین توجه کنید قسمتی که مارو پرتاب میکنه POP ESI هست ) خوب ما می تونیم خیلی راحت دستور JNZ رو طبق مقالات قبلی عوض کنیم. ولی من دراین مقاله تصمیم گرفتم دستوراتی که کد را میسازه با هم برسی کنیم تا یه مقاداری با زبان و دستورات اسمبلی آشنا تر بشیم. پس از اینجا به بعد میل خودتونه چون کار ما تقریبا تمومه برسی کدهای اسمبلی (برای فهم بهتر این قسمت باید کمی با یک زبان برنامه نویسی آشنا باشید) : اگر دقت کرده باشید بعد از خارج شدن از آخرین RETN ما به این دستور رسیدیم خوب پس در این قسمت سریال اصلی ساخته میشه و در این قسمت با کدی که ما دادیم مقایسه می شه CMP EAX, [LOCAL.1] JNZ SHORT Crackme_.0040135F خوب از همون اول شروع میکنیم. دستور MOV مثل = میمونه یعنی وقتی میگیم MOV [LOCAL.1], 0 برابر این هست [LOCAL.1] = 0 [LOCAL.1] هم مثل یه متغییر عمل میکنه و اینجا مقدار 0 رو نگه میداره دستور XOR یک دستور بولی هست زیاد به جزئیات این دستور کار نداریم فقط بدونید هر جا در این دستور دو آرگومان برابر باشد مثل XOR EAX, EAX آرگومان خود را که الان EAX است رو برابر 0 قرار می دهد پس دستورات زیر مقادیر EAX ، EDX و ECX رو برابر صفر قرار می دهد XOR EAX, EAX XOR ECX, ECX XOR EDX, EDX نکته : EAX ، EBX ، ECX ، EDX ثبات نام دارند و مانند یک متغییر مقادیری را در خود نگه میدارند که انداره هر کدام 32 بیت می باشد و محاسبات روی این ثباتها انجام می شود نکته : برای دیدن تغییرات این متغییر ها در Ollydbg در این قسمت olly نشان داده می شود(بالا گوشه سمت راست پنجره CPU – main ) حالا دو تا دستور MOV به این صورت داریم MOV EAX, 0E MOV EDX, 0F که معادل این کدا هست (به تغییرات متغییر ها در Olly هم دقت کنید) EAX = 0E EDX = 0F نکته : در اینجا مقدار 0E و 0F را می بینیم این مقادیر در مبنای 16 می باشد در واقع تمام اعداد نشان داده شده در olly در مبنای شانزده یا Hexadecimal می باشد. برای تبدیل این اعداد می توانید از برنامه CrackTools که در بالا گزاشتم یا ماشین حساب ویندوز استفاده کنید. پس در نتیجه دستورات بالا با در نظر گرفتن اعداد در مبنای 10 به این صورت می شوند EAX = 14 EDX = 15 خوب میرسیم این قسمت IMUL EAX, EDX ADD EAX, 57 INC ECX CMP ECX, 5 JNZ SHORT Crackme_.00401335 که نشون دهنده یک حلقه هست. دستور IMUL مخفف Integer Multiply هست و برای ضرب دو عدد استفاد می شود به این صورت که آرگومان اول را در دومی ضرب و در اولی ذخیره می کند و عبارت زیر IMUL EAX, EDX را می توان به این گونه نوشت EAX = EAX * EDX دستور ADD برای جمع دو عدد هست و این عبارت را ADD EAX, 57 به این صورت می شود(در این حالت نیز 57 در مبنای شانزده است و به به مبنای ده تبدیل میکنیم) EAX = EAX + 87 دستور بعدی INC هسد مخفف کلمه Increase یعنی افزایش و یه واحد به آرگومان خود اضافه می کند و دستور INC ECX را میتوان به این صورت نوشت ECX = ECX + 1 می رسیم به دستور شرطی که حلقه را کنترل میکند CMP ECX, 5 JNZ SHORT Crackme_.00401335 دستور CMP دو مقدار را با هم برسی میکند و اگر برابر بود پرچم Z را به مقدار یک تغییر میدهد نکته : یه ثبات 32 بیتی به نام Eflag وجود دارد که 16 بایت اول آن را ثبات پرچمها گویند و وضیت برخی از فعالیت ها مثل محاسبات یا مقایسه ها رو کتنرل میکند نکته : برای برسی تغییرات پرچمها در Olly این قسمت را ببینید در صورتی که ECX برابر 5 شود پرچم Z برابر یک می شود و دستور JNZ هم که در مقالات قبل توضیح دادیم برسی میکند اگر پرچم Z مخالف یک بود به آدرسی که براش تعریف شده پرش می کنید یعنی ابتدای حلقه و در صورت یک شدن پرچم Z دستور JNZ خیچ پرشی انجام نمی دهد و دستور بعد از آن اجرا میشود خوب ما می بینیم که تمام محاسبات در EAX ذخیره می شن و در دستور بعدی یعنی MOV [LOCAL.1], EAX می بینیم که مقدار EAX در [LOCAL.1] قرار می گیرد. نتیجه می گیریم موقعی که به این دستور رسیده باشیم سریال اصلی نیز در EAX ذخیریه شده که برابر 00EA39C9 هست و اگر به مبنای ده تبدیل کنیم برابر 15350217 می شود. دستور بعدی یعنی MOV EAX, DWORD PTR DS:[ESI+78] سریالی که ما وارد کردیم را در EAX ذخیره میکند. بعد اجرا این دستور ثبات EAX را در olly برسی کنید البته توجه داشته باشید که در مبنای 16 است پس باید تبدیل بشود و در آخر سریال اصلی که در [LOCAL.1] قرار دارد با سریالی که ما دادیم و در EAX هست با دستور CMP مقایسه و در صورت برابری پرچم Z برابر یک می شود و بعد دستور JNZ برسی میکند اگر پرچم Z برابر صفر بود پرش انجام می دهد خوب کار ما تمومه ببخشید دیگه اینبار یکمی طولانی شد.. امیدوارد استفاده برده باشید.

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

آموزش کرک نرک افزار قسمت دوم !!

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


 سریع میریم سر اصل مطلب
 
خوب به چه ابزارهایی نیاز داریم:


Ollydbg 1.09 :  لینک دانلود
 
چه برنامه ای باید کرک بشه:
خوب برنامه همون برنامه قبلیه ولی اینبار یه تغییر کوچیک توش دادم و اینبار کد درستو بدست میاریم



 روش کرک:


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


 


 یک نام و کد الکی بدید. به این صورت :


 


 ارروری مبنی بر اشتباه بودن کد می بینید


 


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


 قسمت جدید کار اینجاست اگر ما فایل crackme2.exe که باید کرک بشه رو با Ollydbg باز کنیم و دنبال متن  ها و رشته هایی که در برنامه هست بگردیم می بینیم هیچ متنی از اررور وجود نداره.
پس چه اتفاقی افتاده؟ چون اینجا ما برنامه رو با UPX که بالا لینکشو گزاشتم پک (pack)  کردیم


ها... ای که گفتی یعنی چه


compressor ها، protection ها و  crypter ها ابزارهایی هستند که کدهای اصلی یه برنامه مثل همین crackme2.exe رو مخفی میکنند تا کار یک کرکر رو سخت کنند.البته در نوع اول در اصل برای کم کردن حجم فایل می باشد. مثل همین upx


 


compressor ها یا فشرده کننده ها کارشون فشرده کردن یه فایل احرایی exe یا دینامیک فایلها dll ها هست البته باید بگم خیلی خفن حفاظت نمی کنند ولی کدهای برنامه رو مخفی میکننند و برای یه تازه کار ممکنه کار رو مشکل کنه و خیلی راحت هم برنامه فشرده شده رو می شه از این حالت خارج کرد یا به عبارتی UnPack کرد.


  protection ها crypter ها یه نمه خفن تر از قبلی هستند و بجز فشرده کرده فایل اون رو رمزی و در مقابل دیباگر هایی همچون Ollydbg یا SoftIce حفاظت می کنند
 
یه نکته که باید بگم اینه که اکثر این ابزارها یعنی compressor ، protection ، crypter  ضدشون هم وجود داره و می شه گفت این چیزا کار یه  کرکر حرفه‌ای اصلا سخت نمی کنه خصوصا اونایی که مجانی هست. 


 چقدر توضیح شد اصلا یادم رفت موضوع سر چی بود.


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


برنامه PEid : که لینکش رو بالا دادم باز کنید روی اون دکمه که سه تا نقطه روش هست کلیک کنیو و مسیر فایل crackme2.exe رو بهش بدین. مانند شکل زیر


اونجایی که علامت زدم نوع پکر هست که اینجا UPX 0.89.6 - 1.02 / 1.05 - 1.24 -> Markus & Laszlo رو نوشته یعنی همون UPX که لینکشو بالا دادم


بسته به سلیقه خودتون یه نوعشو دانلود کنید(گرافیکی یا خط فرمان)


 نسخه گرافیکی که نیاز به توضیح نداره برنامه رو داخلش باز کنید Decompress رو بزنید
 


 نسخه خط فرمان هم که به این صورت
upx -d crackme2.exe


 


 حالا که برنامه UnPack شد برای اطمینان می تونید دوباره با PEid چک کنید این بار باید اینو بنویسه Microsoft Visual Basic 5.0 / 6.0 که این یعنی با visual basic درست شده. 


خوب الان باید با Ollydbg کار کنیم


Ollydbg یکی از دیباگر های بسیار قوی و معروف برای ویندوز هست باهاش تغریبا هر کاری می توانیم بکنیم.


دیباگر ها هم ابزارهایی هستند برای پیدا کردن باگها و ایرادهای یه برنامه که بعدش ممکنه منجر به ساخت یه اکپلویت بشه....بگزریم...فقط بگم بهترین دیباگر در دنیا برای ویندوز SoftIce هست که یه محیط خط فرمانی و سیاه داره که حتی باهاش میشه هسته ویندوز را کرک کرد. بعد softice هم Ollydbg در دنیا معروفه


توضیخ دیگه فکر کنم توضیح بس باشه.


حالا ollydbg رو باز کنید و از منوی File>open فایل crackme2.exe رو داخلش باز کنید. مانند شکل باید چنین دستوری اول قرار بگیرد



 بعد اجرای برنامه داخل olly روی پنجره ای اصلی که CPU هست راست کلیک کنید و از منوی ظاهر شده Search for و بعد گزینه All referenced text strings رو انتخاب کنید اینجا جایی هست که شما تمام متن ها و رشته های داخل برنامه‌ای که داخل olly باز کردید می بینید.


لازم به ذکره که اگر برنامه pack شده باشد این قسمت خالی و چرت و پرت خواهد بود و بعد UnPack کردن تمام متنها دیده می شه


حالا همین صفحه رو کمی پایین بیارید و دنبال متن اررو بگردید. یه راه آسونتر هم اینه که رو این صفحه راست کلیک کنید و گزینه Search for text رو انتخاب و قسمتی از متن اررو رو بهش بدین (به بزرگ و کوچیک بودن حروف حساس است)


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



 روی متن اررو که در عکس هم مشخص کردم دوبار کلیک کنید تا به پنجره اصلی Olly یعنی CPU برگردیم.
شکل رو نگاه کنید :


 


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


 دستور Call که در عکس مشخص کردم در واقع تابعی هست در ویژوال بیسیک که دو رشته رو با هم مقایسه میکنه و اگر یکسان باشه مثلا مقدار 0 رو برمی گردونه و در صورت نادرست بودن یه مقدار دیگه


 دستور JNZ هم همون JNE که در مقاله یک هم توضیح دادم. که چک می کنه که اگر مقداری که توسط اون تابع برگردانده شد 0 بود پیامی مبنی بردرست بودن کد بده و اگر یه عدد دیگه بود پیامی مبنی بر اشتباه بودن گد میده.


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


 اون دوتا متن هم واضح چی هستن متن پیامها


خوب قبل اینکه ادامه بدم چنتا کلید پرکاربرد در olly رو باید یاد بگیرد


 1- کلید F2 : شما با این دکمه در قسمتی از برنامه که خودمون تعیین می کنیم یه نشانه قرار میدیم که هر موقع برنامه  به اون قسمت که ما نشانه گزاشتیم رسید متوقف شود. این کار و Breakpoint می گن
2 - کلید F9 : باعث اجرای برنامه می شود
3- کلید F12: باعث متوقف شدن موقت برنامه میشه همون Pause
4- کلید F8: با زدن این دکمه می توانید برنامه رو خط به خط اجرا کنید به صورت سطحی و داخل توابع نمیشه
5- کلید F7: با زدن این دکمه هم می توانید برنامه رو خط به خط اجرا کنید با این تفاوت که داخل توابع هم میشه


خوب همینا فعلا کافیه.


حالا روی PUSH اولی با کلید F2 یه breakpoint در این ناحیه قرار میدیم چون می دونیم که کد اصلی از اینجا میگزره مانند شکل


 


 کلید F9 رو میزنیم تا برنامه اجرا بشه


یه نام و کد الکی می دیم و enter می زنیم


بوووووووووم.....


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


 
 
خوب حالا کد رو یجا یادداشت کنید چون کار ما اینجا تموم شد


 از Olly خارج بشین... فایل crackme2.exe  رو باز کنید نام قبلی که الکی دادین رو بدین و به جای کد هم کد جدید که بدست آمد


 
WOW.....


دیدین چقدر راحته


بازم میگم یه کرکر خوب باید برنامه نویسی بلد باشه و به اسمبلی مسلط

آموزش کرک نرم افزار قسمت اول !!

اصلا این کار به چه درد می خوره؟


شاید برای شما پیش بیاد که برنامه‌ای از اینترنت دانلود می کنید ولی هیچ کرک و سریال یا Path براش پیدا نمی کنید اینجاست که باید خودتون دست به کار بشین و برنامه رو کرک کنید(عالیه نه)


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


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


یه کرکر واقعی چه چیزایی باید بدونه؟


1- زبان اسمبلی : هر چی تسلط به این زبان در شما بیشتر باشه کار براتون لذت بخش ترو راحتتره
2- آشنایی به API های ویندوز
3- آشنایی با دیباگر ها و دی اسمبرها و ....
4- مهندسی معکوس
6- بجز اسمبلی تسلط کامل به یک زبان برنامه نویسی دیگه
و ...(فعلا همینا یادمه)
 
البته الان به همه اینا احتیاج نداریم فقط چند دستور اسمبلی یه دی اسمبلر و یک هگز ادیتور


به چه ابزارهایی نیاز داریم:
W32Dasm 8.9 : لینک دانلود
Hacker view : لینک دانلود


این دو برنامه رو دانلود کنید
چی رو باید کرک کنیم:


یه برنامه کوچولو با ویژوال بیسیک من ساختم که یه یوزر و پسورد میگیره اگر درست بود پیامی مبنی بر درست بودن میده اگر نه پیامی مبنی بر اشتباه بودن.


 
نحوه‌ی کرک:


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


یه یوزر و پسورد الکی میدیم به این صورت


چون یوزر و پسورد اشتباه هستن ارروری مبنی بر اشتباه بودن یوزر و پسورد می گیریم به این صورت



حالا ما باید متن پیام رو یک جا یاداشت کنیم یا به خاطر بسپاریم.
بعد وارد برنامه W32Dasm میشیم.
نکته : W32Dasm یک دی اسمبلر یا Disassembler هست و کارش تبدیل یک فایل اجرایی به زبان اسمبلی می باشد.
 
حالا از منوی File>Open ‌فایل مورد نظر یعنی crackme1.exe  را باز میکنیم.
نکته: اگر نوشته های نمایش داده شده چرت و پرت و قابل خواندن نبود به منوی File>Font>Select Font فونتی انتخواب کنید که دستورات اسمبلی درست نمایش داده بشن.


حالا از منوی Refs گزینه String Data References انتخاب کنید. الان لیستی از متنهایی که در برنامه وجود دارد رو مشاهده می کنید. دنبال ارروری که قبلا یادداشت یا به خاطر سپردید بگرد(کار سختی نیست) بعد روش دوبار کلی کنید و از این لیست خارج و به صفحه اصلی W32Dasm‌ برین


الان باید همچین چیزی رو ببینید


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


بزارین واضح تر بگم


در نظر بگیرید برنامه ای ساختید که از ما اسمی رو می خواد و اگر ما اسم ali رو بدیم یک پیام بده بگه good‌ و اگه اسمه دیگه یی دادیم بگه bad


حالا دستور شرطی برای این برناه فرضی یه همچین چیزی میشه


if name = ali
    good
else
    bad


خوب حالا اگه ما دستور شرطی رو بر عکس کنیم چی می شه ؟ بله وقتی ما اسم ali رو بدین به ما میگه bad و اگر هر اسم دیگه ای بدیم میگه good


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


خوب دستور JNE هست یعنی JUMP IF NOT EQUAL یعنی اگر کدی که دادیم درست نبود به آدرسی که روبه روی این دستور هست برو


نکته : دستور JNE یکی از دستورهای شرطی زبان اسمبلی هست که مخالف اون می شه JE


قبل تغییر دستور ما نیاز به شماره ای که در پایین برنامه W32Dasm وجود داره نیاز داریم به این صورت



همونطور که در عکس نشان دادم این Offset مربوط می شه به اون دستور یعنی JNE حالا می گم برای چی می خوایم


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


:00402B5F   7577                   JNE 00402BDB
 
زیر اون عدد خط کشیدم. این یعنی جایی که این دستور قرار داره
این عدد رو باید یجا یادداشت کنید.


خوب حالا برنامه Hacker  view باز کنید و به مسیر فایل crackme1.exe برین و بازش کنید.


با  دکمه های Alt+F2 می تونید درایو رو عوض کنید


بعد باز کردن فایل crackme1.exe در Hiew یا همون hacker view با زدن دکمه F4 منویی میاد که از داخلش Decode رو انتخاب می کنیم


حالا کلید F5 رو بزنید تا اون شماره که گفتم رو در اینجا جستجو کنیم. خوب F5 رو بزنید 2B5F را تایپ و اینتر بزنید تا جستجو کند. به شکل نگاه کنید باید همچین چیزی جلوتون ظاهر بشه



نکته : در اسمبلی دستورات بجز کد اسمبلی مثلا JNE یک کد بصورت هگز هم(که کد ماشین دستور است) دارن که برای همین دستور 75 هست.اگر به شکل نگاه کنید می بینید که به این صورته
.00402B5F: 7577                               jne
 
خوب همونطور که قبلا گفتم باید ما این شرط رو برعکس کنیم یعنی از JNE به JE تبدیل کنیم


کد هگز برای JE  عدد ۷۴ هست. پس 75 رو به 74 تغییر میدیم


ابتدا برای ویرایش کلید F3 رو میزنید حالا 74 رو تایپ میکنیم و برای ذخیره کردن کلید F9 را می زنیم. مانند شکل  



حالا با کلید Esc از Hiew خارج می شیم


خوب الان موقعشه که فایل crackme1.exe رو تست کنیم ببینیم چطور شد.


فایل رو باز کنید هر یوزر و پسوردی خواستین بدین 



تبریک می گم شما اولین برنامتون رو  کرک کردین (دیدین چقدر سادس)


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


چگونگی پاک کردن برنا‌هایی که در لیست Add/Remove Winddows Compone

چگونگی پاک کردن برنا‌هایی که در لیست Add/Remove Winddows Components قرار ندارد!!  

 

ما وقتی ویندوز رو نصب می کنیم یه سری برنامه هم همراه ویندوز بدون اجازه ما نصب میشه و بصورت معمولی هم امکانی برای پاک کردن آنها در اختیار کاربران ویندوز قرار نمیگیری برنامه هایی از این قبیل مثل MSN Messenger و  WordPad و ...
 
خوب امروز می خوام بهتون یاد بدم این طور برنامه ها رو چطور پاک کنید
خوب ابتدا وارد شاخه  C:\WINDOWS\inf بشین (C را درایو پیشفرض که ویندوز روش نصبه می گیریم)
بعد فایل  sysoc.inf را پیدا کنید. بعد با هر ویرایشگری که باهاش راحتین مثل notepad بازش کنید.
داخل فایل قسمتی هست که اینو نوشته
 
[Components]
 
حالا مثلا ما بخوایم  MSN Messenger  رو پاک کنیم اول دنبال این عبارت می گردیم :
 
msmsgs=msgrocm.dll,OcEntry,msmsgs.inf,hide,7
 
بعد کلمه hide رو از داخلش پاک می کنیم به این صورت بشه
 
msmsgs=msgrocm.dll,OcEntry,msmsgs.inf,7
 
حالا فایل رو ذخیره می کنیم و از Notepad‌ خارج می شیم.
حالا واردControl Panel\Add or Remove Programs بشین بعد قسمت  Add/Remove Winddows Components رو انتخاب کنید. بعد اینکه صفحه مر بوطه آمد لیست رو یین بیاورید و دو عبارت
 
Windows Messenger
Windows Messenger
دیده می شود حالا هر دو را پاک کنید(دو تا عبارت هم نام هستند)
برای دیگر برنامه هایی که در این لیست دیده نمی شود هم همینطوره فقط باید داخل فایل sysoc.inf  بشین و وقتی خطی که مزبوط به برنامه مورد نظرتون هست کلمه hide رو ازش پاک کنید.

پیدا کردن تاریخ و زمان خاموش شدن کامپیوتر

تاکنون پیش آمده است که بخواهید به تاریخ و زمان دقیق آخرین باری که کامپیوتر Shutdown شده است پی ببرید؟ در این ترفند قصد داریم نحوه پی بردن به این موضوع را از طریق 3 راه مختلف در ویندوزهای XP و ویستا بررسی نماییم.

 راه اول
اگر از ویندوز XP استفاده می‏کنید:
از منوی Start به Run بروید.
عبارت Eventvwr.msc را وارد کرده و Enter بزنید.
در پنجره Event Viewer، از منوی کناری بر روی System کلیک کنید.
در قسمت دیگر پنجره، لیستی را مشاهده می‏کنید.
در بالای لیست، تیتر یکی از ستون‏ها Event است. بر روی Event کلیک کنید تا جدول بر اساس این لیست مرتب گردد.
اکنون در این ستون عدد 6006 را بیابید.
خواهید دید که تعدادی 6006 وجود دارد. این‏ها هر کدام تاریخ‏ها و زمان‏های خاموش شدن کامپیوتر شما هستند.
بالاترین 6006، آخرین زمان خاموش شدن کامپیوتر است. با مشاهده این سطر می‏توانید در ستون‏های Date و Time به ترتیب تاریخ و ساعت خاموش شدن رایانه را مشاهده کنید.

اما اگر از ویندوز ویستا استفاده می‏کنید:
بر روی منوی Start کلیک کنید.
عبارت Eventvwr.msc را وارد کرده و Enter بزنید.
در پنجره Event Viewer، از منوی کناری بر روی Windows Logs و سپس کلیک کنید.
در قسمت دیگر پنجره، لیستی را مشاهده می‏کنید.
در بالای لیست، تیتر یکی از ستون‏ها Event است. بر روی Event کلیک کنید تا جدول بر اساس این لیست مرتب گردد.
اکنون در این ستون عدد 1074 را بیابید.
خواهید دید که تعدادی 1074 وجود دارد. این‏ها هر کدام تاریخ‏ها و زمان‏های خاموش شدن کامپیوتر شما هستند.
بالاترین 1074، آخرین زمان خاموش شدن کامپیوتر است. با مشاهده این سطر می‏توانید در ستون Date and Time به ترتیب تاریخ و ساعت خاموش شدن رایانه را مشاهده کنید.

راه دوم
این راه از طریق رجیستری ویندوز انجام می‏پذیرد.
از منوی Start وارد Run شده و عبارت regedit را وارد نموده و Enter بزنید تا ویرایشگر رجیستری باز شود.
به مسیر زیر بروید:


HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Windows


از قسمت دیگر پنجره، ShutdownTime را بیابید و بر روی آن کلیک کنید.
پس از انتخاب ShutdownTime، از منوی File بر روی Export کلیک کنید.
در پنجره Export Registry File، گزینه Save as type را بر روی Text Files تنظیم نمایید.
سپس فایل را با نام دلخواه در محیط مناسبی ذخیره کنید.
اکنون توسط My Computer به محلی که این فایل را ساخته‏اید بروید.
بر روی فایل دوبار کلیک کنید تا توسط Notepad باز شود.
اکنون در خط سوم این فایل متنی و در جلوی عبارت Last Write Time، می‏توانید آخرین تاریخ و ساعت خاموش شدن کامپیوتر را مشاهده کنید.

راه سوم
راه آخر شاید ساده‏ترین راه باشد.
از منوی Start به All Programs و سپس Accessories رفته و بر روی Notepad کلیک کنید.
حال در محیط Notepad کدهای زیر را عینأ Copy و Paste نمایید:


strValueName = "HKLM\SYSTEM\CurrentControlSet\Control\Windows\" _
& "ShutdownTime"
Set oShell = CreateObject("WScript.Shell")
Ar = oShell.RegRead(strValueName)
Term = Ar(7)*(2^56) + Ar(6)*(2^48) + Ar(5)*(2^40) + Ar(4)*(2^32) _
+ Ar(3)*(2^24) + Ar(2)*(2^16) + Ar(1)*(2^8) + Ar(0)
Days = Term/(1E7*86400)
WScript.Echo "Akharin Tarikh va Zamaneh Khamoosh Shodaneh Computer = " & CDate(DateSerial(1601, 1, 1) + Days)


پس از کپی کدهای فوق، از منوی File بر روی Save as کلیک کنید. سپس فایل را با نام دلخواه و پسوند vbs. ذخیره کنید. به عنوان مثال نام آن را File 1.vbs قرار دهید.
حالا به مسیری که فایل را ذخیره کرده‌اید مراجعه کنید.
پس از دوبار کلیک بر روی فایل، آخرین تاریخ و زمان خاموش شدن کامپیوتر را مشاهده نمایید!

طریقه فهمیدن این که چه سایتهایی شما را لینک کرده اند

افزایش بازدید از سایت : استفاده از Yahoo Site Explorer و مشاهده Backlink ها

برای اطلاع از وضعیت سایت خود از جهات مختلف میتوانید از Yahoo Site Explorer استفاده کنید. البته برای برخی اطلاعات باید ثابت کنید که مالک سایت هستید، اما برای دیدن back link ها لازم نیست.

برای این منظور بعد از رفتن به سایت مذکور و sign in کردن با ID یاهو خود، ابتدا سایت موردنظر خود را اضافه کنید:

   

سپس در قسمت پایین آن(قسمت Site) سایت شما اضافه خواهد شد(میتوانید چندین سایت مختلف را اضافه کنید). حالا روی دکمه Explore کلیک کنید:

   

سپس روی دکمه InLinks کلیک کنید، حالا تنظیماتی که در شکل زیر میبینید را انتخاب کنید:

   

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

آشنایی کامل با آلوده کردن فایل ها در vbscript توسط ویروس های کام

آشنایی کامل با آلوده کردن فایل ها در vbscript توسط ویروس های کامپیوتری

سه نوع آلوده سازی مشهور وجود دارند که عبارتند از:

ا.آلوده سازی به روش overwrite (رونویسی)

2.آلوده سازی به روش prepending (اضافه شدن به ابتدای فایل)

3.آلوده سازی به روش  apending  (اضافه شدن به انتهای فایل)

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

ا.آلوده سازی به روش overwrite (رونویسی)

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

دانلود ویروس نمونه:

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

سورس و توضیح کامل این ویروس رو در وبلاگ هم گذاشتم.از لینک زیر ویروس رو دانلود کنید و سپس بر رویش کلیک راست کرده و edit را برای تماشای سورس ویروس بزنید:

دانلود vbscript overwrite virus

2.آلوده سازی به روش prepending (اضافه شدن به ابتدای فایل)

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

دانلود ویروس نمونه:

این ویروس رو psychologic از اندونزی نوشته و تنها کاری که این ویروس انجام میده،آلوده کردن فایل های vbscript به روش prepending است و هیچ ضرر دیگه ای نداره.

دانلود vbscript prepending virus

3.آلوده سازی به روش  apending  (اضافه شدن به انتهای فایل)

این روش نیز شباهت زیادی به prepending دارد.در روش apending تنها کاری که ویروس انجام می دهد اضافه کردن کدهای خودش به انتهای فایل است.پس این روش نیز مانند روش قبلی قابلیت disinfect شدن دارد.همچنین ویروس مانند روش قبلی از رمزی برای تشخیص آلوده بودن یا نبودن یک فایل vbscript استفاده می کند.تفاوت بسیار مهمی که بین این دو روش وجود دارد این است که در روش apending ابتدا فایل اجرا می شود و وقتی عملیات فایل به پایان رسید،ویروس هم اجرا می گردد ولی در روش قبلی تا زمانی که کار ویروس پایان نپذیرد،فایل اجرا نخواهد شد.مدت زمانی که طول می کشد تا عملیات ویروس تمام شود به خود ویروس بستگی دارد.به همین دلیل بیشتر ویروس ها از روش سوم برای آلوده سازی فایل ها استفاده می کنند.

دانلود ویروس نمونه:

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

دانلود ویروس Aphrodite.a.vbs

Easy-PWChanger

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

 

 Download Source

 Download Now

Source Cod PM Spamer

PM sender: برنامه ای برای تبلیغات.

سلام
در این پست سورس یک برنامه ساده پی ام اسپمر میزارم.
کار این برنامه این هست که یک لیست آیدی به برنامه میدهید و پیغام مورد نظر خودتون هم مینویسید. و پیام شما رو به صورت پی ام به تمام آیدیها میرساند. 

Download Source