大家一定使用过 phpmyadmin 里面的数据库导入,导出功能,非常方便。但是在实际应用中,我发现如下几个问题:

  1 数据库超过一定尺寸,比如6M 这时使用导出一般没问题,可以正确的保存到本机硬盘上面,但是导入则不行!原因是:一般的 PHP.INI 里面设置临时文件/上传文件的大小限制为2M,而phpmyadmin使用了上传的方式,造成失败。

  2 导出到硬盘的 .SQL 文件在导回时,经常出现由于某些单引号的问题引起失败,造成导入失败,只能用 mysql等应用程序导入了。 我的数据库已经超过10M,所以必须解决这个问题。我的思路:

  导出: 用phpmyadmin 保存数据库/表格结构,用脚本读取数据库内容并保存到文件里面!
  导入: 用phpmyadmin 恢复数据库/表格结构,用脚本读取文件,然后保存到库里面!

  导出程序如下:调用方法为 ****.php?table=tablename
  这个简单的程序目前一次保存一个表格!!每行为一个字段的数据!!

以下为引用的内容:
< ?
if($table=="")exit();
mysql_connect("localhost","name","password");
mysql_select_db("database");
$result = mysql_query("select * from $table");
if(mysql_num_rows($result) < = 0) exit();
echo "开始转换数据到文本…
";
$handle = fopen("$table.txt","w");
$numfields = mysql_num_fields($result);
fputs($handle,$numfields."
");
for($k=0;$k< mysql_num_rows($result);$k++)
{
$msg = mysql_fetch_row($result);
for($i=0;$i< $numfields;$i++)
{
$msg[$i] = str_replace("
","&&php2000mysqlreturn&&",$msg[$i]);
$msg[$i] = str_replace("
" ,"&&php2000mysqlreturn&&",$msg[$i]);
fputs($handle,$msg[$i]."
");
}
fputs($handle,"——- php2000 dump data program V1.0 for MySQL ——–
");
}
fclose($handle);
echo "ok";
?>

  导入的程序如下:用法同上面!

以下为引用的内容:
< ?
if($table=="")exit();
mysql_connect("localhost","name","password");
mysql_select_db("database");
$message = file("$table.txt");
echo $numfields = chop($message[0]);
for($k=1;$k< count($message);$k+=($numfields+1))
{
$value="";
for ($i=$k;$i< ($k+$numfields-1);$i++)
{
$tmp = str_replace("&&php2000mysqlreturn&&","
",chop($message[$i]));
$value .= "‘".addslashes($tmp)."‘,";
}
$tmp = str_replace("&&php2000mysqlreturn&&","
",chop($message[$k+$numfields-1]));
$value .= "‘".$tmp."‘";
$query = "insert into $table values (".$value.")";
echo mysql_error();
mysql_query($query);
echo $k." ";
}
echo "ok";
?>

  使用方法和可能的问题!
  1 导入时 file()函数可能会有问题(我的10M的数据没出现问题),可以改为 fopen()然后没次读一行!!
  2 导入,导出都需要用 ftp 操作,也就是导出后,用 ftp 把数据转到本机,导入时先用ftp转移数据到服务器!

转自:http://www.weste.net/2006/7-14/16243358863.html

查询手机是正品还是水货,方法很简单,需要进行“手机IMEI号验证”和“标志验证”,方法如下:

登录电信设备进网管理网站,网址是 http://www.tenaa.com.cn/

第一步:手机IMEI号验证
地址:http://www.tenaa.com.cn/WSFW/FlagValidateImei.aspx

按照网页中的提示进行选择,在手机上按“*#06#”获得手机的IMEI码。

第二步:标志验证
鉴于手机IMEI号可以被伪造,此种验证方式仅供参考,如需准确查询请使用“标志验证”进行验证。
地址:http://www.tenaa.com.cn/WSFW/FlagValidate.aspx

两个验证都无误说明您的手机是正品。

其他验证方式:

短消息验证进网许可标志方式:

方法介绍:

1.进入手机写信息界面;

2.按以下格式输入信息:

1).查询进网许可证信息:RW#许可证编号;
2).查询进网许可证标志真伪:RW#许可证编号#扰码;
3).查询手机设备真伪:RW#许可证编号#扰码#手机串号;

说明:
A、“RW”为固定代码,可以不分大小写;
B、“#”为间隔符,可以用空格代替;
C、许可证编号为进网标志上第1行,如“02-0010-994631”,其中“-”可以用字母“A”(不分大小写)代替;
D、扰码为进网标志上第3行,如“3N48PT7C17XP3X1”;
E、在手机上输入“*#06#”可以获得手机串号。只需输入数字,不需输入“/”或“-”
F、若需获得帮助信息,只需输入“RW”;

输入完毕,发送至9500,即可等待回复结论。

适用范围:手机短信查验进网许可标志的适用范围:目前适用于中国移动的全部用户和中国联通的全部用户。

服务时间:24小时开通

收费标准:每条一元

如果你想把二进制的数据,比如说图片文件和HTML文件,直接保存在你的MySQL数据库,那么这篇文章就是为你而写的!我将告诉你怎样通过HTML表单来储存这些文件,怎样访问和使用这些文件。
  本文概述: 
  在mysql中建立一个新的数据库 
  一个怎样储存文件的例子程序 
  一个怎样访问文件的例子程序 
  在mysql中建立一个新的database
   首先,你必须在你的mysql中建立一个新的数据库,我们将会把那些二进制文件储存在这个数据库里。在例子中我会使用下列结构,为了建立数据库,你必须做下列步骤: 
  进入MySql控制器 
  输入命令"create database binary_data;" 
  输入命令"use binary_data;" 
  输入命令"CREATE TABLE binary_data ( id INT  (4) NOT NULL AUTO_INCREMENT PRIMARY KEY,
description CHAR(50), bin_data LONGBLOB, filename CHAR(50), filesize CHAR  (50), filetype CHAR(50));" (不能断行) 
  如果没有意外,数据库 和 表 应该建立好了。 
  一个怎样储存文件的例子程序 用这个例子你可以通过Html表单将文件传输到数据库中。.

store.php3

以下为引用的内容:

// store.php3 – by Florian Dittmer 
?>

// 如果提交了表单,代码将被执行:

if ($submit) {

     // 连接到数据库
     // (你可能需要调整主机名,用户名和密码)

    MYSQL_CONNECT( "localhost", "root", "password");
    mysql_select_db( "binary_data");

    $data = addslashes(fread(fopen($form_data,  "r"), filesize($form_data)));

    $result=MYSQL_QUERY( "INSERT INTO binary_data (description,bin_data,filename,filesize,filetype) ".
         "VALUES (’$form_description’,’$data’,’$form_data_name’,’$form_data_size’,’$form_data_type’)");

    $id= mysql_insert_id();
    print  "

This file has the following Database ID: $id";

    MYSQL_CLOSE();

} else {

     // 否则显示储存新数据的表单
?> 
}

?>

  如果你执行了这个程序,你将会看见一个简单的Html表单,单击“浏览”选择一个文件,然后单击提交。
  当文件上传至web服务器之后,程序将会告诉你刚刚上传的文件的ID,记住这个ID,待会要用的。
  一个怎样访问文件的例子程序
  你可以通过这个程序访问你刚才储存的文件

以下为引用的内容:

// getdata.php3 – by Florian Dittmer 
// 调用方法: getdata.php3?id=

if($id) {

     // 你可能需要调整主机名,用户名和密码:
    @MYSQL_CONNECT( "localhost", "root", "password");

    @mysql_select_db( "binary_data");

    $query =  "select bin_data,filetype from binary_data where id=$id";
    $result = @MYSQL_QUERY($query);

    $data = @MYSQL_RESULT($result,0, "bin_data");
    $type = @MYSQL_RESULT($result,0, "filetype");

    Header(  "Content-type: $type");
    echo $data;

};
?>

  程序必须知道要访问那个文件, 你必须将ID作为一个参数。
  例如: 一个文件在数据库中的ID为2. 你可以这样调用它:
                    getdata.php3?id=2如果你将图片储存在数据库里, 你可以向调用图片一样调用它。
  Example: 一个图片文件在数据库中的ID为3. 你可以这样调用它:
                    
  怎样储存大于1MB的文件:
  如果你想储存大于1MB的文件,你必须对你的程序、PHP设置、SQL设置进行许多修改,。
  下面几条也许可以帮助你储存小于24MB的文件:
  修改 store.php3 ,将 MAX_FILE_SIZE 的值改成 24000000。 
  修改你的PHP设置,在一般情况下,PHP只允许小于2MB的文件,你必须将max_filesize(在php.ini中)的值改成24000000

  去掉MYSQL的数据包大小限制,在一般情况下 MYSQL 小于1 MB的数据包. 
  你必须用以下参数重启你的MYSQL
  /usr/local/bin/safe_mysqld -O key_buffer=16M -O table_cache=128 -O sort_buffer=4M -O record_buffer=1M -O max_allowed_packet=24M 

    一、修改硬盘分区表信息

    硬盘分区表信息对硬盘的启动至关重要,如果找不到有效的分区表,将不能从硬盘启动或即使从软盘启动也找不到硬盘。 通常,第一个分区表项的第0子节为80H,表示C盘为活动DOS分区,硬盘能否自举就依靠它。

    若将该字节改为00H,则不能从硬盘启动,但从软盘启动后,硬盘仍然可以访问。分区表的第4字节是分区类型标志,第一分区的此处通常为06H,表示C盘为活动DOS分区,若对第一分区的此处进行修改可对硬盘起到一定加密作用。

    具体表现在:

    1.若将该字节改为0,则表示该分区未使用,当然不能再从C盘启动了。从软盘启动后,原来的C盘不见了,你看到的C盘是原来的D盘,D盘是原来的E盘,依此类推。

    2.若将此处字节改为05H,则不但不能从硬盘启动,即使从软盘启动,硬盘的每个逻辑盘都不可访问,这样等于整个硬盘被加密了。另外,硬盘主引导记录的有效标志是该扇区的最后两字节为55AAH。若将这两字节变为0,也可以实现对整个硬盘加锁而不能被访问。硬盘分区表在物理0柱面0磁头1扇区,可以用Norton for Win95中的Diskedit直接将该扇区调出并修改后存盘。或者在Debug下用INT 13H的02H子功能将0柱面0磁头1扇区读到内存,在相应位置进行修改,再用INT 13H的03H子功能写入0柱面0磁头1扇区就可以了。

    上面的加密处理,对一般用户来讲已足够了。但对有经验的用户,即使硬盘不可访问,也可以用INT 13H的02H子功能将0柱面0磁头1扇区读出,根据经验将相应位置数据进行修改,可以实现对硬盘解锁,因为这些位置的数据通常是固定的或有限的几种情形。

    另外一种保险但显得笨拙的方法是将硬盘的分区表项备份起来,然后将其全部变为0,这样别人由于不知道分区信息,就无法对硬盘解锁和访问硬盘了。

    二、对硬盘启动加口令

    我们知道,在CMOS中可以设置系统口令,使非法用户无法启动计算机,当然也就无法使用硬盘了。但这并未真正锁住硬盘,因为只要将硬盘挂在别的计算机上,硬盘上的数据和软件仍可使用。要对硬盘启动加口令,可以首先将硬盘0柱面0磁头1扇区的主引导记录和分区信息都储存在硬盘并不使用的隐含扇区,比如0柱面0磁头3扇区。

    然后用Debug重写一个不超过512字节的程序(实际上100多字节足矣)装载到硬盘0柱面0磁头1扇区。该程序的功能是执行它时首先需要输入口令,若口令不对则进入死循环;若口令正确则读取硬盘上存有主引导记录和分区信息的隐含扇区(0柱面0磁头3扇区),并转去执行主引导记录。

    由于硬盘启动时首先是BIOS调用自举程序INT 19H将主硬盘的0柱面0磁头1扇区的主引导记录读入内存0000:7C00H处执行,而我们已经偷梁换柱,将0柱面0磁头1扇区变为我们自己设计的程序。这样从硬盘启动时,首先执行的不是主引导程序,而是我们设计的程序。

    在执行我们设计的程序时,口令若不对则无法继续执行,也就无法启动了。即使从软盘启动,由于0柱面0磁头1扇区不再有分区信息,硬盘也不能被访问了。当然还可以将我们设计的程序像病毒一样,将其中一部分驻留在高端内存,监视INT 13H的使用,防止0柱面0磁头1扇区被改写。

    三、对硬盘实现用户加密管理

    UNIX操作系统可以实现多用户管理,在DOS系统下,将硬盘管理系统进行改进,也可实现类似功能的多用户管理。该管理系统可以满足这样一些要求:

    1.将硬盘分为公用分区C和若干专用分区D。其中“超级用户”来管理C区,可以对C区进行读写和更新系统;“特别用户”(如机房内部人员)通过口令使用自己的分区,以保护自己的文件和数据;“一般用户”(如到机房上机的普通人员)任意使用划定的公用分区。后两种用户都不能对C盘进行写操作,这样如果把操作系统和大量应用软件装在C盘,就能防止在公共机房中其他人有意或无意地对系统和软件的破坏,保证了系统的安全性和稳定性。

    2.在系统启动时,需要使用软盘钥匙盘才能启动系统,否则硬盘被锁住,不能被使用。 此方法的实现可通过利用硬盘分区表中各逻辑盘的分区链表结构,采用汇编编程来实现。

    四、对某个逻辑盘实现写保护

    我们知道,软盘上有写保护缺口,在对软盘进行写操作前,BIOS要检查软盘状态,如果写保护缺口被封住,则不能进行写操作。而写保护功能对硬盘而言,在硬件上无法进行,但可通过软件来实现。

    在DOS系统下,磁盘的写操作包括几种情况:

    ①在COMMAND.COM支持下的写操作,如MD、RD、COPY等;

    ②在DOS功能调用中的一些子功能如功能号为10H、13H、3EH、5BH等可以对硬盘进行写操作;

    ③通过INT 26H将逻辑扇区转换为绝对扇区进行写;

    ④通过INT 13H的子功能号03H、05H等对磁盘进行写操作。 但每一种写操作最后都要调用INT 13H的子功能去实现。

    因此,如果对INT 13H进行拦截,可以实现禁止对硬盘特定逻辑盘的写操作。由于磁盘上文件的写操作是通过INT 13H的03H子功能进行写,调用此子功能时,寄存器CL表示起始扇区号(实际上只用到低6位);CH表示磁道号,在硬盘即为柱面号,该柱面号用10位表示,其最高两位放在CL的最高两位。

    对硬盘进行分区时可以将硬盘分为多个逻辑驱动器,而每个逻辑驱动器都是从某一个完整的柱面开始。如笔者的硬盘为2.5GB,分为C、D、E、F、G五个盘。其中C盘起始柱面号为00H,D盘起始柱面号为66H,E盘起始柱面号为E5H,F盘起始柱面号为164H,G盘起始柱面号为26BH。如果对INT 13H进行拦截,当AH=03H,并且由CL高两位和CH共同表示的柱面号大于E4H并小于164H,就什么也不做就返回,这样就可以实现对E盘禁止写。

    SQL Server连接中的常见错误:

  一、"SQL Server 不存在或访问被拒绝"

  这个是最复杂的,错误发生的原因比较多,需要检查的方面也比较多。

  一般说来,有以下几种可能性:

  1、SQL Server名称或IP地址拼写有误

  2、服务器端网络配置有误

  3、客户端网络配置有误

  要解决这个问题,我们一般要遵循以下的步骤来一步步找出导致错误的原因。

  首先,检查网络物理连接

  ping <服务器IP地址/服务器名称>

  如果 ping <服务器IP地址> 不成功,说明物理连接有问题,这时候要检查硬件设备,如网卡,HUB,路由器等。

  还有一种可能是由于客户端和服务器之间安装有防火墙软件造成的,比如 ISA Server。防火墙软件可能会屏蔽对 ping,telnet 等的响应

  因此在检查连接问题的时候,我们要先把防火墙软件暂时关闭,或者打开所有被封闭的端口。

  如果ping <服务器IP地址> 成功而,ping <服务器名称> 失败

  则说明名字解析有问题,这时候要检查 DNS 服务是否正常。

  有时候客户端和服务器不在同一个局域网里面,这时候很可能无法直接使用服务器名称来标识该服务器,这时候我们可以使用HOSTS文件来进行名字解析,

  具体的方法是:

  1、使用记事本打开HOSTS文件(一般情况下位于C:WINNTsystem32driversetc)。

  添加一条IP地址与服务器名称的对应记录,如:

  172.168.10.24 myserver

  2、或在 SQL Server 的客户端网络实用工具里面进行配置,后面会有详细说明。

   其次,使用 telnet 命令检查SQL Server服务器工作状态

  telnet <服务器IP地址> 1433

  如果命令执行成功,可以看到屏幕一闪之后光标在左上角不停闪动,这说明 SQL Server 服务器工作正常,并且正在监听1433端口的 TCP/IP 连接

  如果命令返回"无法打开连接"的错误信息,则说明服务器端没有启动 SQL Server 服务,

  也可能服务器端没启用 TCP/IP 协议,或者服务器端没有在 SQL Server 默认的端口1433上监听。

  接着,我们要到服务器上检查服务器端的网络配置,检查是否启用了命名管道。是否启用了 TCP/IP 协议等等

  可以利用 SQL Server 自带的服务器网络使用工具来进行检查。

  点击:程序 — Microsoft SQL Server — 服务器网络使用工具

  打开该工具后,在"常规"中可以看到服务器启用了哪些协议。

  一般而言,我们启用命名管道以及 TCP/IP 协议。

  点中 TCP/IP 协议,选择"属性",我们可以来检查 SQK Server 服务默认端口的设置

  一般而言,我们使用 SQL Server 默认的1433端口。如果选中"隐藏服务器",则意味着客户端无法通过枚举服务器来看到这台服务器,起到了保护的作用,但不影响连接。

   接下来我们要到客户端检查客户端的网络配置

  我们同样可以利用 SQL Server 自带的客户端网络使用工具来进行检查,

  所不同的是这次是在客户端来运行这个工具。

  点击:程序 — Microsoft SQL Server — 客户端网络使用工具

打开该工具后,在"常规"项中,可以看到客户端启用了哪些协议。

  一般而言,我们同样需要启用命名管道以及 TCP/IP 协议。

  点击 TCP/IP 协议,选择"属性",可以检查客户端默认连接端口的设置,该端口必须与服务器一致。

  单击"别名"选项卡,还可以为服务器配置别名。服务器的别名是用来连接的名称,

  连接参数中的服务器是真正的服务器名称,两者可以相同或不同。别名的设置与使用HOSTS文件有相似之处。

  通过以上几个方面的检查,基本上可以排除第一种错误。  

    二、"无法连接到服务器,用户xxx登陆失败"

  该错误产生的原因是由于SQL Server使用了"仅 Windows"的身份验证方式,

  因此用户无法使用SQL Server的登录帐户(如 sa )进行连接。解决方法如下所示:

  1、在服务器端使用企业管理器,并且选择"使用 Windows 身份验证"连接上 SQL Server

  2、展开"SQL Server组",鼠标右键点击SQL Server服务器的名称,选择"属性",再选择"安全性"选项卡

  3、在"身份验证"下,选择"SQL Server和 Windows "。

  4、重新启动SQL Server服务。

  在以上解决方法中,如果在第 1 步中使用"使用 Windows 身份验证"连接 SQL Server 失败,

  那就通过修改注册表来解决此问题:

  1、点击"开始"-"运行",输入regedit,回车进入注册表编辑器

  2、依次展开注册表项,浏览到以下注册表键:

  [HKEY_LOCAL_MACHINESOFTWAREMicrosoftMSSQLServerMSSQLServer]

  3、在屏幕右方找到名称"LoginMode",双击编辑双字节值

  4、将原值从1改为2,点击"确定"

  5、关闭注册表编辑器

  6、重新启动SQL Server服务。

  此时,用户可以成功地使用sa在企业管理器中新建SQL Server注册,

  但是仍然无法使用Windows身份验证模式来连接SQL Server。

  这是因为在 SQL Server 中有两个缺省的登录帐户:

  BUILTINAdministrators

  <机器名>Administrator 被删除。

  要恢复这两个帐户,可以使用以下的方法:

  1、打开企业管理器,展开服务器组,然后展开服务器

  2、展开"安全性",右击"登录",然后单击"新建登录"

  3、在"名称"框中,输入 BUILTINAdministrators

  4、在"服务器角色"选项卡中,选择"System Administrators"

  5、点击"确定"退出

  6、使用同样方法添加 <机器名>Administrator 登录。

  说明:

  以下注册表键:
  HKEY_LOCAL_MACHINESOFTWAREMicrosoftMSSQLServerMSSQLServerLoginMode

  的值决定了SQL Server将采取何种身份验证模式。

  1、表示使用"Windows 身份验证"模式

  2、表示使用混合模式(Windows 身份验证和 SQL Server 身份验证)。

    三、提示连接超时

  如果遇到第三个错误,一般而言表示客户端已经找到了这台服务器,并且可以进行连接,

  不过是由于连接的时间大于允许的时间而导致出错。

  这种情况一般会发生在当用户在Internet上运行企业管理器来注册另外一台同样在Internet上的服务器,并且是慢速连接时,有可能会导致以上的超时错误。有些情况下,由于局域网的网络问题,也会导致这样的错误。

  要解决这样的错误,可以修改客户端的连接超时设置。

  默认情况下,通过企业管理器注册另外一台SQL Server的超时设置是 4 秒,而查询分析器是 15 秒(这也是为什么在企业管理器里发生错误的可能性比较大的原因)。

  具体步骤为:

  企业管理器中的设置:

  1、在企业管理器中,选择菜单上的"工具",再选择"选项"

  2、在弹出的"SQL Server企业管理器属性"窗口中,点击"高级"选项卡

  3、在"连接设置"下的"登录超时(秒)"右边的框中输入一个比较大的数字,如 20。

  查询分析器中的设置:

  工具 — 选项 — 连接 — 将登录超时设置为一个较大的数字

  连接超时改为0

  1、先保证ping通

  2、在dos下写入telnet ip 1433不会报错

  3、用ip连如企业管理器:

  企业管理器–>右键SQlserver组–>新建sqlserver注册–>下一步–>写入远程实例名 (IP,机器名)–>下一步–>选Sqlserver登陆–>下一步–>写入登陆名与密码(sa,pass)– >下一步–>下一步–>完成

  4、如果还不行:

  sqlserver服务器–>开始菜单–>SQLserver–>服务器网络实用工具–>启用 WinSock代理–>代理地址:(sqlserver服务器IP)–>代理端口–>1433–>OK了

  5、如果还不行:

  sqlserver客户端–>开始菜单–>SQLserver–>客户端网络实用工具–>别名–>添加–>写入别名如"大力"–>"网络库"选tcp/ip–>服务器名称写入远程ip或实例名–>OK了

1. www.365kit.com 自动更新的通讯录
从名字来看,像是365key的姊妹网站,多种方式备份通讯录到服务器,随时取回,通过多种方式查询和管理通讯录。朋友联系方式改变,通讯录会自动更新。能与 Outlook,/Foxmail/手机 中的通讯薄直接同步。

2. www.yupoo.com 个人照片发布、存储、共享平台,影集、个人相册、完全免费、无限容量。照片共享部分很像国外的 Flickr.。

3. www.allmoneygomyhome.com 在线家庭理财及购物指南
名字有点长,好像是源于一条著名的手机短信。提供免费的在线家庭账本,详细的收支统计帮助你制定更合适的家庭财务计划,同时可以共享其他用户的消费记录,比如看看你心仪的商品别人以什么样的价格成交等。

4. www.diglog.com 奇客发现 有趣新鲜
把有趣、新鲜、实用、好玩的资讯或者链接分享出来,并且采用digg机制进行筛选。用户可以提交发现日志,分享给大家,同时让更多的人访问您的网络日志。

5. www.dodoor.cn 读岛个性化主页
类似 live.com 和 Google ig 的个性化浏览器首页,提供RSS订阅、天气预报、收藏夹、音乐盒等功能,较之国外同类网站,预置内容更符合国人口味。遗憾的是,作为游览器首页,访问速度似乎有待提高。

6. www.lend.com.cn 借物网
这个网站提供物品租借中介服务,看起来还是蛮有用的,域名也相当不错。你需要先登录几样闲置不用的物品借他人借用,然后你就可以查询和借用别人的物品了。我觉得特别适合二手书刊、音像制品的交流。

7. www.123cha.com 全库网123查
IP地址查询、手机号码归属地、邮政编码、身份证号码验证、世界时间、万年历、域名查询等各式各样的查询。

8. www.dict.cn 在线翻译 英汉词典
由在美国印第安纳大学的中国留学生创建,提供英汉/汉英词典在线翻译,支持拼写纠正,变形识别,拼音查询,查词历史保存,不重复汉英词条331万,英汉词条169万。可以不装几百M的金山词霸了。

9. www.8684.cn 公交查询
"86"代表中国,"84"是bus的谐音,代表巴士,公交的意思。可以查询全国各城市公交线路,连地级市都可以查询到。

10. www.flydays.com 电视剧剧情搜索
这个网站功能很单一,但很实用,它们提供电视剧的剧情搜索,并对搜索结果提供RSS支持。我搜索了一下,似乎数据库还不够全,应该会慢慢丰富起来。

11. www.btlao.com 一个站非常不错的BT站

变态佬BT,名字非常好记忆,收集了超过6万个种子的站,很多人下载,下载速度极快。。。。。网站也比较干净整洁,虽然开张不久,但访问量一点也不打折扣。

  一个网络系统的安全程度,在很大程度上取决于管理者的素质,以及管理者所采取的安全措施的力度。在对系统进行配置的同时,要把安全性问题放在重要的位置。

  SCO UNIX,作为一个技术成熟的商用网络操作系统,广泛地应用在金融、保险、邮电等行业,其自身内建了丰富的网络功能,具有良好的稳定性和安全性。但是,如果用户没有对UNIX系统进行正确的设置,就会给入侵者以可乘之机。因此在网络安全管理上,不仅要采用必要的网络安全设备,如:防火墙等,还要在操作系统的层面上进行合理规划、配置,避免因管理上的漏洞而给应用系统造成风险。

  下面以SCO UNIX Openserver V5.0.5为例,对操作系统级的网络安全设置提几点看法,供大家参考。

  合理设置系统安全级别

  SCO UNIX提供了四个安全级别,分别是Low、Traditional、Improved和High级,系统缺省为Traditional级;Improved级达到美国国防部的C2级安全标准;High级则高于C2级。用户可以根据自己系统的重要性及客户数的多少,设置适合自己需要的系统安全级别,具体设置步骤是:scoadmin→system→security→security profile manager。

  合理设置用户

  建立用户时,一定要考虑该用户属于哪一组,不能随便选用系统缺省的group组。如果需要,可以新增一个用户组并确定同组成员,在该用户的主目录下,新建文件的存取权限是由该用户的配置文件.profile中的umask的值决定。umask的值取决于系统安全级, Tradition安全级的umask的值为022,它的权限类型如下:

  文件权限: – r w – r – – r – –

  目录权限: d r w x r – x r – x

  此外,还要限制用户不成功登录的次数,避免入侵者用猜测用户口令的方法尝试登录。为账户设置登录限制的步骤是:Scoadmin–〉Account Manager–〉选账户–〉User–〉Login Controls–〉添入新的不成功登录的次数。

  指定主控台及终端登录的限制

  如果你希望root用户只能在某一个终端(或虚屏)上登录,那么就要对主控台进行指定,例如:指定root用户只能在主机第一屏tty01上登录,这样可避免从网络远程攻击超级用户root。设置方法是在/etc/default/login文件增加一行:CONSOLE=/dev/tty01。

  注意:设置主控台时,在主机运行中设置后就生效,不需要重启主机。

  如果你的终端是通过Modem异步拨号或长线驱动器异步串口接入UNIX主机,你就要考虑设置某终端不成功登录的次数,超过该次数后,锁定此终端。设置方法为:scoadmin→Sysrem→Terminal Manager→Examine→选终端,再设置某终端不成功登录的次数。如果某终端被锁定后,可用ttyunlock〈终端号〉进行解锁。也可用ttylock〈终端号〉直接加锁。

  文件及目录的权限管理

  有时我们为了方便使用而将许多目录和文件权限设为777或666,但是这样却为黑客攻击提供了方便。因此,必须仔细分配应用程序、数据和相应目录的权限。发现目录和文件的权限不适当,应及时用chmod命令修正。

  口令保护的设置

  口令一般不要少于8个字符,口令的组成应以无规则的大小写字母、数字和符号相结合,绝对避免用英语单词或词组等设置口令,而且应该养成定期更换各用户口令的习惯。通过编辑/etc/default/passwd文件,可以强制设定最小口令长度、两次口令修改之间的最短、最长时间。另外,口令的保护还涉及到对/etc/passwd和/etc/shadow文件的保护,必须做到只有系统管理员才能访问这两个文件。

  合理设置等价主机

  设置等价主机可以方便用户操作,但要严防未经授权非法进入系统。所以必须要管理/etc/hosts.equiv、.rhosts和.netrc这3个文件。其中,/etc /hosts.equiv列出了允许执行rsh、rcp等远程命令的主机名字;.rhosts在用户目录内指定了远程用户的名字,其远程用户使用本地用户账户执行rcp、rlogin和rsh等命令时不必提供口令;.netrc提供了ftp和rexec命令所需的信息,可自动连接主机而不必提供口令,该文件也放在用户本地目录中。由于这3个文件的设置都允许一些命令不必提供口令便可访问主机,因此必须严格限制这3个文件的设置。在.rhosts中尽量不用“+ +”,因为它可以使任何主机的用户不必提供口令而直接执行rcp、rlogin和rsh等命令。

  合理配置/etc/inetd.conf文件

  UNIX系统启动时运行inetd进程,对大部分网络连接进行监听,并且根据不同的申请启动相应进程。其中ftp、telnet、rcmd、rlogin和finger等都由inetd来启动对应的服务进程。因此,从系统安全角度出发,我们应该合理地设置/etc/inetd.conf文件,将不必要的服务关闭。关闭的方法是在文件相应行首插入“#”字符,并执行下列命令以使配置后的命令立即生效。

  #ps-ef   grep inetd   grep -v grep

  #kill -HUP 〈 inetd-PID 〉

  合理设置/etc/ftpusers文件

  在/etc/ftpuser文件里列出了可用FTP协议进行文件传输的用户,为了防止不信任用户传输敏感文件,必须合理规划该文件。在对安全要求较高的系统中,不允许ftp访问root和UUCP,可将root和UUCP列入/etc/ftpusers中。

  合理设置网段及路由

  在主机中设置TCP/IP协议的IP地址时,应该合理设置子网掩码(netmask),把禁止访问的IP地址隔离开来。严格禁止设置缺省路由(即:default route)。建议为每一个子网或网段设置一个路由,否则其他机器就可能通过一定方式访问该主机。

  不设置UUCP

  UUCP为采用拨号用户实现网络连接提供了简单、经济的方案,但是同时也为黑客提供了入侵手段,所以必须避免利用这种模式进行网络互联。

  删除不用的软件包及协议

  在进行系统规划时,总的原则是将不需要的功能一律去掉。如通过scoadmin–〉Soft Manager去掉X Window;通过修改/etc/services文件去掉UUCP、SNMP、POP、POP2、POP3等协议。

  正确配置.profile文件

  .profile文件提供了用户登录程序和环境变量,为了防止一般用户采用中断的方法进入$符号状态,系统管理者必须屏蔽掉键盘中断功能。具体方法是在.porfile首部增加如下一行:

  trap ‘ ‘ 0 1 2 3 5 15

  创建匿名ftp

  如果你需要对外发布信息而又担心数据安全,你可以创建匿名ftp,允许任何用户使用匿名ftp,不需密码访问指定目录下的文件或子目录,不会对本机系统的安全构成威胁,因为它无法改变目录,也就无法获得本机内的其他信息。注意不要复制/etc/passwd、/etc/proup到匿名ftp的etc下,这样对安全具有潜在的威胁。

  应用用户和维护用户分开

  金融系统UNIX的用户都是最终用户,他们只需在具体的应用系统中完成某些固定的任务,一般情况下不需执行系统命令(shell),其应用程序由.profile调用,应用程序结束后就退到login状态。维护时又要用root级别的su命令进入应用用户,很不方便。可以通过修改.profile 文件,再创建一个相同id用户的方法解决。例:应用用户work有一个相同id相同主目录的用户worksh, 用户work的.profile文件最后为:

  set — `who am i`

  case $1 in

  work ) exec workmain;exit;;

  worksh ) break;;

  esac

  如果你一直利用Telnet控制网络设备,你可以考虑采用其他更安全的方式。本文告诉你如何用SSH替换Telnet。

  使用Telnet这个用来访问远程计算机的TCP/IP协议以控制你的网络设备相当于在离开某个建筑时大喊你的用户名和口令。很快地,会有人进行监听,并且他们会利用你安全意识的缺乏。

  SSH是替代Telnet和其他远程控制台管理应用程序的行业标准。SSH命令是加密的并以几种方式进行保密。

  在使用SSH的时候,一个数字证书将认证客户端(你的工作站)和服务器(你的网络设备)之间的连接,并加密受保护的口令。SSH1使用RSA加密密钥,SSH2使用数字签名算法(DSA)密钥保护连接和认证。

  加密算法包括Blowfish,数据加密标准(DES),以及三重DES(3DES)。SSH保护并且有助于防止欺骗,“中间人”攻击,以及数据包监听。

  实施SSH的第一步是验证你的设备支持SSH。请登录你的路由器或交换机,并确定你是否加载了一个支持SSH的IPSec IOS镜像。

  在我们的例子中,我们将使用Cisco IOS命令。运行下面的命令:

  Router> Show flash

  该命令显示已加载的IOS镜像名称。你可以用结果对比你的供应商的支持特性列表。

  在你验证了你的设备支持SSH之后,请确保设备拥有一个主机名和配置正确的主机域,就像下面的一样:

  Router> config terminal

  Router (config)# hostname hostname

  Router (config)# ip domain-name domainname

  在这个时候,你就可以启用路由器上的SSH服务器。要启用SSH服务器,你首先必须利用下面的命令产生一对RSA密钥:

  Router (config)# crypto key generate rsa

  在路由器上产生一对RSA密钥就会自动启用SSH。如果你删除这对RSA密钥,就会自动禁用该SSH服务器。

  实施SSH的最后一步是启用认证,授权和审计(AAA)。在你配置AAA的时候,请指定用户名和口令,会话超时时间,一个连接允许的尝试次数。像下面这样使用命令:

  Router (config)# aaa new-model

  Router (config)# username password

  Router (config)# ip ssh time-out

  Router (config)# ip ssh authentication-retries

  要验证你已经配置了SSH并且它正运行在你的路由器上,执行下面的命令:

  Router# show ip ssh

  在验证了配置之后,你就可以强制那些你在AAA配置过程中添加的用户使用SSH,而不是Telnet。你也可以在虚拟终端(vty)连接中应用SSH而实现同样的目的。这里给出一个例子:

  Router (config)# line vty 0 4

  Router (config-line)# transport input SSH

  在你关闭现存的Telnet会话之前,你需要一个SSH终端客户端程序以测试你的配置。我极力推荐PuTTY;它是免费的,而且它是一个优秀的终端软件。

  最后的想法

  当你在你的路由器和交换机上启用了SSH之后,保证你修改了所有现存的访问控制列表以允许对这些设备的连接。你现在可以向你的上级报告你已经堵上了一个巨大的安全漏洞:现在所有的网络管理会话都被加密并且被保护着。

  前言

  后门!相信这个词语对您来说一定不会陌生,它的危害不然而欲,但随着人们的安全意识逐步增强,又加上杀毒软件的"大力支持",使传统的后门无法在隐藏自己,任何稍微有点计算机知识的人,都知道"查端口""看进程",以便发现一些"蛛丝马迹"。所以,后门的编写者及时调整了思路,把目光放到了动态链接程序库上,也就是说,把后门做成DLL文件,然后由某一个EXE做为载体,或者使用Rundll32.exe来启动,这样就不会有进程,不开端口等特点,也就实现了进程、端口的隐藏。本文以"DLL的原理""DLL的清除""DLL的防范"为主题,并展开论述,旨在能让大家对DLL后门"快速上手",不在恐惧DLL后门。好了,进入我们的主题。

  一、DLL的原理

  1,动态链接程序库

  动态链接程序库,全称:Dynamic Link Library,简称:DLL,作用在于为应用程序提供扩展功能。应用程序想要调用DLL文件,需要跟其进行"动态链接";从编程的角度,应用程序需要知道DLL文件导出的API函数方可调用。由此可见,DLL文件本身并不可以运行,需要应用程序调用。正因为DLL文件运行时必须插入到应用程序的内存模块当中,这就说明了:DLL文件无法删除。这是由于Windows内部机制造成的:正在运行的程序不能关闭。所以,DLL后门由此而生!

  2,DLL后门原理及特点

  把一个实现了后门功能的代码写成一个DLL文件,然后插入到一个EXE文件当中,使其可以执行,这样就不需要占用进程,也就没有相对应的PID号,也就可以在任务管理器中隐藏。DLL文件本身和EXE文件相差不大,但必须使用程序(EXE)调用才能执行DLL文件。DLL文件的执行,需要EXE文件加载,但EXE想要加载DLL文件,需要知道一个DLL文件的入口函数(既DLL文件的导出函数),所以,根据DLL文件的编写标准:EXE必须执行DLL文件中的DLLMain()作为加载的条件(如同EXE的mian())。做DLL后门基本分为两种:1)把所有功能都在DLL文件中实现;2)把DLL做成一个启动文件,在需要的时候启动一个普通的EXE后门。

  常见的编写方法:

  (1),只有一个DLL文件

  这类后门很简单,只把自己做成一个DLL文件,在注册表Run键值或其他可以被系统自动加载的地方,使用Rundll32.exe来自动启动。Rundll32.exe是什么?顾名思意,"执行32位的DLL文件"。它的作用是执行DLL文件中的内部函数,这样在进程当中,只会有Rundll32.exe,而不会有DLL后门的进程,这样,就实现了进程上的隐藏。如果看到系统中有多个Rundll32.exe,不必惊慌,这证明用Rundll32.exe启动了多少个的DLL文件。当然,这些Rundll32.exe执行的DLL文件是什么,我们都可以从系统自动加载的地方找到。

  现在,我来介绍一下Rundll32.exe这个文件,意思上边已经说过,功能就是以命令行的方式调用动态链接程序库。系统中还有一个Rundll.exe文件,他的意思是"执行16位的DLL文件",这里要注意一下。在来看看Rundll32.exe使用的函数原型:

  其命令行下的使用方法为:Rundll32.exe DLLname,Functionname [Arguments]

  Void CALLBACK FunctionName (

  HWND hwnd,

  HINSTANCE hinst,

  LPTSTR lpCmdLine,

  Int nCmdShow

  );

  DLLname为需要执行的DLL文件名;Functionname为前边需要执行的DLL文件的具体引出函数;[Arguments]为引出函数的具体参数。

  (2),替换系统中的DLL文件

  这类后门就比上边的先进了一些,它把实现了后门功能的代码做成一个和系统匹配的DLL文件,并把原来的DLL文件改名。遇到应用程序请求原来的DLL文件时, DLL后门就启一个转发的作用,把"参数"传递给原来的DLL文件;如果遇到特殊的请求时(比如客户端),DLL后门就开始,启动并运行了。对于这类后门,把所有操作都在DLL文件中实现最为安全,但需要的编程知识也非常多,也非常不容易编写。所以,这类后门一般都是把DLL文件做成一个"启动"文件,在遇到特殊的情况下(比如客户端的请求),就启动一个普通的EXE后门;在客户端结束连接之后,把EXE后门停止,然后DLL文件进入"休息"状态,在下次客户端连接之前,都不会启动。但随着微软的"数字签名"和"文件恢复"的功能出台,这种后门已经逐步衰落。

  提示:

  在WINNTsystem32目录下,有一个dllcache文件夹,里边存放着众多DLL文件(也包括一些重要的EXE文件),在DLL文件被非法修改之后,系统就从这里来恢复被修改的DLL文件。如果要修改某个DLL文件,首先应该把dllcache目录下的同名DLL文件删除或更名,否则系统会自动恢复。

  (3),动态嵌入式

  这才是DLL后门最常用的方法。其意义是将DLL文件嵌入到正在运行的系统进程当中。在Windows系统中,每个进程都有自己的私有内存空间,但还是有种种方法来进入其进程的私有内存空间,来实现动态嵌入式。由于系统的关键进程是不能终止的,所以这类后门非常隐蔽,查杀也非常困难。常见的动态嵌入式有:"挂接API""全局钩子(HOOK)""远程线程"等。

  远程线程技术指的是通过在一个进程中创建远程线程的方法来进入那个进程的内存地址空间。当EXE载体(或Rundll32.exe)在那个被插入的进程里创建了远程线程,并命令它执行某个DLL文件时,我们的DLL后门就挂上去执行了,这里不会产生新的进程,要想让DLL后门停止,只有让这个链接DLL后门的进程终止。但如果和某些系统的关键进程链接,那就不能终止了,如果你终止了系统进程,那Windows也随即被终止!!!

  3,DLL后门的启动特性

  启动DLL后门的载体EXE是不可缺少的,也是非常重要的,它被称为:Loader。如果没有Loader,那我们的DLL后门如何启动呢?因此,一个好的DLL后门会尽力保护自己的Loader不被查杀。Loader的方式有很多,可以是为我们的DLL后门而专门编写的一个EXE文件;也可以是系统自带的Rundll32.exe,即使停止了Rundll32.exe,DLL后门的主体还是存在的。3721网络实名就是一个例子,虽然它并不是"真正"的后门。  二、DLL的清除

  本节以三款比较有名的DLL后门例,分别为"SvchostDLL.dll""BITS.dll""QoServer.dll"。详细讲解其手工清除方法。希望大家在看过这三款DLL后门的清除方法之后,能够举一反三,灵活运用,在不惧怕DLL后门。其实,手工清除DLL后门还是比较简单的,无非就是在注册表中做文章。具体怎么做,请看下文。

  1,PortLess BackDoor

  这是一款功能非常强大的DLL后门程序,除了可以获得Local System权限的Shell之外,还支持如"检测克隆帐户""安装终端服务"等一系列功能(具体可以参见程序帮助),适用Windows2000/xp/2003等系统。程序使用svchost.exe来启动,平常不开端口,可以进行反向连接(最大的特点哦),对于有防火墙的主机来说,这个功能在好不过了。

  在介绍清除方法之前,我们先来简单的介绍一下svchost.exe这个系统的关键服务:

  Svchost只是做为服务的宿主,本身并不实现什么功能,如果需要使用Svchost来启动服务,则某个服务是以DLL形式实现的,该DLL的载体Loader指向svchost,所以,在启动服务的时候由svchost调用该服务的DLL来实现启动的目的。使用svchost启动某个服务的DLL文件是由注册表中的参数来决定的,在需要启动服务的下边都有一个Parameters子键,其中的ServiceDll表明该服务由哪个DLL文件负责,并且这个DLL文件必须导出一个ServiceMain()函数,为处理服务任务提供支持。

  呵呵!看了上边的理论,是不是有点蒙(我都快睡着了),别着急,我们来看看具体的内容。HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesRpcSs下的Parameters子键,其键值为%SystemRoot%system32
