CreateRemoteThread简单运用

流沙 | C/C++ | 2018-01-31
测试代码可行, 推荐给大家 #pragma once #include <windows.h> #include <TlHelp32.h> #include "stdio.h" //线程参数结构体定义 typedef struct _RemoteParam { char szMsg[12]; //MessageBox函数中显示的字符提示 DWORD dwMessageBox;//MessageBox函数的入口地址 } RemoteParam, * PRemoteParam; ...

阅读全文>>

ė175次浏览 60条评论 0

运行内存中的exe(一)

流沙 | C/C++ | 2018-01-31
0x01 主要功能, 加载一个exe到 一个内存中, 并运行这块内存 0x02 有限制条件, EXE必须具有重定位表, 否则运行失败!! 截图 pid模块还没写完 想把进程移植到指定的 PID中运行! 0x03 关键代码 (有参考价值的代码,  重定位表的修复,  导入表的修复) // 20180118_20.cpp : Defines the entry point for the ap...

阅读全文>>

ė224次浏览 60条评论 0

win7 桌面图标异常

流沙 | 运维 | 2018-01-30
修复; 点击 开始 运行 输入 cmd 右键,选择“粘贴”以下代码;敲下回车就哦了! taskkill /im explorer.exe /f cd /d %userprofile%\appdata\local  del iconcache.db /a  start explorer.exe  exit 

阅读全文>>

ė174次浏览 60条评论 0

ReadProcessMemory 与 WriteProcessMemory

流沙 | C/C++ | 2018-01-29
修改一个程序的过程如下:1、获得进程的句柄 2、以一定的权限打开进程 3、调用ReadProcessMemory读取内存,WriteProcessMemory修改内存,这也是内存补丁的实现过程。下面贴出的是调用ReadProcessMemory的例程 #include <windows.h> #include <tlhelp32.h> BOOL CALLBACK EnumChildWindowProc(HWND hWnd,LPARAM lParam);//枚举记事本中的子窗口 char mess[999999]; int WIN...

阅读全文>>

ė197次浏览 60条评论 0

代码跳转到指定位置

流沙 | C/C++ | 2018-01-28
因为测试源码的失败,这里写一下原理和贴图 0x01 控制进程上下文 GetCurrentThread GetThreadContex 0x02 获取汇编的地址位置,修改Context memcpy [ctx.Ebx+8]内存处存的是外壳进程的加载基址,ctx.Eax存放有外壳进程的入口地址 0x03 __asm{     jmp  addr }

阅读全文>>

ė209次浏览 60条评论 0

PeLoader测试失败

流沙 | C/C++ | 2018-01-28
测试VirtualAlloc 的函数 一直提示 487 错误  无法解决!! 为了加深对PE文件结构的理解,写了个简单的模拟PE文件加载过程的程序,不过程序有些地方没处理好(资源节处),也存在这些小bug写的分四个文件写的,如下: ReadFile.h : 代码: #include <stdio.h> #include <windows.h> #include <assert.h> HANDLE OpenFile(char *name); int ReadFile(HANDLE ...

阅读全文>>

ė207次浏览 60条评论 0

网址保存

流沙 | 随笔 | 2018-01-28
IDABook http://www.idabook.com/ http://www.cnblogs.com/mydomain/category/264964.html 推荐的php集成环境 http://www.upupw.net/ 大牛的分享, 保存! http://blog.csdn.net/q1007729991 技术分享类文章 博客备份 推荐博客 http://blog.c...

阅读全文>>

ė747次浏览 60条评论 0

记一下一个头文件

流沙 | C/C++ | 2018-01-25
#include <windows.h> #include <winnt.h> 用#include <winnt.h>   记得前面加上 #include <windows.h>   调试了半天, 我去!!!

阅读全文>>

ė172次浏览 60条评论 0

[转]简单的PELoader

流沙 | C/C++ | 2018-01-24
一.废话 最近因为公司的项目需要,顺带的学习了一点和PELoader相关的东西,恰见网上正在沸沸扬扬的谈论虚拟脱壳。本人不才,实在是没能力也没精力去写一个真正意义上的虚拟机,因此尝试做了一个简单而偷懒的PE加载器。 这个PE加载器也可以看做是VM的前身吧。我想它可以成为一个简易脱壳工具或者用户态的进程内调试器基础。 二.做这个东西干嘛? 1.公司的项目需要实现但进程内多插件并发运行,也就是说,1个PID需要同时给n个进程使用,这牵扯到更麻烦的进程内内存切换工作。 2.实现反向进程注入,隐藏进程,这样做的RK更不容易被发现。 3.自从离开了安全的伤心地之后,一直堕落于做IM软件的Server,...

阅读全文>>

ė184次浏览 60条评论 0

[待写]项目流程

流沙 | C/C++ | 2018-01-24
ė175次浏览 60条评论 0

[转]注入小结

