ايران ويج

نسخه‌ی کامل: کرک با سریز بافر
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
سلام،
تو آرشیوم یه ویدیو پیدا کردم که قدیمی هست برای سایت netquard خدابیامرز درست کرده بودم و داخلش کلی اشتباه و اشکال وجود داره عینک افتابی − بهینه شده برای ورژن جدید  خودم دوباره دیدمش کلی خندیدم :))
قضیه اینکه یه برنامه داریم با اینصورت :

کد:
#include <stdio.h>

/* Vulnerable Example
  Tutoral by VirusFree
  www.phoenixbit.com
*/

int OverflowMe(char *str){

      char buffer[10]; //our buffer

      strcpy(buffer,str); //the vulnerable command

      return 0;

}

int main(int argc, char *argv[])
{
      int pass=0;

      printf("You are in vuln.exe now\n");

      OverflowMe(argv[1]); //call the function and pass user input

      if ( pass == 1) {
             GoodPass(); //this should never happen
      } else {
             printf("Lozer!!!\n");
      }

      printf("Quitting vuln.exe\n");

      return 0;
}


int GoodPass(){

      printf("*******  You are IN!  *******\n");
      printf("*******  This is GoodPass() executing  *******\n");

}

که با سریز کردن بافر تابع GoodPass اجرا میشه.