考拉 发表于 2004-4-8 23:07:00

求助:代码如何实现关闭135端口

135端口是Location Service
手动关闭是x:\windows\system32下的rpcss.dll中
用16为编辑软件将
31 00 33 00 35
改成
30 00 30 00 30


求代码!

游侠无极限 发表于 2004-4-9 11:14:00

相当于你自己做个十六进制编辑器……

考拉 发表于 2004-4-9 12:25:00

那有没有别的思路?

yzhlinux 发表于 2004-4-9 19:33:00

以下是引用游侠无极限在2004-4-9 11:14:56的发言:
相当于你自己做个十六进制编辑器……

当然不是,楼住的意思是要运行程序后,dll就自动被改变了,类似专杀工具一样。
难点不在修改她(字符操作而已),难点在改变成功改变系统文件上(window2000是自动检测的)。

hzzh 发表于 2004-4-10 11:13:00

以下是引用yzhlinux在2004-4-9 19:33:40的发言:
难点不在修改她(字符操作而已),难点在改变成功改变系统文件上(window2000是自动检测的)。

如果要修改受系统保护的文件,要考虑的地方就多了。可能rpcss.dll还不是受系统保护的文件。
我想楼主是想要一个搜索、修改二进制数据的代码吧?
基本代码:

char s1[]="\x31\x00\x33\x00\x35";
char s2[]="\x30\x00\x30\x00\x30";

fopen(rpcss.dll...)
fread( buff...)

char *p=memfind(buff,filesize,s1,sizeof(s1));
if(p) memcpy(p,s2,sizeof(s2));

fwrite(buff...)
fclose()
OK


//在buff中找sub数据
char * memfind(char *buff,int buffsize,char *sub,int subsize)
{
        char *p=buff;
        while(p<buff+buffsize)
        {
                if(*p++!=*sub) continue;
                if(!memcmp(--p,sub,subsize))
                        return p;
                p++;
        }
        return NULL;
}




[此贴子已经被作者于2004-4-10 11:40:12编辑过]

hays2002 发表于 2004-4-10 15:26:00

用system("输入命令")相当与dos下的命令啊~~不知道可不可以

考拉 发表于 2004-4-10 16:26:00

偶试试,先谢了
页: [1]
查看完整版本: 求助:代码如何实现关闭135端口