ايران ويج

نسخه‌ی کامل: جلوگیری از پخش فایلهای صوتی توسط برنامه های دیگر ؟
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
صفحه‌ها: 1 2 3 4 5 6 7 8
نقل قول: اين پلاگين كه مياد توابع رو پيدا ميكنه و BreakPoint ميزاره كجاست؟ ديباگر من نداره !
ممنون
دیباگرتون چیه ؟
اگه Oly هست میتونید با زدن یک کلید Ctrl+G و نوشتن نام این تابع به اون قسمت از فایل Kernel32.dll ویندوز که درواقع ابتدای این تابع هست پرش کنید ( و هر تابع دیگه ای با این روش قابل انجام است ) بعد از پرش به اون قسمت کلید F2 را بزنید ( توی هلپ olly این کلید f2 برابر است با بریک پوینت )
(۱۳-آذر-۱۳۸۸, ۰۱:۲۰:۰۵)joker نوشته است: [ -> ]
نقل قول: اين پلاگين كه مياد توابع رو پيدا ميكنه و BreakPoint ميزاره كجاست؟ ديباگر من نداره !
ممنون
دیباگرتون چیه ؟
اگه Oly هست میتونید با زدن یک کلید Ctrl+G و نوشتن نام این تابع به اون قسمت از فایل Kernel32.dll ویندوز که درواقع ابتدای این تابع هست پرش کنید ( و هر تابع دیگه ای با این روش قابل انجام است ) بعد از پرش به اون قسمت کلید F2 را بزنید ( توی هلپ olly این کلید f2 برابر است با بریک پوینت )

اين مشكل حل شد !!!! اگر ميشه درمورد اين CreateThread يه سري توضيحات بديد.
و اگر ميشه يكم راهنمايي كنيد ببينم كجا اين فرم رو ميبنديد
ممنون
نقل قول: اين مشكل حل شد !!!! اگر ميشه درمورد اين CreateThread يه سري توضيحات بديد.
و اگر ميشه يكم راهنمايي كنيد ببينم كجا اين فرم رو ميبنديد
ممنون


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

البته شما با از کار انداختن این قسمت توی برنامه خیلی حال کردید چون کل حالش به همین جامپ ها بود :)))
برای کرک می های سخت تر میشه قسمتهایی از برنامه را که برای اجرا وجودشون لازمه را داخل این ترد یا تردها نوشت ( البته توی این کرک می همچین کاری نشده بود)
اگر ميشه خودتون كرك كنيد و قال قضيه رو بكنيد .

ممنون
اونجا که bp میزاریم ؛ فقط داخل خود معنی داره ؛ درسته ؟؟
چجور میشه bp رو فایل ذخیره که وقتی اجرا میکنمیش اجرا نشه ؟؟
محلی که این تابع صدا زده شده را پیدا کنید و کلا CALL مربوطه را NOP کنید
البته این روش پیشنهاد نمیشه ، چون روشی اصولی نیست و در اکثر مواقع ممکنه عملکرد برنامه را خراب کنه. ولی تو این مورد بزنید بترکونید ، چیزی که خراب نمیشه ، ضرری هم به کسی نمیرسه :)

اگه فیلم بزارم ، شاید هیچ وقت براتون سوالی پیش نیاد....
امروز بر خلاف همیشه تصمیم گرفته بودم آموزش بدم ، الانم حواسم نبود ساعت 12 شب رد شده باید برگردم به اخلاق قبلی ( سیندرلا بازی :))))

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

سورس عمومی این کرک می بدون یونیتهایی که مربوط به توابع آنتی کرک هستند ولی به صورت کلی تمام مراحل مشخص شده اند :

حتی وقتی میرسید به تایع GetFileSize حتما خندتون میگیره که چرا بااینکه 2-3 روز پیش توی انجمن نوشتمش ، امروز به یاد و فکرش نبودید که اینو بعد از انپک چک کنید :)))

