计算机病毒防火墙完整代码-VB+PowerBasic
blackfeather 2009/10/20 ℃ 7评论
blackfeather 2009/10/20 ℃ 7评论
平时在VB里使用TCP通信的时候都是用Winsock控件,但是什么时候都拖着一个大ocx不爽,又不是每台机子都有这个控件,所以用API来完成就是最理想的方法。看了一份文档,然后附赠了一份代码,这个代码很好,思路清晰,代码完整,看起来相当舒服明了,发出来。
...
blackfeather 2009/8/30 ℃ 4评论
数据传输的时候最怕信息泄露,或者传输数据量大的时候又要用到数据压缩,所以专门找了找压缩算法。由于VB效率太低,而且一些压缩算法没有VB能编译的。
后来突然发现了这个代码,太强了,强大的无语了。。。
21种加密54种压缩算法模块,我截个图:
...
blackfeather 2009/7/26 ℃ 3评论
好久好久以前写的,放在电脑里都快生锈了,所以贴出来晾晾。
程序是利用WINSOCK控件的网络编程,分两部分,服务端和客户端。客户端监听一个端口设置密码,服务端连接并验证,成功连接后可以执行CMD命令并返回回显(利用了一个建立PIPE管道的模块,我这里以前发过)。
服务端可以设置为自动连接,类似鸽子等反向连接的软件。比较适合新手学习使用WINSOCK控件的使用,比如多用户连接,密码验证等等
因为是我当初学习WINSOCK的时候写的,所以写的很乱,格式等等都极为不标准,大家看看用法就够了
...
blackfeather 2009/7/18 ℃ 0评论
代码已公开,传送门:http://www.fenlog.com/post/44.html
历时一个月,做了N套方案,最后终于有了雏形,可以拉出来见人了。采用ring3下的全局钩子,HOOK了几个API,sendmessage发送消息返回用户的选择。DLL与主程序之间通信采用的是建立文件映射的方法,DLL里新建一个线程循环读取值的方法,虽然不是实时而且费系统资源,但是这是想不到其他好办法的办法,折中选了一个循环时间,感觉还可以,至少在我这里感觉不到有什么影响。程序不太稳定,我发现WIN2K3下退出的时候会引起被HOOK的程序崩溃,在我这里的虚拟机里是这样,别人那里不知道,还有就是有时候explorer.exe有时候会报错,原因都未知。有空了好好调戏一下。所以开程序的时候要多注意一下。其实也没有说的这么玄乎,因为我们小组的几个牛人测试的时候都没有出问题。
...
blackfeather 2009/6/14 ℃ 2评论
取自病毒防火墙里的代码,获取到启动项后,需要根据路径获取到程序的版本信息,后来网上找了一些代码都不能用,经过自己努力终于解决了问题,也发现了API示例里的问题所在。
大致需要3个函数GetFileVersionInfoSize,GetFileVersionInfo,VerQueryValue
API的解释为:
-------------------------------------------------------GetFileVersionInfoSize
...
blackfeather 2009/6/13 ℃ 0评论
传说中搞病毒防火墙,其实就是ring3全局钩子+API hook,没什么新意,但是很有分量。比如实时监控,以前根本没有做过,光写逻辑图就画了一张纸。。。可能还有更简洁的方式通知DLL但是我不知道吧,反正用了文件内存映射。最大的收获就是对系统基层运行过程的了解,消息机制,爽死了,越写越精神,要不是眼睛疼还不卧倒呢!但愿能有一个好的结果。
忙了有段时间了,终于见到轮廓了,感觉不错。先上几张图!
...
blackfeather 2009/6/11 ℃ 0评论
最近在搞API HOOK的相关操作,收集了一个很牛的模块,不敢独享,发出来!
可能有人看出来了这个不是VB,呵呵确实,这个就是传说中的powerbasic
调用方式,先 #INCLUDE "HookApi.Inc" ,然后···发个例子吧
#COMPILE EXE
#DIM ALL
...
blackfeather 2009/2/3 ℃ 0评论
使用VB来加载驱动,不多解释了。用的是最简单,最原始的注册表加载的方法。
代码如下:
Option Explicit
Private Const STATUS_IMAGE_ALREADY_LOADED =
Private Const HKEY_CLASSES_ROOT =
...
blackfeather 2008/11/26 ℃ 1评论
现在杀毒软件对URLDOWNTOFILEA这个API查的是越来越严了,无论我怎么加密,动态调用等等就是被查出来。哎,我还不会很底层的东西,老老实实使用wininet的API写了一个下载的FUNCTION。感觉倒是很爽!
简单列一下遇到的主要问题:
1、InternetReadFile这个函数原型是
Declare Function InternetReadFile Lib "wininet.dll" (ByRef hFile As Long,ByVal sBuffer As String, ByVal dwNumberOfBytesToRead As Long, ByRef lpdwNumberOfBytesRead As Long)as integer
...
blackfeather 2008/11/25 ℃ 2评论