[GUET-CTF2019]number_game
用C++实现的壳
1.读取PE文件的信息并保存
//PE.h
public:
HANDLE m_hFile; //PE文件句柄
LPBYTE m_pFileBuf; //PE文件缓冲区
DWORD m_dwFileSize; //文件大小
DWORD m_dwImageSize; //镜像大小
PIMAGE_DOS_HEADER m_pDosHeader; //Dos头
PIMAGE_NT_HEADERS m_pNtHeader; //NT头
PIMAGE_SECTION_HEADER m_pSecHeader; //第一个SECTION结构体指针
DWORD m_dwImageBase; //镜像基址
DWORD m_dwCodeBase; //代码基址
DWORD m_dwCodeSize; //代码大小
DWORD m_dwPEOEP; //OEP地址
DWORD m_dwShellOEP; //新OEP地址
DWORD m_dwSizeOfHeader; //文件头大小
DWORD m_dwSectionNum; //区段数量
DWORD m_dwFileAlign; //文件对齐
DWORD m_dwMemAlign; //内存对齐
DWORD m_IATSectionBase; //IAT所在段基址
DWORD m_IATSectionSize; //IAT所在段大小
IMAGE_DATA_DIRECTORY m_PERelocDir; //重定位表信息
IMAGE_DATA_DIRECTORY m_PEImportDir; //导入表信息
继续阅读“用C++实现的壳” [ACTF新生赛2020]Universe_final_answer
用IDA打开 找到主函数
继续阅读“[ACTF新生赛2020]Universe_final_answer”