pcss.dll。这就说明:启动RpcSs服务时。Svchost调用WINNTsystem32目录下的rpcss.dll。

  注册表的HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionSvchost,里边存放着Svchost启动的组和组内的各个服务,其中netsvcs组的服务最多。要使用Svchost启动某个服务,则该服务名就会出现在HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionSvchost下。这里有四种方法来实现:

  1, 添加一个新的组,在组里添加服务名

  2, 在现有组里添加服务名

  3, 直接使用现有组里的一个服务名,但是本机没有安装的服务

  4, 修改现有组里的现有服务,把它的ServiceDll指向自己的DLL后门

  我测试的PortLess BackDoor使用的第三种方法。

  好了,我想大家看完了上边的原理,一定可以想到我们清除PortLess BackDoor的方法了,对,就是在注册表的Svchost键下做文章。好,我们现在开始。

  注:由于本文只是介绍清除方法,使用方法在此略过。

  后门的Loader把SvchostDLL.dll插入Svchost进程当中,所以,我们先打开Windows优化大师中的Windows进程管理2.5,查看Svchost进程中的模块信息,SvchostDLL.dll已经插入到Svchost进程中了,在根据"直接使用现有组里的一个服务名,但是本机没有安装的服务"的提示,我们可以断定,在"管理工具"—"服务"中会有一项新的服务。此服务名称为:IPRIP,由Svchost启动,-k netsvcs表示此服务包含在netsvcs服务组中。

  我们把该服务停掉,然后打开注册表编辑器(开始—运行–regedit),来到HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesIPRIP下,查看其Parameters子键。Program键的键值SvcHostDLL.exe为后门的Loader;ServiceDll的键值C:WINNTsystem32svchostdll.dll为调用的DLL文件,这正是后门的DLL文件。现在我们删除IPRIP子键(或者用SC来删除),然后在来到HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionSvchost下,编辑netsvcs服务组,把49 00 70 00 72 00 69 00 70 00 00 00删除,这里对应的就是IPRIP的服务名,具体如图6所示。然后退出,重启。重启之后删除WINNTsystem32目录下的后门文件即可。

  2,BITS.dll

  这是榕哥的作品,也是DLL后门,和SvchostDLL.dll原理基本一样,不过这里使用的是上边介绍的第四种方法,即"修改现有组里的现有服务,把它的ServiceDll指向自己的DLL后门"。换句话说,该后门修改现有的某一个服务,把其原有服务的DLL指向自己(也就是BITS.dll),这样就达到了自动加载的目的;其次,该后门没有自己的Loader,而是使用系统自带的Rundll32.exe来加载。我们还是用Windows 进程管理2.5来查看,从图7中,我们可以看到bits.dll已经插入到Svchost进程当中。

  好,现在我们来看看具体的清除方法,由于该后门是修改现有服务,而我们并不知道具体是修改了哪个服务,所以,在注册表中搜索bits.dll,最后在HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesRasAuto下搜索到了bits.dll,查看Parameters子键下的ServiceDll,其键值为C:WINNTsystem32its.dll。原来,该后门把RasAuto服务原来的DLL文件替换为bits.dll了,这样来实现自动加载。知道了原因就好办了,现在我们把ServiceDll的键值修改为RasAuto服务原有的DLL文件,即%SystemRoot%System32