کد:
unit Unit1;
// این سورس فقط 2تا روتینش بدلایل امنیتی حذف شده است :) بقیه چیزها سرجاشه
interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, ANTI,MagicApihook, VCLUAC,SHEllAPI;

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Timer1: TTimer;
    Timer2: TTimer;
    Timer3: TTimer;
    UACManifest1: TUACManifest;
    Button1: TButton;
    Button2: TButton;
    procedure Timer1Timer(Sender: TObject);
    procedure Timer2Timer(Sender: TObject);
    procedure Timer3Timer(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  PUB:String;

implementation

{$R *.dfm}

procedure TForm1.Timer1Timer(Sender: TObject);
begin

Label1.Caption :='Age Mitoni in Matno Avaz kon';
end;

procedure TForm1.Timer2Timer(Sender: TObject);
begin
if Label1.Caption<>'Age Mitoni in Matno Avaz kon' then
  begin
  Form1.Create(Self);
  end;

end;

procedure TForm1.Timer3Timer(Sender: TObject);
var
HREG :Thandle;
begin

      HREG := FindWindow(nil,Pchar('DeDe 3.50.02 (c) 1999-2002 by DaFixer'));
      if hREG<>0 then PostMessage(hReg,WM_CLOSE,0,0);

if Label1.Caption<>'Age Mitoni in Matno Avaz kon' then
  begin
Application.Terminate;
  end;

end;

procedure TForm1.FormCreate(Sender: TObject);
var
i,j:integer;
S2,S:string;
PID,Cnt: DWORD;
  F: THandle;

  size:Longint;
hFile: Thandle;


ACTIVE_THREAD;

try
hFile := CreateFileA(  pchar(paramstr(0)) , GENERIC_READ ,
FILE_SHARE_READ , nil, OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL, 0);
if( hFile <> INVALID_HANDLE_VALUE ) then
begin
Size :=GetFileSize(hfile,nil);
end;
CloseHandle(hFile);

// if size <>  then Application.Terminate;
if size >199996  then Application.Terminate;

except
end;


PID:=GetCurrentProcessID;

F:=CreateFileA(Pchar(MagicApihook.GetPath(Paramstr(0))+'PID.dat'),GENERIC_READ or GENERIC_WRITE,
                FILE_SHARE_READ or FILE_SHARE_WRITE,nil,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,0);
if F=INVALID_HANDLE_VALUE then
  begin
//  MessageBox(0,'Can not Create ProcessID file...','Error...',MB_ICONERROR);
  Exit;
  end;


WriteFile(F,PID,SizeOf(PID),Cnt,nil);
CloseHandle(F);
     DeleteFile('PID.dat');
DebugPrivilege(False);


  for i:=0  to 250 do
  begin
  S:= S+Label1.Caption;
  end;

  for i:=0  to 50 do
  begin
  S:= S+Label1.Caption;
  S2 :='Age Mitoni in Matno Avaz kon';
  end;
  for i:=0  to 150 do
  begin
  S:= S+Label1.Caption;
  S2 :='Age Mitoni in Matno Avaz kon';
  Label1.Caption := S2;
  PUB := S2;
  end;
  for i:=0  to 450 do
  begin
  S:= S+Label1.Caption;
  S2 :='Age Mitoni in Matno Avaz kon';
  end;

  Anti_CRACKER();

end;

procedure TForm1.Button1Click(Sender: TObject);
begin
ShellExecute( GetDesktopWindow,pchar('open'),pchar('http://forum.iranled.com/showthread.php?tid=15462&page=4'),nil,nil,1);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
Application.Terminate;
end;

procedure TForm1.FormShow(Sender: TObject);

begin

AddDebugPrivilage;
AntiProcDump;
antidebug;
AntiSoftIce;
  AntiAttach();
   Fuck_DBG();
   Check_Phantom1();
   Check_Phantom2();
   DBGDetect();
   AntiAttach;
   BLOK_KEY;



end;

end.
با پیغام
کد php:
access violation at addres 000000004. read of address 00000004 
مواجه میشم اما بعدش برنامه اجرا میشه ،

----------------
الان فقط مونده تغییر دستورات که متن رو چک میکنه ؟؟
(۱۳-آذر-۱۳۸۸, ۰۲:۳۰:۵۲)babyy نوشته است: [ -> ]با پیغام
کد php:
access violation at addres 000000004. read of address 00000004 
مواجه میشم اما بعدش برنامه اجرا میشه ،

----------------
الان فقط مونده تغییر دستورات که متن رو چک میکنه ؟؟

موقع ارسال این پست من متن قبلی را داشتم ویرایش میکردم تا سورس را بزارم

بله shift+F9 را بزنید و برنامه را اجرا کنید و با تغییر استرینگ ها این کرک می را ترتیبش را بدید.
(۱۳-آذر-۱۳۸۸, ۰۲:۴۰:۳۵)joker نوشته است: [ -> ]
(۱۳-آذر-۱۳۸۸, ۰۲:۳۰:۵۲)babyy نوشته است: [ -> ]با پیغام
کد php:
access violation at addres 000000004. read of address 00000004 
مواجه میشم اما بعدش برنامه اجرا میشه ،

----------------
الان فقط مونده تغییر دستورات که متن رو چک میکنه ؟؟

موقع ارسال این پست من متن قبلی را داشتم ویرایش میکردم تا سورس را بزارم

بله shift+F9 را بزنید و برنامه را اجرا کنید و با تغییر استرینگ ها این کرک می را ترتیبش را بدید.

سلام
پيغام خطا رو چيكارش كنيم ؟
و سوال بعديم اينه كه چه جوري آدرس 40401b رو پيدا كردي ؟؟اگر CreatThred رو سرچ كنم ميره داخل Kerne32.dll اما ميخوام ببينم كجاي برنامه صدا زده شده؟
ممنون
نقل قول: سلام
پيغام خطا رو چيكارش كنيم ؟
و سوال بعديم اينه كه چه جوري آدرس 40401b رو پيدا كردي ؟؟اگر CreatThred رو سرچ كنم ميره داخل Kerne32.dll اما ميخوام ببينم كجاي برنامه صدا زده شده؟
ممنون
سوالای چیز میکنی که نمیشه مستقیم جواب داد .... :)

راهنمایی میکنم ، توی اسمبلی دستور RETN شما را برمیگردونه به محلی که از اونجا اومدین
(۱۳-آذر-۱۳۸۸, ۰۳:۰۰:۵۰)joker نوشته است: [ -> ]
نقل قول: سلام
پيغام خطا رو چيكارش كنيم ؟
و سوال بعديم اينه كه چه جوري آدرس 40401b رو پيدا كردي ؟؟اگر CreatThred رو سرچ كنم ميره داخل Kerne32.dll اما ميخوام ببينم كجاي برنامه صدا زده شده؟
ممنون
سوالای چیز میکنی که نمیشه مستقیم جواب داد .... :)

راهنمایی میکنم ، توی اسمبلی دستور RETN شما را برمیگردونه به محلی که از اونجا اومدین

چيكار كنيم آخه ما تازه وارديم. منتها وقتي يكي توضيح بده ميفهميم !!!!!!
ممنون
صفحه‌ها: 1 2 3 4 5 6 7 8