avatar
Articles
286
Tags
104
Categories
25

Theqiqi_blog
Search

Theqiqi_blog

28.C语言在Windows中获得system权限的方法
Created2024-08-16|c+windows+hacking|C•Windows•Hacking
[toc] 利用系统进程来创建新的进程lsass.exe系统中没有加载kernel32.dll,只有ntdll.dll,需要先将kernel32.dll注入到lsass.exe进程中 1.使用CreateProcessWithTokenW获取其他进程令牌来创建新的进程之前的文章写过: 6.使用C语言在windows中创建线程与进程并且创建具有system权限进程 C:\Windows\System32\kernel32.dll 2. 将Dll注入到系统进程中弹出cmd程序 编写x86_64位dll程序并编译 将Dll注入到拥有系统权限进程winlogn.exe的程序中,系统如果有两个winlogn.exe会有一个没效果,注入器需要有管理员与Debug权限 完整代码,功能为创建一个cmd.exe 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960//dllmain.c#include <Windows ...
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 ...
1…161718…29
avatar
Theqiqi
Articles
286
Tags
104
Categories
25
Follow Me
Announcement
This is my Blog
Recent Post
101.使用Grop网站提供的api2026-01-03
9.压测2025-03-27
8.Linux Socket并发模型http服务器2025-03-27
7.web服务器中收发REST接口2025-03-27
6使用c语言与linux系统写一个web服务器,解析并响应get与post请求2025-03-27
Categories
  • C with Socks16
  • C_Sound10
  • C_Windows_Graphi9
  • Cpp5
  • Cpp_Socket4
  • C语言在Windows中实现抓包4
  • C语言的万种用法9
  • Debian1
Tags
cmake Cmake ipv4 x86汇编程序 Hacking LinuxDriver Python C++ android c_windows_driver Drvier epoll Piano OpenGl Disk linux MySql web Ethernet WindowsDrive jsp gtest html poll LinSock first pragram AI UART javascript System C http opencv Sound system PVE Hook Graphi Qt5.8 c语言的万种用法
Archives
  • January 20261
  • March 202595
  • February 202523
  • September 20242
  • August 202471
  • June 20242
  • March 202443
  • February 20248
Info
Article :
286
UV :
PV :
Last Update :
©2020 - 2026 By Theqiqi
Framework Hexo|Theme Butterfly
Search
Loading the Database