软件漏洞之栈溢出执行shellcode

  • A+
所属分类:逆向工程
前言


    在前面文章中,讲解了通过溢出,来达到覆盖邻变量的值,从而绕过密码验证,本节讲解通过溢出执行shellcode


1.源代码分析

    通过读取password的内容,进行保存到变量里面。而我们的漏洞利用点就是password.txt这个文件。

#include "stdafx.h"#include <string.h>#include <stdlib.h>#include<windows.h>#define PASSWORD "1234567"int verify_password(char *password){  int authenticated;  char buffer[44];  printf("%pn",buffer);  authenticated = strcmp(password, PASSWORD);  strcpy(buffer, password);  return authenticated;}
int main(int argc, char* argv[]){
LoadLibrary("user3