avatar
Articles
415
Tags
259
Categories
26

Theqiqi_blog
Search

Theqiqi_blog

29. 利用系统进程加载Dll到其他进程中(系统进程可能会出现bug)
Created2024-08-16|c+windows+hacking|C•Windows•Hacking
[toc] 一、将Dll注入到系统进程后加载Dll到其他进程中1.编写Dll1.dll文件,注入到winlogon.exe中 dllmain1.c 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950//dllmain1.c#include <Windows.h>#include "Load1.h"HMODULE g_hDll = NULL;DWORD WINAPI UnloadThreadCallBack(PVOID param);DWORD WINAPI UnloadThread();// DLL 主函数BOOL APIENTRY DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved){ switch (ul_reason_for_call) { case DLL_PROCESS_ATTACH ...
1.使用C语言在Windows程序中播放音频
Created2024-08-15|C_Sound|C•Windows•Sound
[toc] 使用c语言中的媒体库播放声音1.c语言使用Winapi播放声音 准备一个WAV格式的音乐,PlaySound函数只能播放WAV格式的音乐 123456789101112#include <windows.h>#include <mmsystem.h>#include <stdio.h>#pragma comment(lib,"winmm.lib")int main() { BOOL flag=PlaySoundA("D:\\Users\\3\\Videos\\落叶的位置.wav", NULL, SND_SYNC); if(!flag)printf("%d\n",GetLastError()); return 0;} 准备一个mp3格式的音乐,使用mciSendString播放 123456789101112131415161718192021222324#include <windows.h>#include < ...
C语言中使用MySql下:使用服务器中的MySql
Created2024-08-15|C语言的万种用法|C•Windows•Linux•MySql
[toc] 一 、配置服务端1. 安装kali2. 在kali中开启MySql 打开MySql服务 12systemctl start mysql#service mysql restart 查看MySql状态 12systemctl status mysql#service mysql status MySQL初始化 1mysql_secure_installation 初始化之后再重启服务 1systemctl restart mysql 运行MySQL测试一下,exit退出 1mysql 3. 开启服务器中MySql的访问权限,使其他主机可以连接服务器的MySql数据库 在服务器中启动MySql 1mysql 列出所有MySql用户 1SELECT user FROM mysql.user; 选择数据库mysql 1use mysql 显示数据库mysql,里面保存了所有用户 1SELECT user,host FROM user; 创建新用户命名为new 1CREATE USER 'new'@'%' IDEN ...
C语言使用MySql上:使用本地中的MySql
Created2024-08-15|C语言的万种用法|C•Windows•Linux•MySql
[toc] 一、准备工作1.安装MySql2.使用MySql数据库新建一个表 使用cmd开启服务,以管理员身份运行cmd 1net start MySQL80 切换到mysql中bin命令 1cd C:\Program Files\MySQL\MySQL Server 8.0\bin 命令行连接数据库 1mysql -h localhost -u root -p123456 使用sql语句新建一个数据库 1CREATE DATABASE test DEFAULT CHARSET utf8; 选择数据库 1use test 使用sql语句新建一个表格 1234567CREATE TABLE book ( book_id int PRIMARY KEY AUTO_INCREMENT, book_name varchar(60) NOT NULL, book_author varchar(60) NOT NULL, book_shelf int DEFAULT 0, book_addtime datetime NOT NULL); 给表格插入一条数据 ...
27.通过调试程序读取内存地址数据
Created2024-08-15|c+windows+hacking|C•Windows•Hacking
[toc] 读取数据1.准备一个被调试程序,编译前关闭随机基址1234567891011121314#include <Windows.h>#include <stdio.h>int main(){ SetConsoleTitleA("Message"); printf("Message.exe 0x%X\n",GetModuleHandle(TEXT("Message.exe"))); SIZE* addr = 0x140000000; printf("0x140000000 value 0x%x",*addr); getchar(); return TRUE;} 2.用C语言调试已经打开的Message.exe并读取0x14000000地址处的数据123456789101112131415161718192021222324252627282930313233343536 ...
26.C语言隐藏函数调用
Created2024-08-14|c+windows+hacking|C•Windows•Hacking
[toc] C语言通过内联汇编隐藏函数调用1. 通过C语言内联汇编隐藏调用函数,将需要调用的地址放到[ebp+4]的位置(此程序执行成功,但会堆栈不平衡造成程序崩溃)12345678910111213141516171819202122#include <windows.h>#include <stdio.h>#pragma optimize("",off)void empty(){ printf("1:empty\n");}int main(){ _asm { mov eax, empty mov [ebp + 4], eax } printf("2:stack\n");}#pragma optimize("",on) 2.通过C语言裸函数内联汇编隐藏调用函数,将需要调用的地址放到[ebp+4]的位置,使用[ebp+4]的值前将[ebp+4]的值赋予[ebp+8]1234567891011121314151617 ...
25.通过Hook注入Dll
Created2024-08-13|c+windows+hacking|C•Windows•Hacking
Hook注入dll文件到所有带窗口的32位程序中1.在Dll中编写Hook代码,编译为32位 dllmain.c 1234567891011121314151617181920212223// dllmain.c : Defines the entry point for the DLL application.#include <windows.h>#include "Hook.H"BOOL APIENTRY DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved){ switch (ul_reason_for_call) { case DLL_PROCESS_ATTACH: MessageBoxA(0, "success load", "title", 1); break; case DLL_THREAD_ATTACH: brea ...
24.通过Hook捕获程序键盘消息与鼠标消息
Created2024-08-13|c+windows+hacking|C•Windows•Hacking
[toc] 设置全局Hook用C语言写一个程序捕获键盘消息来判断A是否被按下1234567891011121314151617181920212223242526272829303132333435363738#include <windows.h>#include <stdio.h>HHOOK hKeyboardHook;// 钩子过程LRESULT CALLBACK KeyboardProc(int nCode, WPARAM wParam, LPARAM lParam) { if (nCode == HC_ACTION) { KBDLLHOOKSTRUCT* pKeyboard = (KBDLLHOOKSTRUCT*)lParam; if (wParam == WM_KEYDOWN) { if (pKeyboard->vkCode == 'A') { // 检查是否按下 "A" 键 ...
23.C语言实现InlineHook
Created2024-08-11|c+windows+hacking|C•Windows•Hacking
[toc] 前置准备 为了方便测试需要将随机基址关闭 1. 写一个被调试程序12345678910111213141516171819202122//Message.c#include <stdio.h>#include <windows.h>#include <conio.h>void Message(char *var){ printf("var vulue is 0x%s\n", var);}int main(int argc, char** argv){ char* var = "AAA"; printf("var vulue is 0x%s\n", var); printf("var address is 0x%p\n", var); printf("ProcessID is %d\n", GetCurrentProcessId()); printf(&q ...
22.使用C语言获取系统架构
Created2024-08-11|c+windows+hacking|C•Windows•Hacking
[toc] 使用C语言获取系统架构1. 使用GetNativeSystemInfo获取系统架构1234567891011121314151617181920212223#include <windows.h>#include <stdio.h>BOOL Is64BitOS(){ SYSTEM_INFO stInfo = { 0 }; GetNativeSystemInfo(&stInfo); if (stInfo.wProcessorArchitecture == PROCESSOR_ARCHITECTURE_IA64 || stInfo.wProcessorArchitecture == PROCESSOR_ARCHITECTURE_AMD64) { return TRUE; } return FALSE;}int main(){ if (Is64BitOS()) printf(&q ...
1…293031…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