我的日记
文章平均质量分 83
cnbragon
擅长逆向分析,密码学算法分析,病毒和木马技术研究,Rootkit开发,各种应用软件开发
展开
-
My Own Cryptolib -- CryptoFBC
CryptoFBC is the simple form of Cryptography Library For Black Chamber.I write this cryptography library only for my interests.Coding Language: C++ (pure OOP)Currently,some cryptographic algorit原创 2005-08-02 20:49:00 · 2817 阅读 · 0 评论 -
metasploit使用
新版本的Metasploit分为Pro和Communicate版本1. use原创 2014-05-22 20:13:35 · 1583 阅读 · 0 评论 -
ntoskrnl符号在IDA中查看的问题
最近发现x64的ntoskrnl.exe,如果直接在IDA中原创 2014-06-18 22:17:19 · 3331 阅读 · 0 评论 -
Zigbee技术开发一 设置NV_RESTORE
需要试验一下设置NV_RESTORE之后,终端设备的处理逻辑,在IAR里面设置NV_RESTORE的地方如下原创 2015-08-07 16:08:50 · 2221 阅读 · 0 评论 -
windbg分析运行在64位环境下的32位程序的dump
windbg命令如下1. .load wow64exts2. !sw3. ~* kvnf原创 2015-12-17 16:21:56 · 5361 阅读 · 0 评论 -
LibVLC自定义插件目录,获取FPS方法
一、自定义插件目录 在Windows平台,使用LibVLC,只需要在VLC官网的nightly builds下载最新的win32 debug或win64 debug包,解压缩之后,会有libvlc.dll libvlccore.dll , sdks目录下面包含lib和头文件 如果需要自定义插件目录,使用--plugin-path无效的时候,需要使用如下的代码 typedef in原创 2016-08-18 11:11:40 · 12345 阅读 · 1 评论 -
miracl去除某些特殊信息
只需要在mirdef.h中增加如下定义即可在编译的时候,去掉错误信息#define MIRACL 32#define MR_LITTLE_ENDIAN /* This may need to be changed */#define mr_utype int /* the underlying type is usua原创 2017-01-08 11:52:49 · 702056 阅读 · 0 评论 -
从Unity 5.6导出Gradle工程需要修改地方
从Unity直接导出Gradle工程后,在Android Studio中使用Gradle编译打包时,有时会编译不过,总是报java out of memory异常,而最新的Android Studio界面设置中已经无法直接设置编译时使用的内存大小,所以需要通过修改配置文件来解决这个问题具体操作是在C:\Users\Your Username XXX\.gradle\目录下新建gradle.prop原创 2017-05-22 15:09:05 · 704927 阅读 · 0 评论 -
Unreal Engine UE4开发技巧
1.从GitHub下载源码解压后,需要先执行Setup.bat,如果处于需要代理才能访问网络的话,需要修改setup.bat,给GitDependencies.exe添加--proxy命令行,如GitDependencies.exe --proxy=1.2.3.4:8080原创 2017-12-20 10:12:07 · 697698 阅读 · 0 评论 -
VS2008界面语言设置
在卸载某个软件的时候,不知道什么原因导致vs2008的界面变成中文的了,但是菜单还是英文的,很不美观。几经查找,最后可以在如下的地方设置界面语言 Tools -> Options 如果设置成 same as Microsoft Windows,则会变成与系统相同的语言设置。原创 2013-12-09 13:05:43 · 13445 阅读 · 0 评论 -
驱动中如何给ring3层应用程序提权
为什么会有这个需求就不用我多说了吧:)目前在驱动中提权我知道的有三种办法1. 该方法来源于stoned bootkit,主要原理是把services.exe的EPROCESS中的Token值取出来,直接赋值给需要提权的应用程序,这种方法需要硬编码,并且有较大的机率蓝屏。主要是因为Token值会被释放和DeReference2.在进程创建时,使用ZwOpenProcess、ZwOpenProces原创 2013-09-24 23:21:12 · 4531 阅读 · 0 评论 -
应用层和驱动如何判断当前的启动模式
1. 应用层调用int nBootType = GetSystemMetrics(SM_CLEANBOOT)MSDN解释:The value that specifies how the system is started: 0 Normal boot1 Fail-safe boot2 Fail-safe with network bootA fail-safe boot (al原创 2013-07-15 19:35:29 · 1574 阅读 · 0 评论 -
编程技术点滴三(C/C++)
mov ecx,[ebp-2ch]mov edx,[ecx]and edx,80000000hneg edxsbb edx,edxneg edxmov [ebp-38h],edx其对应的C代码为: var_38=(*var_2c)&0x80000000?1:0switch...case语句,在VC6编译器下,比较语句将按照case值由小到大排列,而代码则按照程序员原创 2007-02-19 23:49:00 · 3244 阅读 · 3 评论 -
无线局域网产品使用的SMS4密码算法及其实现
SMS4算法由国家商用密码管理办公室发布,其算法的介绍可以从国家商用密码管理办公室的网站上下载到:http://www.oscca.gov.cn/Doc/6/News_1106.htm我花了点时间,简单的实现了这个算法,代码如下: 其中有不少代码是可以进一步优化以提高速度的,比如 i%4 => i&3 ; i*8 => i #include stdio.h>#define R原创 2007-02-24 22:31:00 · 5430 阅读 · 2 评论 -
Crypto++的类布局研究心得
Integer类的定义如下: typedef SecBlock > IntegerSecBlock;class CRYPTOPP_DLL Integer : private InitilizeInteger, public ASN1Object{...enum Sign { POSITIVE=0, NEGATIVE=1 };...IntegerSecBlock原创 2009-08-03 14:41:00 · 1489 阅读 · 0 评论 -
Rabbit流密码的Java实现
1. Rabbit流密码(Rabbit Stream Cipher)简介 Rabbit流密码是由Cryptico公司(http://www.cryptico.com)设计的,密钥长度128位,最大加密消息长度为264 Bytes,即16 TB,若消息超过该长度,则需要更换密钥对剩下的消息进行处理。它是目前安全性较高,加/解密速度比较高效的流密码之一,在各种处理器平台上都有不凡的表原创 2009-09-25 03:36:00 · 9349 阅读 · 10 评论 -
PsGetCurrentProcess
PsGetCurrentProcess的定义如下:PsGetCurrentProcessThe PsGetCurrentProcess routine returns a pointer to the process of the current thread.PEPROCESS PsGetCurrentProcess( VOID );ParametersNone Return ValuePsGetCurrentProcess returns a pointer to an opaque p原创 2010-08-27 09:50:00 · 3099 阅读 · 0 评论 -
导出VC6着色方案
导出,VC6着色方案,Visual Assist X设置原创 2010-09-04 00:22:00 · 1195 阅读 · 0 评论 -
Shell_NotifyIcon后tray退出的问题
<br />在填充NOTIFYICONDATA结构体中的hwnd成员时,如果hwnd成员不对,<br />则当鼠标移动到tray上的图标时,会自动退出。原创 2011-05-10 19:05:00 · 1946 阅读 · 0 评论 -
对某bootkit的驱动分析
一.基本信息驱动文件名:1F273549.sys(驱动名称随机)病毒类型:感染MBRMD5:xxx文件大小:9,104 字节 二.危害简介1. hook了4个SSDT函数,用于对抗杀软的驱动加载,以及保护自身样本不被复制2. 替换了Disk.sys的StartIo处理例程,隐藏MBR的修改3. 根据上层传入的进程pid来杀进程,主要用于结束杀软的进程4. 使用磁盘IO来直接操作MBR三.详细分析1原创 2012-12-04 13:10:09 · 2231 阅读 · 0 评论 -
Mac回滚iTunes版本
1. 关闭SIP,即System Integrity Protection参考这篇文章:https://www.howtogeek.com/230424/how-to-disable-system-integrity-protection-on-a-mac-and-why-you-shouldnt/即重启进入Recovery模式,在终端里输入csrutil disable就原创 2018-01-20 21:40:45 · 698990 阅读 · 0 评论