firmware

看到这题描述 是一个路由器固件的题目 第一次接触这种题目 然后上网搜了一下 发现要安装firmware-mod-kit 讲一下安装时遇到的坑 在安装时要把其放到虚拟机的其他地方 不能放在共享文件夹中 不然make时会报错

继续阅读“firmware”

阅读fuzzing综述论文1–Fuzzing: a survey(翻译)

Abstract

安全漏洞是网络安全威胁的根源之一。 为了发现漏洞并提前修复它们,研究人员提出了几种技术,其中模糊测试是最广泛使用的技术。 近年来,像AFL这样的模糊测试解决方案在漏洞发现方面取得了很大的进步。 本文概述了最近的进展,分析了它们如何改进模糊测试过程,并阐明了模糊测试的未来工作。 首先,我们通过比较不同的常用漏洞发现技术,讨论模糊测试流行的原因。 然后,我们概述了模糊测试解决方案,并详细讨论了一种最流行的模糊测试方法,即基于覆盖率的模糊测试。 然后,我们提出了其他技术,可以使模糊过程更智能,更高效。 最后,我们展示了一些模糊测试的应用,并讨论了模糊测试的新趋势和未来的潜在方向。

继续阅读“阅读fuzzing综述论文1–Fuzzing: a survey(翻译)”

用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++实现的壳”