avatar
Articles
415
Tags
259
Categories
26

Theqiqi_blog
Search

Theqiqi_blog

21.使用C语言与汇编语言调用syscall重写进程相关函数
Created2024-08-11|c+windows+hacking|C•Windows•Hacking
[toc] 调用win32相关函数读取进程内存数据与shellcode注入1. 用C语言写一个程序Message.exe12345678910111213141516171819202122//Message.c#include <stdio.h>#include <windows.h>void Message(){ MessageBoxA(0, 0, 0, 0);}int main(int argc, char** argv){ size_t var = 0x8070605040302010; printf("var vulue is 0x%llX\n", var); printf("var address is 0x%p\n", &var); size_t* p = &var; printf("var vulue is 0x%llX\n", *p); printf("var ...
20.将Dll文件转为二进制代码运行时解压出来
Created2024-08-10|c+windows+hacking|C•Windows•Hacking
[toc] 使用C语言读取与写入文件1. c语言读取文件 新建一个文本文件,命名为first.txt。 在first.txt中编辑文本。 编写C语言代码在程序中读取文本内容。 123456789101112131415161718#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>int main(){ FILE* fp = NULL; char buff[255]; fp = fopen("D:\\Users\\3\\Desktop\\first.txt", "r"); fgets(buff, 255, (FILE*)fp); printf("1: %s\n", buff); fgets(buff, 255, (FILE*)fp); printf("2: %s\n", buff); fgets(buff, 255, (FILE*)fp); printf("3: %s\n", buff); fclose(fp); ...
19.使用C语言获取进程模块句柄
Created2024-08-10|c+windows+hacking|C•Windows•Hacking
[toc] 遍历进程与模块1.设置Debug权限用来打开system进程句柄 设置Debug权限需要用管理员的什么打开 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748#include <stdio.h>#include <windows.h>BOOL SeDebug(BOOL bEnablePrivilege);int main(int argc, char** argv){ SeDebug(TRUE); DWORD dwPid=1180; HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, dwPid); printf("hProcess:0x%llX\n", hProcess); CloseHandle(hProcess); getchar(); return 0;}BOOL SeDebug(BOOL bEnablePr ...
18.使用C语言在windows程序中遍历进程并打印
Created2024-08-10|c+windows+hacking|C•Windows•Hacking
[toc] C语言遍历1.使用while循环123456789101112#include <stdio.h>int main(int argv, char* argc[]){ int a = 10; while (a < 20) { printf("a 的值: %d\n", a); a++; } return 0;} 2.使用do{}while()循环do{}while()为先执行后判断 123456789101112#include <stdio.h>int main(int argv, char* argc[]){ int a = 10; do { printf("a 的值: %d\n", a); a++; } while (a < 20); return 0;} 3.使用while循环给数组赋值123 ...
17.C语言获得窗口句柄与进程句柄
Created2024-08-09|c+windows+hacking|C•Windows•Hacking
[toc] C语言获取窗口句柄1.C语言获取控制台程序的句柄 完整代码功能为获取控制台程序的窗口句柄并在窗口用TextOutW写句话 12345678910111213141516171819202122232425262728#include <windows.h>#include <conio.h>#include <tchar.h>int main(int argc, char** argv) { TCHAR title[256];//控制台程序标题 //获取控制台标题 GetConsoleTitleW(title, 256); HWND hwnd1 = FindWindowW(0, title); HWND hwnd2 = FindWindowW(L"ConsoleWindowClass", 0); HWND hwnd3 = GetConsoleWindow(); HWND hwnd4 = GetForegroundWindow(); HWND hwnd = ...
16.寻找植物大战丧尸call并使用C语言调用
Created2024-08-09|c+windows+hacking|C•Windows•Hacking
[toc] 使用CE寻找种植Call并编写自动汇编脚本1. 通过CE找到汇编Call(掠过)2. 编写自动汇编脚本1234567891011121314151617181920212223242526[ENABLE]//code from here to '[DISABLE]' will be used to enable the cheatalloc(newmem,1024)createthread(newmem)newmem://根据基地址和偏移量计算第一个参数的变量地址mov ebx,00729670mov ebx,[ebx]mov ebx,[ebx+868]//call functionpush FFFFFFFF //常量-1push 2 //种植ID 此刻为樱桃炸弹mov eax,4 //Y轴座标push 0 //x轴坐标push ebx//地址[PlantsVsZombies.exe+329670]+868call 0040FA10//函数地址ret[DISABLE]//co ...
15.寻找进程中的MessageBoxA函数Call并调用
Created2024-08-08|c+windows+hacking|C•Windows•Hacking
[toc] x86程序中的写法1. ce寻找MessageoxA函数地址并通过自动汇编调用MessageBoxA 打开CE,附加程序 搜索MessageBoxA的地址 编写自动汇编代码调用MessgeBoxA 写法1:使用push传递参数 123456789101112131415161718[ENABLE]Alloc(newaddr,100)createThreadAndWait(newaddr)newaddr:push 0push 0push 0push 0call 7714B730ret[DISABLE]dealloc(newaddr)//Auto Assembler Commands//https://wiki.cheatengine.org/index.php?title=Auto_Assembler:Commands 写法2:使用push传递参数并保存ebp 123456789101112131415161718192021[ENABLE]Alloc(newaddr,100)createThreadAndWait(newaddr)newaddr:push ...
14.使用C语言将动态链接库加载到进程后调用汇编Call
Created2024-08-07|c+windows+hacking|C•Windows•Hacking
[toc] 使用C语言将动态链接库加载到实验程序后调用汇编Call1.写一个C语言程序,在程序里通过内联汇编调用C语言函数1234567891011121314151617181920212223242526272829//Message.c#include <windows.h>#include <stdio.h> void Message(){ MessageBoxA(NULL, "HellWorld", "Text", MB_OK);}void AsmMessage(){ __asm { mov edx, 0x00411406 //0x00411406 is Message() address call edx }}int main(int argc, char** argv){ printf("MessageBoxA address is 0x%p\n", & ...
13.c语言使用vs2022分析c语言程序并手写x86与x86_64内联汇编程序
Created2024-08-06|c+windows+hacking|C•Windows•Hacking
[toc] 用C语言写一个x86内联汇编程序1. 用C语言写一个程序,内容为调用MessageBoxA函数完整代码: 123456789101112131415//Message.c#include <windows.h>#include <stdio.h> int main(int argc, char** argv){ printf("0x%p", &MessageBoxA); MessageBoxA(NULL, "HellWorld", "Text", MB_OK); MSG msg; while (GetMessageW(&msg, NULL, NULL, NULL)) { } return 0;} 结果如图所示: 2. 用C语言与x86内联汇编写一个程序,内容为调用MessageBoxA函数完整代码 1234567891011121314151617181920212223242526 ...
12.使用C语言将动态链接库通过远程线程加载到进程中
Created2024-08-06|c+windows+hacking|C•Windows•Hacking
[toc] c语言程序动态链接库的简单实例1. 新建一个动态库项目,在动态库入口点中弹出一个MessageBoxW在动态链接库项目中关闭预编译头文件 123456789101112131415161718192021222324// dllmain.c : Defines the entry point for the DLL application.#include <windows.h>BOOL APIENTRY DllMain( HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved ){ switch (ul_reason_for_call) { case DLL_PROCESS_ATTACH: MessageBoxW(NULL, L"how you doing", L"what' ...
1…303132…42
avatar
Theqiqi
Articles
415
Tags
259
Categories
26
Follow Me
Announcement
This is my Blog
Recent Post
03-反馈流2026-08-21
02-错误流2026-08-21
01-控制流2026-08-20
05-多系统协作的十条流2026-08-19
04-多层系统的十条流2026-08-18
Categories
  • C with Socks16
  • C_Sound10
  • C_Windows_Graphi9
  • Cpp5
  • Cpp_Socket4
  • C语言在Windows中实现抓包4
  • C语言的万种用法9
  • Debian1
Tags
十阶段 接口先行 Qt主题架构 WindowsDriver python 从输入到交互 select LinuxDriver 入口系统 UDP服务器与可靠性 微服务与组装边界 DLL javascript 多系统组成的网络通信软件 Piano 拆解资源 游戏类型演化 Kali 建模与逆向 BSD Sockets x86汇编程序 IPV4 Drvier 认知能力分解 技术流 qemu Ninja 业务流程到功能点 用头文件验证依赖 引擎组装 Sound 从状态到系统 epoll QEMU 依赖接口 shell 依赖关系 Graphi 拆解美术 只有组件的子系统如何被加载
Archives
  • August 2026128
  • January 20261
  • April 20251
  • March 202595
  • February 202523
  • September 20242
  • August 202471
  • June 20242
Info
Article :
415
UV :
PV :
Last Update :
©2020 - 2026 By Theqiqi
Framework Hexo|Theme Butterfly
Search
Loading the Database