Guest User

Untitled

a guest
Oct 21st, 2017
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 0.84 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <string.h>
  3.  
  4. int main(int argc, char *argv[]) {
  5.  
  6.   int i;
  7.   char  buffer[32];
  8. //char  *key1 = "/";
  9.   char  *p1, *p2, *p3, *p4, *p5;
  10.   char  key2[2], key3[2], key4[2], key5[2];
  11.  
  12. //  if(argc != 2)
  13. //    return -1;
  14.  
  15.   for(i = 1; i < argc; i++) {
  16.         memset(argv[i], 0, strlen(argv[i]));
  17.   }
  18.   sprintf(key2, "%c", 0x90); // nop
  19.   sprintf(key3, "%c", 0xeb); // jmp
  20.   sprintf(key4, "%c", 0xcd); // int
  21.   sprintf(key5, "%c", 0xff); // still easy
  22.  
  23. //p1 = strstr(argv[0], key1);
  24.   p2 = strstr(argv[0], key2);
  25.   p3 = strstr(argv[0], key3);
  26.   p4 = strstr(argv[0], key4);
  27.   p5 = strstr(argv[0], key5);
  28.  
  29.   if (p2 != NULL || p3 != NULL || p4 != NULL || p5 != NULL) {
  30.     printf("Access denied.\n");
  31.     return -1;
  32.   }
  33.   else {
  34.     printf("Access granted.\n");
  35.   }
  36.  
  37.   strcpy(buffer, argv[0]);
  38.  
  39.   return 0;
  40. }
Add Comment
Please, Sign In to add comment