asauto.dll,退出,重启。之后删除WINNTsystem32目录下的bits.dll即可。

  3,NOIR–QUEEN

  NOIR–QUEEN(守护者)是一个DLL后门&木马程序,服务端以DLL文件的形式插入到系统的Lsass.exe进程里,由于Lsass.exe是系统的关键进程,所以不能终止。在来介绍清除方法之前,我先介绍一下Lsass.exe进程:

  这是一个本地的安全授权服务,并且它会为使用Winlogon服务的授权用户生成一个进程,如果授权是成功的,Lsass就会产生用户的进入令牌,令牌使用启动初始 的Shell。其他的由用户初始化的进程会继承这个令牌。

  从上边的介绍我们就可以看出Lsass对系统的重要性,那具体怎么清除呢?请看下文。

  后门在安装成功后,会在服务中添加一个名为QoSserver的服务,并把QoSserver.dll后门文件插入到Lsass进程当中,使其可以隐藏进程并自动启动。现在我们打开注册表,来到HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesQoSserver,直接删除QoSserver键,然后重启。重启之后,我们在来到服务列表中,会看到QoSserver服务还在,但没有启动,类别是自动,我们把他修改为"已禁用";然后往上看,会发现一个服务名为AppCPI的服务,其可执行程序指向QoSserver.exe(原因后边我会说到)。我们再次打开注册表,来到HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesAppCPI,删除AppCPI键,重启,再删除QoSserver,最后删除WINNTsystem32目录下的后门文件。

  本人和这个后门"搏斗"了3个多小时,重启N次。原因在于即使删除了QoSserver服务,后门还是在运行,而且服务列表中的QoSserver服务又"死灰复燃"。后来才知道原因:在我删除了QoSserver服务并重启之后,插入到Lsass进程当中的QoSserver.dll文件又恢复了QoSserver服务,并且生成了另外一个服务,即AppCPI,所以我们必须在到注册表中删除AppCPI服务才算是把该后门清除。由此可以看出,现在的后门的保护措施,真是一环扣环。

  注意:在删除QoSserver服务并重启之后,恢复的QoSserver的启动类别要修改为"已禁用",否则即便删除了AppCPI服务,QoSserver服务又运行了。  三、DLL的防范

  看了上边的例子,我想大家对清除DLL后门的方法有了一定的了解,但在现实中,DLL后门并不会使用默认的文件名,所以你也就不能肯定是否中了DLL后门。对于DLL后门,system32目录下是个好地方,大多数后门也是如此,所以这里要非常注意。下面我来具体介绍一下怎么发现DLL后门,希望对大家有所帮助。

  1,安装好系统和所有的应用程序之后,备份system32目录下的EXE和DLL文件:打开CMD,来到WINNTsystem32目录下,执行:dir *.exe>exe.txt & dir *.dll>dll.txt,这样,就会把所有的EXE和DLL文件备份到exe.txt和dll.txt文件中;日后,如发现异常,可以使用相同的命令再次备份EXE和DLL文件(这里我们假设是exe0.txt和dll0.txt),并使用:fc exe.txt exe0.txt>exedll.txt & fc dll.txt dll0.txt>exedll.txt,其意思为使用FC命令比较两次的EXE文件和DLL文件,并将比较结果保存到exedll.txt文件中。通过这种方法,我们就可以发现多出来的EXE和DLL文件,并通过文件大小,创建时间来判断是否是DLL后门。

  2,使用内存/模块工具来查看进程调用的DLL文件,比如Windows优化大师中的Windows 进程管理 2.5。这样,可以发现进程到底调用了什么DLL文件,在结合上边用FC命令比较出来的结果,又能进一步来确定是否中了DLL后门。如果没有优化大师,可以使用TaskList,这个小工具也可以显示进程调用的DLL文件,而且还有源代码,方便修改。

  3,普通后门连接需要打开特定的端口,DLL后门也不例外,不管它怎么隐藏,连接的时候都需要打开端口。我们可以用netstat -an来查看所有TCP/UDP端口的连接,以发现非法连接。大家平时要对自己打开的端口心中有数,并对netstat -an中的state属性有所了解。当然,也可以使用Fport来显示端口对应的进程,这样,系统有什么不明的连接和端口,都可以尽收眼底。

  4,定期检查系统自动加载的地方,比如:注册表,Winstart.bat,Autoexec.bat,win.ini,system.ini,wininit.ini,Autorun.inf,Config.sys等。其次是对服务进行管理,对系统默认的服务要有所了解,在发现有问题的服务时,可以使用Windows 2000 Server Resource Kit中的SC来删除。以上这些地方都可以用来加载DLL后门的Loader,如果我们把DLL后门Loader删除了,试问?DLL后门还怎么运行?!

  通过使用上边的方法,我想大多数DLL后门都可以"现形",如果我们平时多做一些备份,那对查找DLL后门会启到事半功倍的效果。

  现在不少人倾向于使用Server版的操作系统进行网络服务的架设。不可否认,和Pro版系统相比,Server版的系统的确给个人用户提供了更为强大的网络管理功能。但是,当你查看系统进程时,面对众多进程,你可知Server版操作系统在你的后台启动了哪些服务吗?这些服务安全吗?你是否真的需要这些服务呢?

  普通用户常用Windows 2000 Server来架设个人服务器,然而在系统运行时自动启动的服务中,有些是系统运行所必需的,有些是可以停用或禁用的。同时,很多服务还存在一些安全隐患,我们必须将这些危险服务关闭。看来,随随便便地享受“服务”也会给我们带来安全隐患。今天就让我们来了解一下个人服务器架设者们需要更改或慎用的十大服务。

  提示:系统为Windows 2000 Pro的用户同样可以通过本文了解自己的系统中的服务。由于该系统是针对家庭个人用户的,它所提供的网络方面的管理工具并不完善,所以,对于想架设个人服务器的普通用户来说,还是应该采用Windows 2000 Server。

  Messenger   

  危害种类:信息骚扰   

  危害系数:★★★   

  这是发送和接收系统管理员或“警报器”服务消息的服务。   

  自微软公司于90年代中期推出32位操作系统以来,该服务就一直是Windows操作系统中不可缺少的一部分。   

  现在,很多垃圾邮件发送者都利用这一功能向计算机用户发送垃圾信息,建议大家禁用该服务。

  Remote Registry Service   

  危害种类:恶意攻击   

  危害系数:★★★★   

  该服务允许远程用户通过简单的连接就能修改本地计算机上的注册表设置。   

  知道管理员账号和密码的人远程访问注册表是很容易的。打开注册表编辑器,选择“文件”菜单中的“连接网络注册表”选项,在“选择计算机”对话框里的“输入要选择的对象名称”下的输入框中输入对方的IP地址,点击“确定”按钮便会出现一个“输入网络密码”对话框,输入管理员账号和密码,点击“确定”按钮后就可对目标机器的注册表进行修改了。   

  现在,不少木马后门程序可以通过此服务来修改目标机器的注册表,强烈建议大家禁用该项服务。

  Workstation   

  危害种类:信息泄露   

  危害系数:★★★   

  该服务以一个文件系统驱动器的形式工作,并且可以允许用户访问位于Windows网络上的资源。该服务应当只在位于某个内部网络中并受到某个防火墙保护的工作站和服务器上运行。在任何可以连接到Internet的服务器上都应该禁用这个服务。需要提醒大家的是一些独立服务器(例如Web服务器)是不应当加入到某个Windows网络中的。

  ClipBook   

  危害种类:信息泄露   

  危害系数:★★★   

  这个服务允许任何已连接的网络中的其他用户查看本机的剪贴板。为了安全,强烈建议大家将该服务设置为手动。ClipBook所支持的ClipBook Viewer程序可以允许剪贴页被远程计算机上的ClipBook浏览,可以使用户能够通过网络连接来剪切和粘贴文本和图形。   

  Computer Browser   

  危害种类:信息泄露   

  危害系数:★★   

  这个服务可以将当前机器所使用网络上的计算机列表提供给那些请求得到该列表的程序(很有可能是恶意程序),很多黑客可以通过这个列表得知当前网络中所有在线计算机的标志并展开进一步的攻击。建议一般用户禁用该服务。

  Indexing Service

  危害种类:信息泄露   

  危害系数:★★★★★   

  Indexing Service是一个搜索引擎。这个索引服务应该算是多数IIS Web服务器上诸多安全弱点的根源。同时,它也是很多蠕虫病毒爆发的罪魁祸首,例如曾流行一时的红色代码就是利用IIS的缓冲区溢出漏洞和索引服务来进行传播的,而著名的蓝色代码和尼姆达则是分别利用IIS服务的IFRAMEExecCommand、Unicode漏洞来进行传播。   

  因此,如果你不需要架设Web服务器,请一定要关闭该项服务。   

  DNS Client   

  危害种类:信息泄露   

  危害系数:★★   

  该服务是用于查询DNS缓存记录的。可用于对某个已入侵的系统进行DNS查询,可加速DNS查询的速度。攻击者在取得用户的Shell后,可以通过ipconfig/displaydns命令查看用户的缓存内容,获知你所访问过的网站。

  Server   

  危害种类:信息泄露、恶意攻击   

  危害系数:★★★★★   

  该服务提供RPC支持以及文件、打印和命名管道共享。Server服务是作为文件系统驱动器来实现的,可以处理I/O请求。如果用户没有提供适当的保护,会暴露系统文件和打印机资源。   

  对于Windows 2000系统而言,这是一个高风险服务。Windows 2000中默认共享的存在就是该服务的问题。如果不禁用该服务,每次注销系统或开机后,默认共享就会打开,你的所有重要信息都将暴露出来。同时,由于很多Windows 2000使用者为了使用方便把管理员密码设置为空密码或非常简单的密码组合,这给了黑客可乘之机。   

  在此提醒大家,除非你打算在Windows网络上共享文件或打印机,否则就不要运行该服务。  

  TCP/IP NetBIOS Helper Service   

  危害种类:恶意攻击   

  危害系数:★★★★   

  在Windows构建的网络中,每一台主机的唯一标志信息是它的NetBIOS名。系统可以利用WINS服务、广播及Lmhost文件等多种模式将NetBIOS名解析为相应IP地址,从而实现信息通讯。在这样的网络内部,利用NetBIOS名实现信息通讯是非常方便、快捷的。但是在Internet上,它就和一个后门程序差不多了。它很有可能暴露出当前系统中的NetBIOS安全性弱点,例如大家所熟悉的139端口入侵就是利用了此服务。

  由于NetBIOS是基于局域网的,因此,只需要访问Internet资源的一般用户可以禁用它,除非你的系统处于局域网中。   

  Terminal Services   

  危害种类:恶意攻击   

  危害系数:★★★★★   

  该服务提供多会话环境,允许客户端设备访问虚拟的系统桌面会话以及运行在服务器上的基于Windows的程序并打开默认为3389的对外端口,允许外来IP的连接(著名的3389攻击所依靠的服务就是它)。对于这个非常危险的服务,只有“禁用”。   

  配置服务的方法:进入“服务”窗口,右键点击要配置的服务,然后点击“属性”。可根据需要在“常规”选项卡中,点击“自动”、“手动”或“已禁用”。   

  这么多有安全隐患的服务如果没有被广大的个人服务器爱好者所关注,那么黑客入侵简直是易如反掌,服务器被攻占只是迟早的事。笔者在此提醒大家,不要忽略一切看似微不足道的设置,其实合理运用Windows自身的安全机制,也能很好地提升服务器的安全系数。