
编程技术
文章平均质量分 70
pll621
这个作者很懒,什么都没留下…
展开
-
RLE压缩及优化
简单的说RLE压缩就是将一串连续的相同数据转化为特定的格式达到压缩的目的。下面都对byte流压缩。如输入数据LPBTE pByte={1,1,1,1,1,1};压缩的数据为6,1压缩了4个字符。但是在数据流里面不能直接这么替换,而应该使用特殊的控制字符,否则无法解压。比如pByte={6,1,0,1,1,1,1,1,1};这样有两个6,1无法判断是原有的6,1还是{1,1,1,1,1,1}压缩后的原创 2005-06-28 04:16:00 · 1862 阅读 · 2 评论 -
市面上所有号称"虚拟机","防火墙"的实时监控杀毒软件无一不是使用的IFSHOOK技术.但是同时也有一些朋友不断写MAIL给我打听如何实现读写的监控.下面给出用VTOOLSD写的代码.也就是所有实时杀毒软件的奥秘.同时,很多拦截文件操作的软件,例如对目录加
//============================================================================= // //By Lu Lin 2000.5.10 // Apply with VtoolsD 3.01 // DDK version is available if requested. //Abstract: // Install a I原创 2005-12-11 14:34:00 · 1366 阅读 · 0 评论 -
捆绑exe文件
启动前先启动 Calc.exe, 改一下, 用 Explorer.exe 也可以。 代码:--------------------------------------------------------------------------------#define UNICODE#define _UNICODE #include #include原创 2005-12-11 14:34:00 · 2713 阅读 · 0 评论 -
绕过XP SP2防火墙的代码
Exploit:#include #include #include #include #include void setfp(char *buffer,int sz,DWORD from,DWORD fp){int i;for(i=0;iif (buffer[i]==/xb8&&*(DWORD*)(buffer+i+1)==from){*(DWORD*)(buffer+i+1)=fp;bre原创 2005-12-11 14:36:00 · 1147 阅读 · 0 评论 -
在Win2000-XP上安静地替换正在使用的系统文件
在Win2000-XP上安静地替换正在使用的系统文件 总是索而不敷总有些过意不去.另外在安焦上灌了两年水竟然安焦文档还找不到一个我的名字. 灌不出篇精华帖子还回复不到别人灌的精华贴. 也算得上是个奇迹了. 要安静地替换正在使用的系统文件要解决两个问题: 1. 替换正在使用的文件. 2. 在替换系统文件时不显示插CD的对话框. 微软有两个工具可以替换正在使用的文件,zap和i原创 2005-12-11 14:37:00 · 1244 阅读 · 0 评论 -
总结windows下堆溢出的三种利用方式
1.利用RtlAllocHeap 这是ISNO提到的,看这个例子 main (int argc, char *argv[]) { char *buf1, *buf2; char s[] = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/x03/x00/x05/x00/x00/x01/x08/x00/x11/x11/x11/x11/x21/x21/x21/x21"; bu原创 2005-12-11 14:32:00 · 1321 阅读 · 0 评论 -
windows2000下简单的进程隐藏
windows2000下简单的进程隐藏大家一看到这个题目,一定会说,这个也太简单了,用CreateRemoteThread不就行了吗,不过我这里并不讨论使用CreateRemoteThread的方法来实现,因为那样根本不是真正的隐藏。最近看了篇PJF写的文章,他的方法的确很好,不用进入ring0,利用直接读写物理内存的方法修改系统进程双向链表,但是这种方法通用性不是很好,在XP下我试了试,我的朋友原创 2005-12-11 14:36:00 · 1556 阅读 · 0 评论 -
Hook 系统服务隐藏端口
有时候写程序,调试程序真是一件非常有趣的事,就比如这次,蹦蹦跳跳,笑嘻嘻,意犹未尽的就把这个程序搞好了。netstat 或者其他各种列举端口的工具,比如fport,或者 sysinternals 的 Tcpview,都是调用 Iphlpapi.dll 中的 API 来完成端口的列举。而 Iphlpapi.dll 中的 API 最终是使用 ZwDeviceIoControlFile ,向设备对象原创 2006-01-21 22:08:00 · 1012 阅读 · 0 评论 -
利用伪造内核文件来绕过IceSword的检测
创建时间:2005-12-20文章属性:转载文章提交:backspray (nimaozhi_at_163.com)作者:倪茂志邮件:backspray008@gmail.com完成于:2005.12.20文章分为八个部分: 一、为什么需要伪造内核 二、伪造内核文件 三、隐藏进程原创 2006-01-21 22:05:00 · 1122 阅读 · 0 评论 -
网络游戏同步之1
同步在网络游戏 中是非常重要的,它保证了每个玩家在屏幕上看到的东西大体是一样的。其实呢,解决同步问题的最简单的方法就是把每个玩家的动作都向其他玩家广播一遍,这里 其实就存在两个问题:1,向哪些玩家广播,广播哪些消息。2,如果网络延迟怎么办。事实上呢,第一个问题是个非常简单的问题,不过之所以我提出这个问题 来,是提醒大家在设计自己的消息结构的时候,需要把这个因素考虑进去。而对于第二个问题,则是一个挺原创 2006-02-09 01:39:00 · 888 阅读 · 0 评论 -
《visual C++ 6.0开发工具与调试》
《visual C++ 6.0开发工具与调试》1、 如何快速地规范代码缩进格式选中所需要规范的代码,按shift+F82、 如何在Release状态下进行调试Project->Setting=>ProjectSetting对话框,选择Release状态。C/C++标签中的Category选General,Optimizations选Disable原创 2006-02-08 13:05:00 · 914 阅读 · 0 评论 -
浏览器的定制与扩展
浏览器的定制与扩展作者:李汉鹏下载源代码 本文分如下章节: 前言 在MFC中使用浏览器 怎样扩展或定制浏览器 定制鼠标右键弹出出菜单 实现脚本扩展(很重要的external接口) C++代码中如何调用网页脚本中的函数 定制消息框的标题 怎样定制、修改浏览器向Web服务器发送的HTTP请求头转载 2006-03-19 01:04:00 · 1692 阅读 · 0 评论 -
Code Inject的新技术
inject的一般方法是:CreateRemoteThread;今天在Rootkit上看到一个新的方法,让我想起1年前我看到过的类似方法,大家一起看看这种方法吧:1) 1年前我所看到的方法 DWORD dwResult; HANDLE hThread; HANDLE hProcess; char szDllName[] = "c://MyDll.dll"; i原创 2007-06-21 13:59:00 · 1673 阅读 · 0 评论 -
绕过杀毒软件之一(实时监控篇)续
上次说的绕过杀毒软件之一(实时监控篇)中,提供了解决方法这是对应代码:(至于如何清理具体驱动的NotfiyRoutine,就是找到驱动所加载的地址,用PsLoadedModuleList或ZwQuerySystemInformation,然后判断PspLoadImageNotifyRoutine中的项是否落在此驱动范围,我在这就不罗嗦了,自己动手去)//FixNotify.h//Its for转载 2007-06-21 14:15:00 · 2126 阅读 · 0 评论 -
qemu虚拟开发板
虚拟开发板From armuxJump to: navigation, search<br />如果你想拥有一块开发板,而又不想花钱,那你就可以自己做一个虚拟开发板。 <br />虚拟开发板是用QEMU模拟出来的一块板子,实际上就是一个虚拟机。 Contents[hide]1调试模式1.1QEMU1.1.1下载QEMU1.1.2安装QEMU1.2bootloader1.2.1准备交叉编译工具1.2.2下载U-Boot1.2.3交叉编译U-Boot1.2.4调试U-Boot1.3Linux内核1.3.1下载L转载 2011-05-31 21:45:00 · 27721 阅读 · 2 评论 -
win2000下不用驱动进入ring0
#define _X86_ #include #include #include #include #include typedef long NTSTATUS; typedef unsigned short USHORT; #define NT_SUCCESS(Status) ((NTSTATUS)(Status) >= 0) #define OBJ_INHERIT 0x00000002原创 2005-12-11 14:33:00 · 901 阅读 · 0 评论 -
在NT系列操作系统里让自己“消失a在NT系列操作系统里让自己“消失”
=====[ 1. 内容 ]============================================ 1. 内容 2. 介绍 3. 文件 3.1 NtQueryDirectoryFile 3.2 NtVdmControl 4. 进程 5. 注册表 5.1 NtEnumerateKey 5.2 NtEnumerateValueKey 6. 系统服务和驱动 7. 挂钩和原创 2005-12-11 14:31:00 · 1027 阅读 · 0 评论 -
在2000和xp下,隐藏进程,VC6.0测试通过
头文件:////////////////////////////////////////HideProcess.hBOOL HideProcess(); CPP源文件:///////////////////////////////////////////////////////////////////////////////HideProcess.cpp#include#include#inclu原创 2005-06-29 20:32:00 · 877 阅读 · 0 评论 -
如何取得字符点阵数据(GetGlyphOutline函数简单应用)
近日做的程序需要取得字符点阵数据的功能,研究了一下,费了点周折才成功,现将方法总结如下。 取得字符点阵主要用GetGlyphOutline函数:DWORD GetGlyphOutline( UINT nChar, UINT nFormat, LPGLYPHMETRICS lpgm, DWORD cbBuffer, LPVOID lpBuffer, const MAT2 FAR* lpm原创 2005-06-29 20:40:00 · 1506 阅读 · 0 评论 -
写个自己的调试器
对于写了一段时间的程序员来说,了解一些debugger的实质无疑对于技术的提高是有很大帮助的。而debugging自身也是一门非常细节化,比较复杂的技术。好的Debug工具如SoftICE,也是技术稍深一些的程序员必备的技术之一。这篇随笔并不会去讨论Debug技术的实质,而只是利用Platform SDK和最新的DbgHelp.dll提供的API作为引擎写一个自己的debugger,也即是写一个实原创 2005-07-18 01:27:00 · 1723 阅读 · 0 评论 -
演示如何在物理内存中如何获得所须的BIOS信息
有时候VCKBASE常有人问到怎么去获一些细节系统信息。其实从BIOS中是可以获得大量系统的信息的。SMBios,即System Management BIOS以结构的方式保存了用于管理的系统信息。对于OS,BIOS的研究是须要先掌握大量相关知识的,不过方法也很重要。下面是我写的一个例子,在windows下(我用的XP)对物理内存进行访问,通过找到SMBIOS Structure Table En原创 2005-07-18 01:29:00 · 1452 阅读 · 0 评论 -
如何"借他人之手"实现可执行文件的自我删除
可执行文件即EXE文件在运行过程中,由系统管理其打开的句柄。此时对该文件的一些操作是被系统禁止的,比如删除操作。然而在某些场合,可能须要程序有自我删除的功能,也就是程序运行结束后删除自身。基于这个想法,可以有一种很简单的方法来实现这个基本功能。 本方法基于两点来实现删除功能。一是利用windows的command program的删除文件操作;再者就是启动新的进程来执行这个删除操作。下原创 2005-07-18 01:34:00 · 970 阅读 · 0 评论 -
赛门铁客防火墙D.o.s攻击代码
作者:houseofdabus 名称:HOD-symantec-firewall-DoS-expl.c: 版本:Version 0.1 coded by houseofdabus 翻译:luoluo 漏洞发现:www.eEye.com 漏洞描述:http://www.eeye.com/html/Research/Advisories/AD20040512B.html * -------------原创 2005-07-18 02:08:00 · 1356 阅读 · 0 评论 -
无钩子的键盘记录
//********************************************************************** // Version: V1.0 // Coder: WinEggDrop // Date Release: NULL // Purpose: Hookless Keylogger // Test PlatForm: Win 2K Pro And Ser原创 2005-07-18 02:09:00 · 1092 阅读 · 0 评论 -
获取句柄的详细信息:(原代码)
一、驱动部分extern "C"{#include }#include "ScSysInfo.h"extern "C"{#include "native.h"#include "../TestHandle/ob.h"}#if 1#define dprintf DbgPrint#else#define dprintf#endif#define kprintf DbgPrint#define NT_D原创 2005-05-31 02:05:00 · 4300 阅读 · 0 评论 -
Log4cpp 中的跨平台类库- -
Log4cpp 是 Log4J 的 C++ 移植版本,开放源代码并且完全免费。与 Log4J 能够跨平台一样,Log4cpp 也致力于写出跨平台的 C++ 程序。Log4cpp 主要是用于 C++ 程序中写 log 文件,与此同时,Log4cpp 中有很多有用的类库,对于写跨平台 C++ 程序的人来说,可以直接拿来用,或者作为自己写跨平台类的参考。Log4cpp 中的跨平台类库有明显的 Java原创 2005-06-05 18:11:00 · 999 阅读 · 0 评论 -
跨平台的gui库
http://www.wxwidgets.org/原创 2005-05-31 02:09:00 · 1153 阅读 · 0 评论 -
boost_1_32_0在vc2003下的编译
实际上很简单,三步搞定:1、进入vc2003命令行编译窗口,进入boost_1_32_0/tools/build/jam_src目录,打build,生成bjam,并COPY到boost_1_32/目录下面。2、假如要编译boost_python的话,设置python的目录3、在boost_1_32_0/目录下面打bjam然后就是漫长的waiting....原创 2005-05-31 02:07:00 · 1633 阅读 · 0 评论 -
用.NET开发MSN聊天机器人- -
我不是开发人员,不是高手,就是自己比较爱玩。在技术上,没有什么喜欢摸索的精神,而是喜欢投机取巧。在这篇文章里,你也不能"少劳而获"地通过我的机器人修改出一个自己的机器人,因为自己觉得程序写的比较臭,所以不会open source。但是,如果你对.net或者C#有点了解的话,相信从这篇文章里,你可以找到一切所需的资源,来开发一个自己的,绝对可用的msn机器人。要和我的机器人聊天,可以加tbot01@原创 2005-06-05 18:00:00 · 1188 阅读 · 0 评论 -
如何监测内存泄漏
版权申明 本文可以被自由转载,但是必须遵循如下版权约定: 1、保留本约定,并保留在文章的开头部分。 2、不能任意修改文章内容,或者删节,增加。如果认为本文内容有不当之处需要修改,请 与作者联系。 3、不能摘抄本文的内容,必须全文发表或者引用。 4、必须保留作者署名、注明文章出处。(本文授权给www.linuxaid.com.cn) 5、如不遵守本规定,则无权转载本文。 作者 ariesram 电子原创 2005-06-05 18:38:00 · 839 阅读 · 0 评论 -
检测并禁用隐藏服务
创建时间:2005-05-30文章属性:原创文章提交:linux2linux (linux2linux_at_163.com)隐藏服务的概念是由hxdef 和rootkit这些后门工具提出的。这些后门工具通过挂钩系统本地调用来隐藏自己,原本通过调用Windows API调用查看系统服务的企图都是徒劳的。所以这时的系统是不可靠的,不值得信任的。目前针对查找隐藏服务的工具已经有很多,比如IceSwor原创 2005-06-13 03:30:00 · 996 阅读 · 0 评论 -
Qemu中生成针对具体体系结构的纯净代码的方法---利用GCC的-E选项
<br />实验室正在研究一个叫做Qemu的项目,外国人写的初始代码。里面很多内容是我们不需要的,但是却参杂在我们关注的代码中。突然想到了一个编译命令-E ,它能够一下子就把那些不需要的代码过滤掉。<br /><br />以前几次开会大家都抱怨这个东西干扰信息太多,导致代码分析的连贯性总是被打断,进度特别慢。现在用我发现的那个命令处理下后,代码量只有原来的1/5,并且过滤了所有无关信息。--这个世界清净了。<br /> <br />gcc -E -C -DTARGET_I386 cpu-exec.c >ne转载 2011-05-31 21:55:00 · 1521 阅读 · 0 评论