上一页 1 2 3 4 5 6 7 8 9 ··· 21 下一页
对称加密体制,由用户指定自己的密钥key加密函数:M = P + key解密函数:P = M - key因此加密函数和解密函数互为逆函数只要将明文文件中的一个字节代入加密函数中进行运算,得到的结果即为一个字节的密文数据同理将密文文件中的一个字节代入解密函数中进行运算,得到的结果即为一个字节的明文数据#include #include int openSrcFile(char ** buffer) //读取文件{ FILE * myfile_src; char filename[20]; long file_size; printf("Please input the p... Read More
posted @ 2013-10-01 15:36 瓶哥 Views(1222) Comments(0) Diggs(0) Edit
void即“无类型”,void *则为“无类型指针”,可以指向任何数据类型。void指针使用规范①void指针可以指向任意类型的数据,亦即可用任意数据类型的指针对void指针赋值。例如:int* pint;void* pvoid;pvoid = pint;//不过不能 pint= pvoid; 如果要将pvoid赋给其他类型指针,则需要强制类型转换如:pint= (int *)pvoid;②在ANSIC标准中,不允许对void指针进行算术运算如pvoid++或pvoid+=1等,而在GNU中则允许,因为在缺省情况下,GNU认为void*与char *一样。sizeof(*pvoid)== si Read More
posted @ 2013-09-27 22:29 瓶哥 Views(308) Comments(0) Diggs(0) Edit
转载自:http://www.cnblogs.com/fanzhidongyzby/archive/2012/07/28/2613118.html说起网络编程,无非是建立连接,发送数据,接收数据,关闭连接。曾经学习网络编程的时候用Java写了一些小的聊天程序,Java对网络接口函数的封装还是很简单实用的,但是在Windows下网络编程使用的Socket就显得稍微有点繁琐。这里介绍一个自己封装的一个简单的基于Windows Socket的一个框架代码,主要目的是为了方便使用Windows Socket进行编程时的代码复用,闲话少说,上代码。熟悉Windows Socket的都知道进行Window Read More
posted @ 2013-09-27 22:05 瓶哥 Views(263) Comments(0) Diggs(0) Edit
转载自:http://www.cnblogs.com/fanzhidongyzby/archive/2012/08/30/2664287.html一、远程线程注入基本原理远程线程注入——相信对Windows底层编程和系统安全熟悉的人并不陌生,其主要核心在于一个Windows API函数CreateRemoteThread,通过它可以在另外一个进程中注入一个线程并执行。在提供便利的同时,正是因为如此,使得系统内部出现了安全隐患。常用的注入手段有两种:一种是远程的dll的注入,另一种是远程代码的注入。后者相对起来更加隐蔽,也更难被杀软检测。本文具体实现这两种操作,在介绍相关API使用的同时,也会解 Read More
posted @ 2013-09-27 21:55 瓶哥 Views(1650) Comments(0) Diggs(0) Edit
看到名字我就忍不住转过来了- -转载自:http://www.cnblogs.com/fanzhidongyzby/archive/2012/09/01/2667038.html之前的博客写了很多关于Windows编程的内容,在Windows环境下的黑客必须熟练掌握底层API编程。为了使读者对黑客常用的Windows API有个更全面的了解以及方便日后使用API方法的查询,特将这些常用的API按照7大分类进行整理如下,希望对大家的学习有所帮助。一、进程创建进程:CreateProcess("C:\\windows\\notepad.exe",0,0,0,0,0,0,0,&a Read More
posted @ 2013-09-27 21:43 瓶哥 Views(208) Comments(0) Diggs(0) Edit
DLL注入和远程线程注入类似,我们只需要将要执行的函数体放到dll文件中,然后获得kernel32.dll中的LoadLibraryA()和GetProcAddress()的地址,将这两个函数的地址作为参数传递给远程线程中,利用CreateRemoteThread开启远程线程,在远程线程中加载测试dll文件中即可。需要用到 远程线程注入(一)中的msg.dll,依然是拿QQ开刀- -上代码://远程DLL注入#include #include typedef struct _RemotePara{ char dwMessageBox[12]; DWORD pLoadlibr... Read More
posted @ 2013-09-27 20:54 瓶哥 Views(685) Comments(0) Diggs(0) Edit
文章本来是想转这位大大的:http://blog.csdn.net/gaoxin1076/article/details/8117151谁知道他的代码在我的Codeblocks上根本不能运行,改了好多处还是无解- -于是乎我参考了别人的代码做了一些修改,能够在Codeblocks上编译,能够注入一些非系统进程,例如QQ- -,但是像explorer.exe、services.exe之类的系统进程在启动远程线程时会失败,暂时还不知道为何。。先奉上代码://远程线程注入#include #include #include typedef struct _RemotePara{ char dw... Read More
posted @ 2013-09-27 20:29 瓶哥 Views(638) Comments(0) Diggs(0) Edit
转自:http://blog.csdn.net/gaoxin1076/article/details/8112767原文使用Codeblocks编译不通过,好几个类型不兼容而且DLL导出函数的参数类型在原型 和 实现中不一致:原型:__declspec(dllexport) DWORD ExportExample(LPSTR sMsg, DWORD dwCode);实现:DWORD ExportExample(LPWSTR szMsg, DWORD dwCode){……}虽然Codeblocks能编译通过,但是使用Depends查看DLL导出函数名时,会被C++编译器添加一些修饰,导致下面这句 Read More
posted @ 2013-09-27 14:23 瓶哥 Views(359) Comments(0) Diggs(0) Edit
加入了像素填充函数,必须要在一个指定颜色的边界范围内,边界必须没有缺口。加入了鼠标类/* typedef void (*FUNCTION)(void); HMODULE HDll; HDll = LoadLibrary("SDL_PingGe.dll"); if(HDll == NULL) { printf("Load library failed!\n"); FreeLibrary(HDll); return 0; } FUNCTION fun = FUNCTION(GetProcAddress(HDll,M... Read More
posted @ 2013-09-19 13:00 瓶哥 Views(262) Comments(0) Diggs(0) Edit
转载自:http://www.cppblog.com/suiaiguo/archive/2009/07/16/90211.html有一种被称为位域(bit-field) 的特殊的类数据成员,它可以被声明用来存放特定数目的位。位域必须是有序数据类型。它可以有符号也可以无符号。例如:class File {// unsigned int modified : 1; // 位域 (bit-field)};View Code 位域标识符后面跟有一个冒号,然后是一个常量表达式指定位数。例如modified 是一个只有一位构成的位域。 在类体中相邻定义的位域,如果可能的话,它们会被放在同一个整数的连续位中 Read More
posted @ 2013-09-11 22:42 瓶哥 Views(1019) Comments(0) Diggs(0) Edit
上一页 1 2 3 4 5 6 7 8 9 ··· 21 下一页