流沙 | C/C++ | 2018-01-24
一.Windows消息钩取:SetWindowsHookEx HHOOK SetWindowsHookEx( intidHook,// hook type 就是HOOK的消息种类,如WH_KEYBOARD,WH_MOUSE....见MSDN HOOKPROClpfn,// hook procedure 钩子过程,安装消息钩子时候,钩子过程一定要位于某个DLL内部 HINSTANCEhMod,// handle to application instance 钩子过程的DLL句柄(为NULL则是局部钩子) ...

阅读全文>>

ė192次浏览 60条评论 0

[实例]远程加载DLL, 远程卸载DLL

流沙 | C/C++ | 2018-01-22
0x01 项目说明 实现在内存中对dll的加载和卸载 0x02 软件展示 0x03 代码展示 // TestInjectProcess.cpp : Defines the entry point for the application. // #include "stdafx.h" #include "resource.h" #include <Windows.h> #include <Tlhelp32.h> #include <assert.h> #include &...

阅读全文>>

ė232次浏览 60条评论 0

DLL的远程注入技术

流沙 | C/C++ | 2018-01-21
一、DLL注入 DLL的远程注入技术是目前Win32病毒广泛使用的一种技术。使用这种技术的病毒体通常位于一个DLL中,在系统启动的时候,一个EXE程序会将这个DLL加载至某些系统进程(如Explorer.exe)中运行。 这样一来,普通的进程管理器就很难发现这种病毒了,而且即使发现了也很难清除,因为只要病毒寄生的进程不终止运行,那么这个DLL就不会在内存中卸载, 用户也就无法在资源管理器中删除这个DLL文件,真可谓一箭双雕哉。记得2003年QQ尾巴病毒肆虐的时候,就已经有些尾巴病毒的变种在使用这种技术了。 到了2004年初,我曾经尝试着仿真了一个QQ尾巴病毒,但独是跳过了DL...

阅读全文>>

ė176次浏览 60条评论 0

远程线程注入

流沙 | C/C++ | 2018-01-21
一、远程线程注入基本原理 远程线程注入——相信对Windows底层编程和系统安全熟悉的人并不陌生,其主要核心在于一个Windows API函数CreateRemoteThread,通过它可以在另外一个进程中注入一个线程并执行。在提供便利的同时,正是因为如此,使得系统内部出现了安全隐患。常用的注入手段有两种:一种是远程的dll的注入,另一种是远程代码的注入。后者相对起来更加隐蔽,也更难被杀软检测。本文具体实现这两种操作,在介绍相关API使用的同时,也会解决由此引发的一些问题。 顾名思义,远程线程注入就是在非本地进程中创建一个新的线程。相比而言,本地创建线程的方法很简单,系...

阅读全文>>

ė163次浏览 60条评论 0

基址查找测试

流沙 | C/C++ | 2018-01-18
简单测试基址 1 --- EAX=0000000B EBX=00097E68 ECX=00000000 EDX=0000000B ESI=00058338 EDI=005DF300 EBP=0160F768 ESP=0160F730 EIP=00425EBF Probable base pointer =00058338 00425EB2 - mov eax,00000FA0 00425EB7 - call Tutorial-i386.exe+E6F0 ---------00425EBC - mov [esi+18],eax 004...

阅读全文>>

ė196次浏览 60条评论 0

简单登录脚本测试

流沙 | C/C++ | 2018-01-17
0x001 易语言模拟了一个登录框 展示: 0x002 使用win32 模拟登录测试 全部代码: // 20180117_01.cpp : Defines the entry point for the application. //WTWindow #include "stdafx.h" #include <windows.h> BOOL isStart=FALSE; //登录 void QQLogin() { TCHAR szTitle[MAX_PATH...

阅读全文>>

ė201次浏览 60条评论 0

简单测试鼠标键盘事件

流沙 | C/C++ | 2018-01-16
类似案件按键精灵的东西,直接上代码 // 20180116_02.cpp : Defines the entry point for the application. // #include "stdafx.h" #include <windows.h> #include <stdio.h> //FindWindow void test1() { TCHAR szTitle[MAX_PATH]={0}; HWND hwnd = FindWindow(TEXT("WTWindow"),TEXT("用户名 采集 V1.0...

阅读全文>>

ė209次浏览 60条评论 0

文件加壳实现(五) —— 已完成

流沙 | C/C++ | 2018-01-15
20180115.rar   0x001 写了一个多星期了 大多参考的时课程,以及红色病毒的代码 还有很多的知识点不太理解 模模糊糊的写出来了, 中间也遇到了很多困难,   字节贴关键代码吧 我把工程文件也附加上 // TestShell.cpp : Defines the entry point for the application. // #include "stdafx.h" #include <windows.h> #include ...

阅读全文>>

ė184次浏览 60条评论 0

文件加壳实现(四) —— VirtualAllocEx

流沙 | C/C++ | 2018-01-15
早上起来忙了两个小时, 主要参考的红色病毒的代码,一直在更改中 还有四步才能实现 帖一下半成品的代码 // TestShell.cpp : Defines the entry point for the application. // #include "stdafx.h" #include <windows.h> #include <stdio.h> #include <stdlib.h> #include "PEOperate.h" /* 以挂起的形式创建进程, 获取Conte...

阅读全文>>

ė220次浏览 60条评论 0

文件加壳实现(三) —— ZwUnmapViewOfSection

流沙 | C/C++ | 2018-01-14
还不完整, 继续整理中 // TestShell.cpp : Defines the entry point for the application. // #include "stdafx.h" #include <windows.h> #include <stdio.h> #include <stdlib.h> #include "PEOperate.h" /* 以挂起的形式创建进程, 获取Context */ #define KEY 0x56 #pragma pack(push...

阅读全文>>

ė194次浏览 60条评论 0

Ɣ回顶部