
二进制
Cosmop01itan
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Extreme Injector v3注入工具
Extreme Injector是一个应用层的Dll注入工具,支持多种注入方式:下载链接: 在文末。原创 2025-06-22 10:45:05 · 970 阅读 · 0 评论 -
c++ new[] delete[]底层分析
先写一个demo,里面有new[],delete[],使用C++11 MTd选项编译:#include <string>int main(){ auto pS = new std::string[10]; delete[] pS; return 0;}new的大小为0x11c,十进制284,相当与10*28 + 4。4个额外申请的长度就是保存数组大小用的。auto pS = new std::string[10];009C970D push 11Ch原创 2020-12-19 15:40:07 · 403 阅读 · 2 评论 -
易语言金盾4.0登陆特征码
55 8b ec 81 ec 10 00 00 00 68 24 00 00 00原创 2020-05-02 23:03:32 · 239 阅读 · 0 评论 -
飘云阁内存补丁工具使用
程序加了tmd壳,直接脱不方便,程序会弹黄色广告以及加入YY房间的窗口,找到关键代码位置,使用内存工具打补丁。这是弹黄色网站的函数,用的ShellExecuteA.那怎么确定什么时候壳代码跑完了,到主程序代码了呢,这里用OD调试,断LoadLibraryW,发现15过后,执行到这里,那么我们在补丁工具里使用Hook补丁,设置LoadLibraryW函数调用15次后开始打补丁:直接用r...原创 2020-04-30 21:58:49 · 2231 阅读 · 0 评论 -
易语言文本比较特征码
8B 54 24 04 8B 4C 24 08 85 D2 75 0D 33 C0 85 C9 74 06 80 39 00 74 01 48 C3 85 C9 75 09 33 C0OD里面搜索定位到文本比较函数,改返回值就能破解字符串比较了。原创 2020-04-29 23:12:49 · 3952 阅读 · 0 评论 -
检测IAT HOOK思路
先遍历IAT各个导入dll遍历每个dll中的每个函数,通过GetModuleHandleExA找到函数所在的dll基地址。最后比较基地址是不是一样。bHooked = ((DWORD)hCurrFuncModule - (DWORD)hOriginalDllBase == 0) ? 0 : 1;...原创 2019-11-09 23:37:44 · 749 阅读 · 0 评论 -
驱动层虚拟机检测参考爱写驱动的女装大佬
#include <ntddk.h>#include <windef.h>typedef struct _SYSTEM_MODULE_INFORMATION{ HANDLE Section; PVOID MappedBase; PVOID base; ULONG Size; ULONG Flags; USHORT LoadOrderIndex; ...原创 2019-09-17 22:37:17 · 549 阅读 · 0 评论 -
内核进程监控框架
//win7 x64下测试通过:#include <ntifs.h>#include <ntddk.h>VOID UnloadDriver(PDRIVER_OBJECT pDriver);VOIDCreateProcessRoutineSpy(IN HANDLE ParentId,IN HANDLE ProcessId,IN BOOLEAN Cre...原创 2019-09-19 23:12:42 · 325 阅读 · 0 评论 -
minifilter框架监控文件创建框架
#include <fltKernel.h>#include <dontuse.h>#include <suppress.h>#pragma prefast(disable:__WARNING_ENCODE_MEMBER_FUNCTION_POINTER, "Not valid for kernel mode drivers")PFLT_FILT...原创 2019-09-20 13:02:12 · 1647 阅读 · 2 评论 -
修改xp boot.ini文件
去掉保护权限,修改前执行,修改后执行上面语句cmd /k attrib -s -h -r c:\boot.ini & exit 现在修改就不会报没权限的错误了转载 2019-09-23 18:14:48 · 282 阅读 · 0 评论 -
驱动实现进程保护
//基于SSDT Hook//Hook ZwTerminateProcess对传入的进程进行检查,如果匹配,则返回拒绝访问#include <ntddk.h>#include <windef.h>#include "SSDTHook.h"typedef enum _SYSTEM_INFORMATION_CLASS { SystemBasicInformati...原创 2019-09-24 20:22:44 · 3834 阅读 · 0 评论 -
驱动写文件列子
#include <ntddk.h>NTSTATUS Unload(PDRIVER_OBJECT driver){ DbgPrint("unloaded!"); return STATUS_SUCCESS;}NTSTATUS DriverEntry(PDRIVER_OBJECT driver, PUNICODE_STRING reg_path){ DbgPrint...原创 2019-09-24 23:10:36 · 314 阅读 · 0 评论 -
驱动入门hello代码框架
#include <ntddk.h>NTSTATUS Unload(PDRIVER_OBJECT driver){ DbgPrint("unload driver"); return STATUS_SUCCESS;}NTSTATUS DriverEntry(PDRIVER_OBJECT driver, PUNICODE_STRING RegPath){ DbgPrin...原创 2019-09-25 19:53:56 · 327 阅读 · 0 评论 -
驱动读取注册表
#include <ntddk.h>#define MY_REG_SOFTWARE_KEY_NAME L"\\Registry\\Machine\\Software\\lxw"NTSTATUS Unload(PDRIVER_OBJECT driver){ DbgPrint("unload driver"); return STATUS_SUCCESS;}VOID ...原创 2019-09-25 21:07:24 · 741 阅读 · 0 评论 -
CmRegisterCallback监控注册表框架
首先用CmRegisterCallback注册注册表回调记得在Unload函数里面释放注册的回调RegNtPreDeleteKey:RegNtPreDeleteValueKey:这里我只监控了上面两个动作#include <ntddk.h>#define REGISTRY_POOL_TAG 'lxw'LARGE_INTEGER cookie;NTKERNELAPI...原创 2019-09-28 22:43:02 · 1771 阅读 · 1 评论 -
腾讯面试记录
原创 2019-10-01 12:10:16 · 344 阅读 · 0 评论 -
PsSetCreateProcessNotifyRoutineEx进程监控框架
vs设置:“项目-属性-链接器-命令行”位置添加 /INTEGRITYCHECK 即可,不然注册回调的时候会失败参考:https://xiaodaozhi.com/kernel/18.html#include <ntddk.h>typedef NTSTATUS (*PPsSetCreateProcessNotifyRoutineEx)(_In_ PCREATE_PROCESS...原创 2019-10-08 12:57:38 · 1802 阅读 · 1 评论 -
对象回调实现进程保护
#include <ntddk.h>#define PROCESS_TERMINATE 1#define PROCESS_VM_OPERATION 0x0008 #define PROCESS_VM_READ 0x0010 #define PROCESS_VM_WRITE 0x0020 typedef struct _L...原创 2019-10-08 14:01:59 · 1149 阅读 · 0 评论 -
PsSetLoadImageNotifyRoutine回调列子
#include <ntddk.h>VOID LoadImageNotifyRoutine(PUNICODE_STRING FullImageName, HANDLE ProcessId, PIMAGE_INFO ImageInfor);NTSTATUS Unload(PDRIVER_OBJECT driver){ DbgPrint("unload driver"); ...原创 2019-10-09 10:48:07 · 1124 阅读 · 0 评论 -
反调试总结
// AntiDbg.cpp : 定义控制台应用程序的入口点。////#include "stdafx.h"#include <iostream>#include <Windows.h>using namespace std;enum PROCESSINFOCLASS//{ ProcessBasicInformation = 0, Process...原创 2019-10-10 14:13:04 · 429 阅读 · 0 评论 -
ubuntu: Authentication failure的解决办法
设置一下密码即可: $ sudo passwd root Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully 成功之后再su 输入密码就可以切换到root了...转载 2018-06-23 14:39:43 · 2461 阅读 · 0 评论 -
内核线程创建列子
//vs2013+ wdk8.1下编译#include <ntddk.h>BOOLEAN bStoped = FALSE;PVOID pThreadObj=NULL;NTSTATUS Unload(PDRIVER_OBJECT driver){ DbgPrint("unloaded!"); bStoped = TRUE; KeWaitForSingleObject...原创 2019-09-15 23:50:40 · 205 阅读 · 0 评论 -
FSD键盘钩子框架参考爱写驱动的女装大佬
环境:vs2013+wdk8.1#include <ntddk.h>extern POBJECT_TYPE *IoDriverObjectType;PDRIVER_OBJECT kbdriver = NULL;typedef NTSTATUS(*pBeforeRead)(PDEVICE_OBJECT pDevice, PIRP pIrp);pBeforeRead Befo...原创 2019-09-15 10:23:33 · 448 阅读 · 0 评论 -
ctf之py反编译求p*q%n==1
拿到一个pyc反编译,分析了一下,要求t1,t2,t3from flag import t1, t2, t3N = 91080783459224114417419735848141602413276894709356670475166857901383529276788422992031159Ls1 = 11411269144987772222786703496950992585276983...原创 2019-04-17 11:13:01 · 959 阅读 · 0 评论 -
FSG2.0脱壳记录
想要加壳文件的可以评论留言。。1.现用PEId查一下壳,发现是FSG压缩壳2.载入od,是fsg的入口特征3.od往下到 jmp dword ptr:[ebx+0xc],下断点4.F9 运行,执行到jmp,跳转到这里5.到oep,删除模块分析6.后面用LordPe dump,Import REC修复导入表,这里不再赘述。...原创 2019-04-04 22:19:57 · 915 阅读 · 0 评论 -
恶意代码实战Lab13-01分析
先用peid查一下信息没加壳,vc6写的,拖入ida反编译先从资源段解密信息,后来分析是url进入decrypt函数,用的是xor接下来上传信息这里用od动态调试,获取主机名,strcpybase64加密主机名,这里可以用peid的插件识别出base64算法用InternetOpenUrlA的get请求上传加密的信息...原创 2018-12-10 09:02:45 · 548 阅读 · 0 评论 -
无源码修改exe文件图标
将exe导入到Restorator里面解析,如果解析不了就用FixRes修复一下然后导入自己的ico替换即可原创 2018-11-04 13:53:22 · 4691 阅读 · 0 评论 -
ubuntu第一次设置root密码
给root用户设置密码打开终端,输入命令sudo passwd,然后系统会让你输入新密码并确认,此时的密码就是root新密码。修改成功后,输入命令su root,再输入新的密码就ok了...转载 2018-10-31 13:48:23 · 1618 阅读 · 0 评论 -
delphi程序crackme分析1
拿到exe文件,先用PeiD查一下有没有壳,什么语言写的: 确定了是delphi写的之后,放到Delhpi Decompiler反编译分析: 点击Procedures,再双击CKM 注意到chkcode那个函数,怀疑是检测代码,ida跟进去看看: 函数前面部分是根据输入的用户名,计算出一个注册码: 所以连接后的字符串为:”黑头Sun Bird”+(用户名长度+5)+”原创 2018-01-12 01:42:16 · 865 阅读 · 0 评论 -
一个含有crc32算法的CrackMe分析
exe文件的下载地址为: http://pan.baidu.com/s/1gfw0XKf启动界面: 大概意思是输入用户名和序列号,检查是否匹配,现在用ida打开分析一下: msg==0x111位处理传过来的WM_COMMAND消息 下面对关键的地方进行分析,F5大法:size = GetDlgItemTextA(hWnd, 1004, name, 255);// 取Name放到na原创 2017-07-17 22:26:02 · 811 阅读 · 0 评论 -
crackMe的逆向分析
//源文件下载:http://pan.baidu.com/s/1geK6oQB 密码:nup1下面是程序的DialogFunc的回调函数:红色的为下断点的位置,为Register按钮的处理过程,调用了checkAll(我自己改的)函数来验证用户名和密码,还有那些nop指令本来是程序检查是否在GetDlgItemTextA函数下断点,下了的化就程序自己退出,我把它nop掉了原创 2017-06-27 23:11:36 · 2079 阅读 · 0 评论 -
用angr解二进制题目1
上图是程序的流程,大概说一下,int main(int argc,char *argv[],char *env[]) 先判断argc是不是2,如果不是直接打印You need to enter the secret key! 如果是2,就一个文件名,和一个secret key字符串。接着调用verify函数来检查secret key 是否合法。这是可执行文件的下载地址:http://pan.ba原创 2017-06-15 14:06:06 · 1451 阅读 · 0 评论 -
*ctf box题解
题目给了源码/* * main.c * Copyright (C) 2019 hzshang <hzshang15@gmail.com> * * Distributed under terms of the MIT license. */#include <stdio.h>#include <stdlib.h>#include <str...原创 2019-04-17 14:24:15 · 1251 阅读 · 0 评论 -
2019信安国赛逆向easyGo,bbvvmm题解
0x00 Reverse–easyGo操作内容:|拖入ida反编译,发现很难识别,google之后,发现解析go符号的ida py脚本https://raw.githubusercontent.com/strazzere/golang_loader_assist/master/golang_loader_assist.py执行之后识别出了main函数,在main函数里面找00000004...原创 2019-04-23 10:42:10 · 2250 阅读 · 1 评论 -
驱动层和r3程序通讯的列子参考爱写驱动的女装大佬
开发环境:VS2013+WDK8.1驱动层:#include <ntddk.h>#define DEVICE_NAME "\\Device\\MyReadDevice"#define SYM_LINK_NAME "\\??\\MyRead"NTSTATUS DriverUnload(PDRIVER_OBJECT driver){ DbgPrint("unload ...原创 2019-09-14 11:42:06 · 465 阅读 · 0 评论 -
pwnable.kr lotto题解
ssh lotto@pwnable.kr -p2222 (pw:guest)题目源码:#include <stdio.h>#include <stdlib.h>#include <string.h>#include <fcntl.h>unsigned char submit[6];void play(){ int ...原创 2019-09-10 23:42:49 · 359 阅读 · 0 评论 -
TrojanDownloader简单分析
这里是WinMain的入口,先读取最后自己最后160解密出要下载的url:注册服务和写入注册表来加入自启动没有下载过就开一个线程去下载执行下载执行并且标记为已下载...原创 2019-07-27 11:57:45 · 2645 阅读 · 0 评论 -
简单的合并两个文件
windows:比如将文件A和文件B合并变成文件ABtype B >> A原创 2019-07-12 10:24:09 · 651 阅读 · 0 评论 -
南邮逆向xor题解
ida反编译:调用了6个函数对输入的字符串进行了加密,进入func1看看:对输入的57个字符进行了xor接下来进入xfun1:很明显对前10个进行了xor,后面的函数几个同理。接下来写python脚本解密:data=[0x15,0x1F,0x12,0x14,0x08,0x3A,0x46,0x2C,0x07,0x1B,0x51,0x13,0x3F,0x57,0x08,0x05,0x3F,...原创 2019-06-10 16:24:57 · 1090 阅读 · 0 评论 -
c#动态修改代码的crackme
题目运行截图用exeinfo看下有没有混淆:拉进dnSpy反编译:进btnCheck_Click单击过程看下:里面调用了Form1.MetMetMet()函数:在这个函数里面动态生成了一个MetM函数,用form.bb数组里面的内容来填充函数内容,实际上这个MetM才是验证函数那我们要把这个函数修复,动态调试把bb数组的内容复制出来,将MetMett函数的内容替换为bb数组的内...原创 2019-05-27 22:15:04 · 949 阅读 · 0 评论