博主资料

留言短消息 加为好友 收藏

用户ID:  10
昵称:  Walkman
来自:  北京 海淀

标题

free & share

日历

2008 - 11
      1
2345678
9101112131415
16171819202122
23242526272829
30      
«» 2008 - 11 «»

日志分类

最新评论

日志文章列表

2006年06月07日 17:28:46

hello

好久没上blog来了 有资料显示 中国人上网最爱聊天 美国人上网最爱查地图 法国人上网最爱写博克 我呢 都不怎么喜欢 连qq宠物也懒得手工养了 开始使用外挂了 已经13级了 快14了 好像到了18级就可以结婚了 吼吼

类别: 无分类 |  评论(1) |  浏览(8181) |  收藏
2006年04月18日 13:48:51

找回丢失的桌面图标透明效果

问:我使用的是Windows XP操作系统,因为使用了WinMatrix XP这个软件后,桌面图标的透明效果就没了。请问要怎样设置才能找回原本美丽的桌面?

  答:由于WinMatrix XP软件自动激活了你的动态桌面(Active Desktop),所以图标透明效果就没有了。在“运行”中输入“gpedit.msc”,打开组策略;在“用户配置→管理模板→桌面→Active Desktop”中,点活动桌面属性选定“未被配置”,点禁用活动桌面属性选定“已禁用”;最后打开控制面板,在经典视图中打开系统,在“性能→高级选项→性能→视觉效果”里选取“在桌面上为图标标签使用阴影”即可(默认情况下,最后一步可忽略)。

类别: 无分类 |  评论(1) |  浏览(8864) |  收藏
2006年04月18日 13:47:53

自动安装Windows XP

一、全自动安装软件──安装管理器Setupmgr.exe
  这个好东东位于Windows XP安装光盘的“\support\tools\deploy.cab”压缩包中,我们只需要进入“\support\tools”文件夹把“deploy.cab”中的文件解压出来即可。

  二、创建Windows XP自动应答文件
  双击刚才解压得到的文件“Setupmgr.exe”会出现一个名为“Windows 安装管理器向导”的窗口,单击下一步,并选择“创建新的应答文件→Windows无人参予安装→Windows XP Professional(请选择相应的版本)→全自动安装→否,这个应答文件将用来从CD安装(最好选此项)→我接受许可协议(必须接受)”,接下来才是“Windows 安装管理器”的正式界面(见图),在左边我们可以看到已经展开的三大项设置分别是“常规设置”、“网络设置”和“高级设置”,并且会要求你输入姓名、单位、产品密钥、计算机名、管理员密码等等信息,如果不输入上述信息,则无法继续下去。输入正确后再为目标计算机选择显示设置、时区设置、网络组件、工作组或域、区域设置和语言、浏览器和shell设置、安装文件夹位置等选项。当以上所有步骤完成后,会弹出一个对话框让你输入应答文件的保存位置和文件名(当然也可以默认为“unattend.txt”),点击确定后系统会自动生成应答文件和一个批处理文件“unattend.bat”。

  三、使用自动应答文件安装Windows XP
  我们只要在DOS下输入“Winnt /u: 自动应答文件”命令就可以高枕无忧,爱干啥干啥了,以后要再重新安装Windows XP时,只要用这个命令就行了。

类别: 无分类 |  评论(0) |  浏览(8607) |  收藏
2006年04月18日 13:45:46

自动关闭停止响应程序

在注册表中打开HKEY_CURRENT_USER\Control Panel\Desktop目录,把里面的AutoEndTasks键值改为1。
如果注册表中找不到AutoEndTasks键值,则可以自己建一个串值并把它改为这个名字,值设为1就可以了。

类别: 无分类 |  评论(0) |  浏览(8285) |  收藏
2006年04月18日 13:41:19

关闭小键盘上的NumLock

问:请问怎样解决启动Windows XP进入登录欢迎界面时,自动开启小键盘NumLock的问题。

  答:首先在BIOS中把NumLock项设为Enable,然后在BIOS中将PnP With OS项亦设为Enable即可。不过注销用户时NumLock小键盘锁是关闭的,要手工打开。

  打开注册表编辑器,找到HKEY_USERS\.DEFAULT\Control Panel\Keyboard,将它下面的InitialKeyboardIndicators的键值改为“2”,退出注册表编辑器,重新启动计算机,你就会发现数字小键盘的灯不再熄灭了。

  另外,仅需要对config.sys文件动点小手术即可达到此目的。设置方法如下:
  1.单击“开始”菜单中的“运行”命令,然后在“打开”框中键入“sysedit”,按下回车键,打开“系统配置编辑程序”窗口。
  2.单击“Config.sys”标题栏,将它切换为当前编辑窗口,然后在编辑区中键入“NumLock=ON”这一行命令。
  3.保存修改并关闭“系统配置编辑程序”窗口。

类别: 无分类 |  评论(1) |  浏览(8456) |  收藏
2006年04月18日 13:38:41

清除地址栏中的记录

问:我在打开某个文件后,地址栏里总是留下该文件的详细路径,当我在地址栏里输入这个文件的上级路径时,就会自动弹出下拉菜单,包括与此相关的各个最近访问过的文件路径,很是烦人。请问能不能将它们清除呢?

  答:在“运行”中输入regedit打开注册表编辑器,找到HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer,添加一个名为“ClearRecentDocsOnExit”(不包含引号)的十六进制键,值为“01,00,00,00”,重新启动以后即可。每次重新登录都会清理一次。

类别: 无分类 |  评论(0) |  浏览(8242) |  收藏
2006年04月18日 13:37:04

自动释放系统资源

自动释放系统资源  

  在Windows中每运行一个程序,系统资源就会减少。有的程序会消耗大量的系统资源,即使把程序关闭,在内存中还是有一些没用的DLL文件在运行,这样就使得系统的运行速度下降。不过我们可以通过修改注册表键值的方法,使关闭软件后自动清除内存中没用的DLL文件及时收回消耗的系统资源。打开注册表编辑器,找到“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer”主键,在右边窗口单击右键,新建一个名为“AlwaysUnloadDll”的“字符串值”,然后将“AlwaysUnloadDll”的键值修改为“1”,退出注册表重新启动机器即可达到目的。

类别: 无分类 |  评论(0) |  浏览(8236) |  收藏
2006年02月25日 22:41:26

DNS

http://turtle.ee.ncku.edu.tw/~tung/dns

类别: 无分类 |  评论(0) |  浏览(7344) |  收藏
2006年02月18日 21:18:49

Rundll.exe高级应用

首先,请你做个小实验(请事先保存好你正在执行的程式的结果)∶

  点击“开始-程式-Ms-Dos方式”,进入Dos视窗,然後键入“rundll32.exe user.exe,restartwindows”,再按下回车键,这时你将看到,机器被重启了!

  当然,Rundll的功能绝不仅仅是重启你的机器。其实,Rundll者,顾名思义,执行Dll也,它的功能就是以命令列的方式呼叫Windows的动态链结库,Rundll32.exe与Rundll.exe的区别就在于前者是呼叫32位的链结库,而后者是运用于16位的链结库,它们的命令格式是∶

  RUNDLL.EXE ,,

  这里要注意三点∶

1.Dll档案名中不能含有空格,比如该档案位於c:\Program Files目录,你要把这个路径改成c:\Progra~1;

  2.Dll档案名与Dll入口点间的逗号不能少,否则程式将出错并且不会给出任何资讯!

  3.这是最重要的一点∶Rundll不能用来呼叫含返回值参数的Dll,例如Win32API中的GetUserName(), GetTextFace()等。

  在Visual Basic中,提供了一条执行外部程式的指令Shell,格式为∶

  Shell “命令列”

  如果能配合Rundll32.exe用好Shell指令,会使您的VB程式拥有用其他方法难以甚至无法实现的效果∶仍以重启为例,传统的方法需要你在VB工程中先建立一个模组,然後写入WinAPI的声明,最後才能在程式中呼叫。而现在只需一句:

  Shell “rundll32.exe user.exe,restartwindows”就搞定了!

  实际上,Rundll32.exe在呼叫各种Windows控制面板和系统选项方面有著独特的优势。

  命令列: rundll32.exe shell32.dll,Control_RunDLL

  功能: 显示控制面板

  命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,1

  功能: 显示“控制面板-辅助选项-键盘”选项视窗

  命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,2

  功能: 显示“控制面板-辅助选项-声音”选项视窗

  命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,3

  功能: 显示“控制面板-辅助选项-显示”选项视窗

  命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,4

  功能: 显示“控制面板-辅助选项-滑鼠”选项视窗

  命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,5

  功能: 显示“控制面板-辅助选项-传统”选项视窗

  命令列: rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl @1

  功能: 执行“控制面板-添加新硬体”向导。

  命令列: rundll32.exe shell32.dll,SHHelpShortcuts_RunDLL AddPrinter

  功能: 执行“控制面板-添加新印表机”向导。

  命令列: rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,1

  功能: 显示 “控制面板-添加/删除程式-安装/卸载” 面板。

  命令列: rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,2

  功能: 显示 “控制面板-添加/删除程式-安装Windows” 面板。

  命令列: rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,3

  功能: 显示 “控制面板-添加/删除程式-启动盘” 面板。

  命令列: rundll32.exe syncui.dll,Briefcase_Create

  功能: 在桌面上建立一个新的“我的公文包”。

  命令列: rundll32.exe diskcopy.dll,DiskCopyRunDll

  功能: 显示复制软碟视窗

  命令列: rundll32.exe apwiz.cpl,NewLinkHere %1

  功能: 显示“建立快捷方式”的对话框,所建立的快捷方式的位置由%1参数决定。

  命令列: rundll32.exe shell32.dll,Control_RunDLL timedate.cpl,,0

  功能: 显示“日期与时间”选项视窗。

  命令列: rundll32.exe shell32.dll,Control_RunDLL timedate.cpl,,1

  功能: 显示“时区”选项视窗。

  命令列: rundll32.exe rnaui.dll,RnaDial [某个拨号连接的名称]

  功能: 显示某个拨号连接的拨号视窗。如果已经拨号连接,则显示目前的连接状态的视窗。

  命令列: rundll32.exe rnaui.dll,RnaWizard

  功能: 显示“新建拨号连接”向导的视窗。

  命令列: rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,0

  功能: 显示“显示属性-背景”选项视窗。

  命令列: rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,1

  功能: 显示“显示属性-萤屏保护”选项视窗。

  命令列: rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,2

  功能: 显示“显示属性-外观”选项视窗。

  命令列: rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,3

  功能: 显示显示“显示属性-属性”选项视窗。

  命令列: rundll32.exe shell32.dll,SHHelpShortcuts_RunDLL FontsFolder

  功能: 显示Windows的“字体”档案夹。

  命令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @3

  功能: 同样是显示Windows的“字体”档案夹。

  命令列: rundll32.exe shell32.dll,SHformatDrive

  功能: 显示格式化软碟对话框。

  命令列: rundll32.exe shell32.dll,Control_RunDLL joy.cpl,,0

  功能: 显示“控制面板-游戏控制器-一般”选项视窗。

  命令列: rundll32.exe shell32.dll,Control_RunDLL joy.cpl,,1

  功能: 显示“控制面板-游戏控制器-进阶”选项视窗。

  命令列: rundll32.exe mshtml.dll,PrintHTML (HTML文档)

  功能: 列印HTML文档。

  命令列: rundll32.exe shell32.dll,Control_RunDLL mlcfg32.cpl

  功能: 显示Microsoft Exchange一般选项视窗。

  命令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @0

  功能: 显示“控制面板-滑鼠” 选项 。

  命令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @1

  功能: 显示 “控制面板-键盘属性-速度”选项视窗。

  命令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @1,,1

  功能: 显示 “控制面板-键盘属性-语言”选项视窗。

  命令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @2

  功能: 显示Windows“印表机”档案夹。

  命令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @3

  功能: 显示Windows“字体”档案夹。

  命令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @4

  功能: 显示“控制面板-输入法属性-输入法”选项视窗。

  命令列: rundll32.exe shell32.dll,Control_RunDLL modem.cpl,,add

  功能: 执行“添加新调制解调器”向导。

  命令列: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,0

  功能: 显示“控制面板-多媒体属性-音频”属性页。

  命令列: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,1

  功能: 显示“控制面板-多媒体属性-视频”属性页。

  命令列: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,2

  功能: 显示“控制面板-多媒体属性-MIDI”属性页。

  命令列: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,3

  功能: 显示“控制面板-多媒体属性-CD音乐”属性页。

  命令列: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,4

  功能: 显示“控制面板-多媒体属性-设备”属性页。

  命令列: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl @1

  功能: 显示“控制面板-声音”选项视窗。

  命令列: rundll32.exe shell32.dll,Control_RunDLL netcpl.cpl

  功能: 显示“控制面板-网路”选项视窗。

  命令列: rundll32.exe shell32.dll,Control_RunDLL odbccp32.cpl

  功能: 显示ODBC32资料管理选项视窗。

  命令列: rundll32.exe shell32.dll,OpenAs_RunDLL

  功能: 显示指定档案(driveath ilename)的“打开方式”对话框。

  命令列: rundll32.exe shell32.dll,Control_RunDLL password.cpl

  功能: 显示“控制面板-密码”选项视窗。

  命令列: rundll32.exe shell32.dll,Control_RunDLL powercfg.cpl

  功能: 显示“控制面板-电源管理属性”选项视窗。

  命令列: rundll32.exe shell32.dll,SHHelpShortcuts_RunDLL

  PrintersFolder

  功能: 显示Windows“印表机”档案夹。(同rundll32.exe shell32.dll,Control_RunDLLmain.cpl @2)

  命令列: rundll32.exe shell32.dll,Control_RunDLL intl.cpl,,0

  功能: 显示“控制面板-区域设置属性-区域设置”选项视窗。

  命令列: rundll32.exe shell32.dll,Control_RunDLL intl.cpl,,1

  功能: 显示“控制面板-区域设置属性-数字”选项视窗。

  命令列: rundll32.exe shell32.dll,Control_RunDLL intl.cpl,,2

  功能: 显示“控制面板-区域设置属性-货币”选项视窗。

  命令列: rundll32.exe shell32.dll,Control_RunDLL intl.cpl,,3

  功能: 显示“控制面板-区域设置属性-时间”选项视窗。

  命令列: rundll32.exe shell32.dll,Control_RunDLL intl.cpl,,4

  功能: 显示“控制面板-区域设置属性-日期”选项视窗。

  命令列: rundll32.exe desk.cpl,InstallScreenSaver [萤屏保护档案名]

  功能: 将指定的萤屏保护档案设置为Windows的屏保,并显示萤屏保护属性视窗。

  命令列: rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,0

  功能: 显示“控制面板-系统属性-传统”属性视窗。

  命令列: rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,1

  功能: 显示“控制面板-系统属性-设备管理器”属性视窗。

  命令列: rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,2

  功能: 显示“控制面板-系统属性-硬体配置档案”属性视窗。

  命令列: rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,3

  功能: 显示“控制面板-系统属性-性能”属性视窗。

  命令列: rundll32.exe user.exe,restartwindows

  功能: 强行关闭所有程式并重启机器。

  命令列: rundll32.exe user.exe,exitwindows

  功能: 强行关闭所有程式并关机。

  命令列: rundll32.exe shell32.dll,Control_RunDLL telephon.cpl

  功能: 显示“拨号属性”选项视窗

  命令列: rundll32.exe shell32.dll,Control_RunDLL themes.cpl

  功能: 显示“桌面主旨”选项面板

  当然,不止是VisualBasic,象Delphi.VisualC++等其他程式设计语言也可以通过呼叫外部命令的方法来使用Rundll的这些功能,具体方法这里就不再详细叙述了。灵活的使用Rundll,一定会使你的程式设计轻轻松松,达到事半功倍的效果!

  <关机快捷方式

  (1). 在桌面空白位置按鼠标右键 - <新建 - 选<快捷方式

  (2). 在<指令行键入 rundll.exe user.exe,exitwindows

  (3). 在<选择快捷方式 的名称键入<关闭Window或你想要的名称 - 按<完成

  <重新启动快捷方式

  (1). 重复以上 (1)

  (2). 在<指令行键入 rundll.exe user.exe,restartwindowsexec

  (3). 在<选择快捷方式的名称键入<重新启动Restart或你想要的名称 - 按<完成 RUN - cmd 或者command

类别: 无分类 |  评论(0) |  浏览(8332) |  收藏
2006年02月17日 18:11:29

linux security tips

linux security tips



linux rpm tips

rpm -ivh xxx.i386.rpm (install)

rpm -e xxx (uninstall)

rpm -Uvh xxx.i386.rpm (update)

rpm -q xxx (query)

rpm -qi (query infomation)

rpm -ql (query & list file)

rpm --checksig xxx (check the 签名)

rpm -ivh --rebuild xxx.src.rpm (安装以原代码发布的rpm包)



安装完linux 需要卸载的软件包(无法选择不安装)

rpm -e softname

[pump/apmd/lsapnptools/redhat-logos/mt-st/kernel-pcmcia-cs/Setserial/redhat-release/

eject/kudzu/gd/raidtools/pciutils/mailcap/setconsols/gnupg]

(某些视情况而定)



linux配置相关文件

/etc/conf.linuxconf-installed



procmail用于本地邮件分发,因此,procmail只要装在中央邮件集中服务器上.



终端使用颜色

vi /etc/profile

add:

#enable colour is

eval 'dircolors /etc/DIR_COLORS -b'

export LS_OPTIONS='-s -F -T 0 --color=yes'

:wq!

vi /etc/bashrc

add:

alias ls='ls --color=auto'

:wq!

# source /etc/profile /etc/bashrc



redhat:http://www.redhat.com/corp/support/errata/index.html





passwd 规则

强制口令长度:

vi /etc/login.defs

PASS_MIN_LEN 5 -> PASS_MIN_LEN 8

日期

PASS_MAX_DAYS   99999

PASS_MIN_DAYS   0







配置NFS共享:

编辑/etc/exports

/home/jane topgun(ro,root_squash)

ro 表示只读

root_squash 表示不允许对根目录进行写操作

/usr/sbin/exportfs -a

个人建议不使用nfs





禁止控制台访问

#!/bin/sh

cd /etc/pam.d

for i in *;

do

sed '/[^#].*pam_console.so/s/^/#/' <$i> foo && mv foo $i

done



配置inetd

建议先禁止所有服务

然后保证inetd.conf不可改变

chattr +i /etc/inetd.conf



配置简单的访问规则

先编辑

/etc/hosts.deny

加入:ALL:ALL@ALL 禁止所有访问 (可以加上PARANOID参数,进行域名解析)

再编辑 /etc/hosts.allow

加上允许远程登陆的ip

daemon:ip or hostname

然后运行 tcpdchk 命令来配置TCP_WAPPERS。





编辑/etc/aliases

注释decode

运行 /usr/bin/newaliases 使配置生效



sendmail 配置



编辑 /etc/sendmail.cf 使之无法用expn,vrfy来刺探系统用户名



O PrivacyOptions=autwarnings

改为

O PrivacyOptions=authwarnings,noexpn,novrfy (或者改为 O PrivacyOptions=goaway 同样效果)

编辑 /etc/sendmail.cf 修改回显banner

O SmtpGreetingMessage=$j Sendmail $v/$Z; $b NO UCE C=CN L=SZ

O SmtpGreetingMessage=mail sever; $b NO UCE C=CN L=SZ





使ping无响应

添加 "echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all"到/etc/rc.d/rc.local

1表示关闭ping echo

0表示启用ping echo



不显示系统登陆提示信息

telnet stream tcp   nowait root   /usr/sbin/tcpd in.telnetd -h

加个-h





禁止ip原路由

for i in /proc/sys/net/ipv4/conf/*/accept_source_route;do

echo 0 >$i

done

此脚本将禁止所有interface的原路由包



syn cookie

防止syn flood

echo 1 > /proc/sys/net/ipv4/tcp_syncookie



/etc/services file

chattr +i /etc/services



/etc/securetty file

comment out the tty2-tty8 only allow root login from tty1



/etc/passwd;/etc/shadow;/etc/group;/etc/gshadow file

chattr +i this file



防止任何人都su成root

编辑/etc/pam.d/su 文件

[root@Linux jane]# cat /etc/pam.d/su

#%PAM-1.0

#auth   sufficient     /lib/security/pam_rootok.so debug

#auth   required     /lib/security/pam_wheel.so group=wheel

auth     required   /lib/security/pam_pwdb.so shadow nullok

account   required   /lib/security/pam_pwdb.so

password   required   /lib/security/pam_cracklib.so

password   required   /lib/security/pam_pwdb.so shadow use_authtok nullok

session   required   /lib/security/pam_pwdb.so

session   optional   /lib/security/pam_xauth.so

[root@Linux jane]#

去掉 第一第二行的注释(#),此时只有wheel组用户可以su root,再编辑/etc/group文件,控制wheel组用户。



资源限制

1.编辑/etc/security/limits.conf

加入

* hard core 0 #禁止创建core文件

* hard rss 5000 #除了root外,其他用户最多有5m内存

* hard nproc 20 #最多进程数限制在20

*号表示所有登陆系统的用户

2.编辑/etc/pam.d/login

加入

session required /lib/security/pam_limits.so







控制mount的文件系统

编辑/etc/fstab

[root@Linux jane]# cat /etc/fstab

/dev/hda2           /               ext2   defaults     1 1

/dev/hda1           /mnt/C             vfat   defaults     1 0

/dev/hda6           /home             ext2   nosuid,nodev     1 2

/dev/cdrom         /mnt/cdrom         iso9660 noauto,owner,ro 0 0

/dev/hda5           /usr/local         ext2   defaults     1 2

/dev/fd0           /mnt/floppy         auto   noauto,owner   0 0

none             /proc             proc   defaults     0 0

none             /dev/pts           devpts gid=5,mode=620 0 0

/dev/hda7           swap             swap   defaults     0 0

[root@Linux jane]#

/dev/hda6           /home             ext2   nosuid,nodev     1 2

表示/home目录不允许存在设备块文件(nodev).不允许设定文件的suid,sgid许可位(nosuid)

如果加上noexec

/dev/hda6           /home             ext2   nosuid,nodev,noexec     1 2

则表示此文件系统上不允许有任何可执行二进制文件





配置安全的lilo.conf:

设置timeout=00

设置single模式密码

restricted

password=xxxxxx

注意给每个kernel都应配置密码

chattr +i /etc/lilo.conf



使ctrl+alt+del关机无效

编辑/etc/inittab

注释掉

ca::ctrlaltdel:/sbin/shutdown -t3 -r now -> #ca::ctrlaltdel:/sbin/shutdown -t3 -r now

# /sbin/init q





日志文件的完整性创建

如果你的服务器配置有打印机

那么按照如下配置,实时打印出系统日志,以保证被入侵后可以追踪入侵者

修改/etc/syslog.conf文件

加入

authpriv.*;mail.*;local7.*;auth.*;daemon.info /dev/lp0

(假设/dev/lp0是你的打印设备)

重新启动syslogd,使配置生效

# /etc/rc.d/init.d/syslog restart

如果服务器没有配置打印机,那么可以连接到本地网络其他的打印服务器上去打印出日志

比如打印服务器为 print_server,

那么配置print_server上的syslog.conf

加上 authpriv.*;mail.*;local7.*;auth.*;daemon.info /dev/lp0

在编辑syslogd的启动脚本

把/etc/rc.d/init.d/syslog 中的

daemon syslogd -m 0

改为

daemon syslogd -r -m 0

使syslogd接受网络上的信息

重新启动syslogd

# /etc/rc.d/init.d/syslog restart

再编辑你的本地服务器上的syslogd

authpriv.*;mail.*;local7.*;auth.*;daemon.info @print_server

重新启动syslogd

# /etc/rc.d/init.d/syslog restart

此时,本地的日志将会在print_server上打印出



带"s"位的程序

查找所有带s位的程序

find / -type f \( -perm -04000 -o -perm -02000 \) -print

find /home/httpd -type f -perm -4000 -exec chmod 744 {} \; -print

查找特殊文件名字

find / -name ".. " -print -xdev

find / -name ".*" -print -xdev | cat -v

查找任何人都有写权限的文件和目录

find / -type f \( -perm -2 -o -perm -20 \) -print

find / -type f \( -perm -2 -o -perm -20 \) -user root -group root -print

find / -type d \( -perm -2 -o -perm -20 \) -print

查找没有主人的文件

find / -nouser -o -nogroup (不用在乎/dev下面的文件)

查找.rhosts文件

find / -name .rhosts -print





linux系统优化

编译优化

pentium系列

编辑/etc/profile 加入

GFLAGS='-O9 -funroll -loops -ffast-math -malign-double -mcpu=pentiumpro -march=pentiumpro -fomit -frame-pointer -fno-exceptions'



bdflush参数

/proc/sys/vm 下系统控制文件(在kernel 2.2下有效)

echo "100 1200 128 512 15 5000 500 1884 2" >/proc/sys/vm/bdflush



lp_local_port_range参数

lp_local_port_range文件中2个参数定义了用做tcp&udp本地端口的端口范围,第一个参数是端口号,第二个参数是最后一个本地端口好。效率高的系统可以改为 32768到61000

echo "32768 61000" >/proc/sys/net/ipv4/lp_local_port_range



去掉最大用户最大线程数的限制

ulimit -u unlimited

ulimit -a 显示



增加系统打开的文件数目(早于2.2的kernel无效)

ulimit -n 90000



调整ide硬盘性能

使pci总线允许32位I/O操作

/sbin/hdparm -c 1 /dev/hda

允许DMA方式

/sbin/hdparm -d 1 /dev/hda



/etc/nsswitch.conf文件

此文件定义了系统使用哪些设备来解析主机名,获得口令文件和组文件(NIS服务).

编辑/etc/nsswitch.conf

把host一行改为

hosts: dns files

此时,当请求解析地址时,首先访问DNS服务器,如果DNS没响应,则使用/etc/hosts文件

如果你的系统不使用NIS,那么可以删除此文件中每一行的NIS



/proc文件系统

/proc/sys/fs 下的系统控制文件.只在kernel 2.2下有效

该目录下的文件可以用了调整和监测kernel的一些行为.

/proc/sys/fs/file-max 参数是指kernel可以分配的文件句柄的最大数目.缺省值为 :4096

/proc/sys/fs/inode-max参数是指系统i节点句柄的最大数目.其值是file-max的3-4倍.

1.增加 /proc/sys/fs/file-max的值:4M内存对应为256.128M对应为8192

2.增加 /proc/sys/fs/inode-max的值.可以使其打开文件数的3-4倍(8192*4=32768)

假如系统是128M内存,那么可以如此修改:

echo "8192" >/proc/sys/fs/file-max

echo "32768" >/proc/sys/fs/inode-max

对于内存非常多的系统(大于512M),打开的文件数和i节点数最好不要超过50000和150000.



fstab

/dev/sda7 /chroot ext2 defaults,noatime 1 2

noatime属性,使得系统不再更新atime信息





内核参数

1.升级编译内核(假设原来的内核版本为2.2.12-20)

a)创建紧急启动盘

# mkbootdisk --device /dev/fd0 2.2.12-20(内核映像版本)

b)如果您以前装过rpm版本的内核,请先删除安装的rpm内核包

rpm -qa | grep kernel

rpm -e --nodeps kernel-headers kernel

rm -rf /usr/src/linux-2.2.12

rm -rf /lib/modules/2.2.12-20



tips:

编辑/usr/src/linux/include/linux/tasks.h中如下内容

NR_TASKS from 512 to 3072

MIN_TASKS_LEFT_FOR_ROOT from 4 to 24

增加任务数

注:

NR_TASKS 指定内核将分配给每个用户最大数量的任务;增加这个数目将允许系统服务器进程出来更多的连接请求.

MIN_TASKS_LEFT_FOR_ROOT 是linux特别设计避免所有的进程槽被普通用户所占用.至少保留MIN_TASKS_LEFT_FOR_ROOT个进程时间槽给root



c)编译内核

安装安全内核补丁(下载:http://www.openwall.com/linux)

功能:

1.不可执行的用户堆栈区

2.限制/tmp目录下链接

3.限制/tmp目录下的FIFO

4.受限制的/proc目录

5.特殊文件句柄0.1和2

6.在execve(2)中对RLIMIT_NPROC进行了加强

7.将不使用的共享内存段释放归还给系统



# patch -p0 < linux-2.2.14-ow1.diff



linux 网络配置

安装多块网卡

isa的3c509卡,一块io是0x300,一块是0x320

编辑/etc/conf.modules

alias eth0 3c590

alias eth1 3c590

options 3c509 io=0x300,0x320

PCI的3c509卡

编辑/etc/conf.modules

alias eth0 3c590

alias eth1 3c590

某些情况下.isa卡需要配置lilo.conf

由lilo来传递配置参数给kernel

append="ether="0,0,eth1



linux下网络设备配置文件在

/etc/sysconfig/network-scripts/目录下的ifcfg-ethx 文件

可以直接修改此文件来改网络配置

DEVICE=name 物理设备的名字

IPADDR=addr 该卡的ip地址

NETMASK=mask 网络掩码

BROADCAST=addr 广播地址

ONBOOT=yes/no 启动时是否激活

BOOTPROTO=proto proto取值:

              none 无须启动协议

              bootp 使用bootp协议

              dhcp 使用dhcp协议

USERCTL=yes/no 是否允许非root用户控制该设备



/etc/hosts.conf文件指定如何解析主机名

order bind,hosts 指主机名的查询顺序.先由dns再由/etc/hosts文件

multi on 指在/etc/hosts文件中可以指定多个地址

ospoof on 指不允许对该服务器进行ip欺骗

/etc/sysconfig/network 文件

该文件用来指定服务器上的网络配置信息

NETWORK=yes/no 网络是否被配置

FORWARD_IPV4=yes/no 是否开启ip转发功能

HOSTNAME="hostname" 表示服务器的主机名

GATEWAY="ip" 网关地址

GATEWAYDEV="dev" 网关设备名

网络配置

ifconfig eth0 ip netmask 255.255.255.0

route add default gw gw-ip



linux网络防火墙





配置ssh1

/etc/ssh/ssh_config

Host * 表示所有地址的机器,Host配置ssh只对其后面指定的地址有效

ForwardAgent no/yes 设置连接是否经过代理验证转发

ForwardX11 no/yes 设置X11连接是否被自动重定向到安全的通道和显示集(DISPLAY set)

RhostsAuthentication no/yes 设置是否基于rhosts的安全验证

RhostsRSAAuthentication no/yes 设置是否使用用RSA算法的基于rhosts的安全验证

RSAAuthentication yes/no 设置是否使用RSA算法进行安全验证

TISAuthentication no/yes 设置是否使用TIS安全验证

PasswordAuthentication yes/no 设置是否使用口令验证

FallBackToRsh no/yes 设置使用ssh连接出现错误是否自动使用rsh

UseRsh no/yes 设置是否在这台计算机上用rlogin/rsh

BatchMode no/yes 设置是否使用互交式的输入口令(针对脚本或者批处理任务)

Compression yes/no 设置是否使用压缩,压缩能提高通讯速度

StrictHostKeyChecking no/yes 配置ssh是否自动把密钥加入$HOST/.ssh/know_hosts文件

IdentityFile ~/.ssh/identity 设置从哪个文件读取用户RSA安全验证标示

Port 22 设置主机的端口

KeepAlive yes/no 设置系统是否发送keep alive消息

Cipher blowfish/xx 设置加密用的密码

EscapeChar ~ 设置escape 字符



/etc/ssh/sshd_config

Port 22 监听的端口

ListenAddress xx.xx.xx.xx 设置绑定的ip地址

HostKey /etc/ssh/ssh_host_key 设置包含计算机私人密钥的文件

RandonSeed /etc/ssh/ssh_random_seed 设置随机数的种子

ServerKeyBits 1024 第一服务器密钥的位数

LoginGraceTime 600 设置如果不能成功登录,在切断连接之前服务器等待时间

KeyRegenerationInterval 3600 设置多少秒之后自动重新生成服务器密钥的等待时间

PermitRootLogin no/yes 设置root能不能ssh登录

IgnoreRhosts yes/no 设置验证的时候是否使用rhosts和shosts文件

StrictModes yes/no 设置ssh在接受连接请求前是否检测用户的home目录和rhosts文件的权限

QuietMode no/yes 设置系统是否“安静”的运行,在“安静”模式下。系统日志的文件除了严重错误之外,不记录其他东西

X11Forwarding no/yes 设置是否运行X11转发

FascistLogging no/yes 设置是否使用详细登录。

PrintMotd yes/no 设置sshd是否在用户登录的时候显示/etc/motd中的信息

KeepAlive yes/no 设置系统是否发送keep alive消息

SyslogFacility AUTH 设置记录来自sshd的信息时,是否给出“facility code”

RhostsAuthentication no/yes 设置只用rhosts或者"/etc/hosts.equiv"进行安全验证

RhostsRSAAuthentication no/yes 设置是否允许用rhosts或者"/etc/hosts.equiv"加上RSA进行安全验证

RSAAuthentication yes/no 设置是否允许只有RSA安全验证

PasswordAuthentication yes/no 设置是否允许口令验证

PermitEmptyPasswords no/yes 设置是否允许使用空口令

AllowUsers admin()配置可用ssh的用户。xxx 、xxx@hostx

AllowHosts xx.xx.xx.xx 设定可以登录的ip



配置ssh2







配置apache虚拟主机

<VirtualHost xx.xx.xx.xx>

          ServerAdmin xx@xx.org

          DocumentRoot /home/httpd/www.xx.org

          ServerName www.xx.org

          ErrorLog /var/log/httpd/www.xx.org/error.log

</VirtualHost>



回上页点

回主页点

类别: 无分类 |  评论(0) |  浏览(8134) |  收藏
2006年02月16日 17:17:03

最佳的75个安全工具

在2000年的5、6月间,nmap-hackers邮件列表中发起了最佳安全工具的评选活动,活动取得了成功,最终由1200名Nmap用户评选出了50个最佳安全工具,评选结果发布在insecure.org网站,得到了网友们的普遍认可。时隔三年,nmap-hackers邮件列表中又发起了同样的评选活动,1854个用户参与了此次活动,每个用户最多可以选择8个最佳工具,并且这次评选出的最佳安全工具由50个增加到了75个。
 
因为是在nmap-hackers邮件列表中做出的评选,因此没有把nmap安全扫描器(http://www.insecure.org/nmap/)评选在内。这次评选出来的75个最佳安全工具在网络安全领域都是一些很有代表性的软件,对于那些在网络安全方面不知从何处开始的新手们来说,这对他们有相当的参考价值。


工具:Nessus(最好的开放源代码风险评估工具)
网址:http://www.nessus.org/
类别:开放源码
平台:Linux/BSD/Unix
工具:SARA(安全管理员的辅助工具)
网址:http://www-arc.com/sara/
类别:开放源码
平台:Linux/BSD/Unix
简介:SARA是一款基于SATAN安全扫描工具开发而来的风险评估工具,每月更新两次。

工具:N-Stealth(web服务器扫描工具)
网址:http://www.nstalker.com/nstealth/
类别:商业
平台:Windows
简介:N-Stealth是一款商业化的Web服务器安全扫描软件,通常它比whisker、nikto等免费的web扫描器升级的更为频繁。N-Stealth开发商宣称的"超过20,000条的缺陷和exploit数据"和"每天新增大量的缺陷检查"是非常可疑的。我们也要注意到,在nessus、ISS、Retina、SAINT和SARA等所有常见的风险评估工具里已含有web扫描组件,不过它们可能没有N-Stealth这样灵活易用和更新频繁。n-stealth不公开源代码。

工具:AirSnort(802.11 WEP密码破解工具)
网址:http://airsnort.shmoo.com/
类别:开放源码
平台:Linux/BSD/Unix/Windows
简介:AirSnort是一款无线局域网密钥恢复工具,由Shmoo小组开发。它监视无线网络中的传输数据,当收集到足够多的数据包时就能计算出密钥。

工具:NBTScan(从Windows网络上收集NetBIOS信息)
网址:http://www.inetcat.org/software/nbtscan.html
类别:开放源码
平台:Linux/BSD/Unix/Windows
简介:NBTscan是一个用于扫描网络上NetBIOS名字信息的程序。这个程序对给出范围内的每一个地址发送NetBIOS状态查询,并且以易读的表格列出接收到的信息,对于每个响应的主机,它列出它的IP地址、NetBIOS计算机名、登录用户名和MAC地址。

工具:GnuPG/PGP(保护你的文件和通信数据的先进加密程序)
网址:http://www.gnupg.org/http://www.pgp.com/
类别:开放源码/商业
平台:Linux/BSD/Unix/Windows
简介:PGP是由Phil Zimmerman开发的著名加密程序,它使用公钥加密算法和常规的加密技术相结合,能将加密后的文件安全地从一地传递到另一地,从而保护用户的数据免于窃听或其他的安全风险。GnuPG是遵照PGP标准开发的开源程序,不同的是,GnuPG是永远免费的,而PGP对于某些用途要收费。

工具:Firewalk(高级的traceroute)
网址:http://www.packetfactory.net/projects/firewalk/
类别:开放源码
平台:Linux/BSD/Unix
简介:Firewalk使用类似traceroute的技术来分析IP包的响应,从而测定网关的访问控制列表和绘制网络图。2002年10月,这个一流的工具在原来的基础上进行了重新开发。需要注意到的是,Firewalk里面的大多数功能也能由Hping2的traceroute选项来实现。

工具:Cain & Abel(穷人的L0phtcrack)
网址:http://www.oxid.it/cain.html
类别:免费
平台:Windows
简介:Cain & Abel是一个针对Microsoft操作系统的免费口令恢复工具。它通过如下多种方式轻松地实现口令恢复:网络嗅探、破解加密口令(使用字典或强行攻击)、解码被打乱的口令、显示口令框、显示缓存口令和分析路由协议等。源代码不公开。

工具:XProbe2(主动操作系统指纹识别工具)
网址:http://www.sys-security.com/html/projects/X.html
类别:开放源码
平台:Linux/BSD/Unix
简介:XProbe是一款测定远程主机操作系统类型的工具。它依靠与一个签名数据库的模糊匹配以及合理的推测来确定远程操作系统的类型,利用ICMP协议进行操作系统指纹识别是它的独到之处。

工具:SolarWinds Toolsets(大量的网络发现、监视、攻击工具)
网址:http://www.solarwinds.net/
类别:商业
平台:Windows
简介:SolarWinds包含大量适合系统管理员做特殊用途的工具,与安全相关的工具包括许多的网络发现扫描器(network discovery scanner)和一个SNMP强力破解器。

工具:NGrep(方便的包匹配和显示工具)
网址:http://www.packetfactory.net/projects/ngrep/
类别:开放源码
平台:Linux/BSD/Unix/Windows
简介:NGrep在网络层实现了GNU grep的大多数功能,基于pcap,可以使你通过指定扩展的正则表达式或十六进制表达式去匹配网络上的数据流量。它当前能够识别流经以太网、PPP、SLIP、FDDI、令牌网和回环设备上的TCP、UDP和ICMP数据包,并且和其他常见的嗅探工具(如tcpdump和snoop)一样,理解bpf过滤机制。

工具:Perl/Python(脚本语言)
网址:http://www.perl.orghttp://www.python.org/
类别:开放源码
平台:Linux/BSD/Unix/Windows
简介:当我们使用那些已经开发好的安全工具来处理任务时,别忘了能自己写出(或修改)安全程序也是一件非常重要的事情。利用Perl和Python能非常容易地写出用于系统测试、exploit和修补的脚本程序,使用包含Net::RawIP和协议实现等模块的CPAN(Comprehensive Perl Archive Network:http://www.cpan.org/)或类似的档案能帮助我们比较容易地进行相关的开发。

工具:THC-Amap(应用程序指纹识别扫描器)
网址:http://www.thc.org/releases.php
类别:开放源码
平台:Linux/BSD/Unix
简介:由THC开发的Amap是一个功能强大的扫描器,它通过探测端口响应的应用程序指纹数据来识别应用程序和服务,远甚于通过缺省端口号来判断应用程序和服务的方法。

工具:OpenSSL(最为重要的SSL/TLS加密库)
网址:http://www.openssl.org/
类别:开放源码
平台:Linux/BSD/Unix/Windows
简介:OpenSSL项目是共同努力开发出来的一个健全的、商业级的、全开放的和开放源代码的工具包,用于实现安全套接层协议(SSL v2/v3)和传输层安全协议(TLS v1)以及形成一个功效完整的通用加密库。该项目由全世界范围内志愿者组成的团体一起管理,他们使用Internet去交流、设计和开发这个OpenSSL工具和相关的文档。

工具:NTop(网络使用状况监测软件)
网址:http://www.ntop.org/
类别:开放源码
平台:Linux/BSD/Unix/Windows
简介:Ntop是一款显示网络使用状况的流量监测软件,类似于UNIX平台上监视系统进程的top命令。在交互模式下,ntop会将网络的使用状况显示在用户的终端上;在Web模式下,ntop会做为一个web服务器,创建包含网络状况的HTML网页返回给用户。

工具:Nemesis(命令行式的UNIX网络信息包插入套件)
网址:http://www.packetfactory.net/projects/nemesis/
类别:开放源码
平台:Linux/BSD/Unix
简介:Nemesis项目是为了开发一个UNIX/Linux系统上基于命令行的、方便人们使用的IP栈,它可以自定义数据包、插入数据包、进行协议攻击等,是一个很好的测试防火墙、入侵检测系统、路由器和其他网络设备的工具。如果你对Nemesis感兴趣,那么你也可能需要看看hping2,这两者补相互之不足。

工具:LSOF(列出打开的文件)
网址:ftp://vic.cc.purdue.edu/pub/tools/unix/lsof/
类别:开放源码
平台:Linux/BSD/Unix
简介:LSOF是针对Unix的诊断和分析工具,它能显示出由系统里正在运行的进程所打开的文件,也能显示出每一个进程的通讯socket。

工具:Hunt(Linux平台上高级的包嗅探和会话劫持工具)
网址:http://lin.fsid.cvut.cz/~kra/index.html#HUNT
类别:开放源码
平台:Linux
简介:Hunt能监视、劫持、重设网络上的TCP连接,在以太网上使用才有作用,并且含有监视交换连接的主动机制,以及包括可选的ARP转播和劫持成功后的连接同步等高级特征。

工具:Honeyd(你个人的honeynet,http://www.honeynet.org/
网址:http://www.citi.umich.edu/u/provos/honeyd/
类别:开放源码
平台:Linux/BSD/Unix/Windows
简介:Honeyd是一个能在网络上创建虚拟主机的小小后台程序,虚拟主机能被配置成运行任意的服务,并且洽当的服务TCP特性以致他们看起来就像是运行在某个特定版本的操作系统上。Honeyd能在一个模拟的局域网环境里让一台主机配有多个地址,并且可以对虚似主机进行ping、traceroute。虚拟主机上任何类型的服务都可以依照一个简单的配置文件进行模拟。Honeyd也可以对一台主机做代理服务,而不是模拟它。

工具:Achilles(可以修改http会话包的代理程序)
网址:http://packetstormsecurity.nl/filedesc/achilles-0-27.zip.html
类别:开放源码
平台:Windows
简介:Achilles是一个设计用来测试web应用程序安全性的工具。它是一个代理服务器,在一个HTTP会话中扮演着"中间人"(man-in-the-middle)的角色。一个典型的HTTP代理服务器将在客户浏览器和web服务器间转发数据包,但Achilles却载取发向任一方的HTTP会话数据,并且在转发数据前可以让用户修改这些数据。

工具:Brutus(网络认证的强行破解工具)
网址:http://www.hoobie.net/brutus/
类别:免费
平台:Windows
简介:Brutus是一款对远程服务器的网络服务进行口令猜解的工具,支持字典攻击和组合攻击,支持的网络应用包括HTTP、POP3、FTP、SMB、TELNET、IMAP、NTP等。源代码不公开。UNIX系统上的THC-Hydra有类似的功能。

工具:Stunnel(一个多种用途的SSL加密外壳)
网址:http://www.stunnel.org/
类别:开放源码
平台:Linux/BSD/Unix/Windows
简介:Stunnel程序被设计用来做为本地客户端和远程服务器间的SSL加密外壳。它能在POP2、POP3、IMAP等使用inetd后台进程的服务器上增加SSL功能,并且不会影响到程序源代码。它使用OpenSSL或SSLeay库建立SSL会话连接。

工具:Paketto Keiretsu(极端的TCP/IP)
网址:http://www.doxpara.com/paketto
类别:开放源码
平台:Linux/BSD/Unix
简介:Paketto Keiretsu是一组使用新式的不常见的策略去操作TCP/IP网络的工具集合,开发的最初本意是为了在现有TCP/IP架构里去实现一些功能,但现在已经远远超出了最初的本意。包含的工具有:Scanrand,一个罕见的快速的网络服务和拓朴发现系统;Minewt,一个NAT/MAT路由器;linkcat,把以太网链路做为标准的输入输出;Paratrace,不产生新的连接就能追踪网络路径;Phentropy,使用OpenQVIS在三维拓朴空间里能绘制出任意总量的数据源图形。
 

工具:Fragroute(破坏入侵检测系统最强大的工具)
网址:http://www.monkey.org/~dugsong/fragroute/
类别:开放源码
平台:Linux/BSD/Unix/Windows
简介:Fragroute能够截取、修改和重写向外发送的报文,实现了大部分的IDS攻击功能。Fragroute起重要作用的是一个简单的规则设置语言,以它去实现延迟、复制、丢弃、碎片、重叠、打印、重排、分割、源路由或其他一些向目标主机发送数据包的攻击。这个工具开发的本意是去测试入侵检测系统、防火墙、基本的TCP/IP栈的行为。像Dsniff、Libdnet一样,这个优秀的工具也是由Dug Song开发的。

工具:SPIKE Proxy
网址:http://www.immunitysec.com/spikeproxy.html
类别:开放源码
平台:Linux/BSD/Unix/Windows
简介:Spike Proxy是一个开放源代码的HTTP代理程序,用于发现web站点的安全缺陷。它是Spike应用程序测试套件(http://www.immunitysec.com/spike.html)的一部份,支持SQL插入检测、web站点检测、登录表单暴力破解、溢出检测和字典穷举攻击检测等。

工具:THC-Hydra(网络认证的破解工具)
网址:http://www.thc.org/releases.php
类别:开放源码
平台:Linux/BSD/Unix
简介:这个工具能对需要网络登录的系统进行快速的字典攻击,包括FTP、POP3、IMAP、Netbios、Telnet、HTTP Auth、LDAP NNTP、VNC、ICQ、Socks5、PCNFS等,支持SSL,并且现在是Nessus风险评估工具的一部份。

 

其他的25个最佳安全工具:

OpenBSD,http://www.openbsd.org/:安全可靠的操作系统。

TCP Wrappers,ftp://ftp.porcupine.org/pub/security/index.html:一流的IP访问控制和日志的实现机制。

pwdump3,http://www.polivec.com/pwdump3.html:获取本地或远程Windows主机的口令哈希,而不管是否安装了syskey。

LibNet,http://www.packetfactory.net/libnet/: 允许程序员去构造和插入网络数据包的高水平开发函数库.

IpTraf,http://cebu.mozcom.com/riker/iptraf/: IP网络监控软件。

Fping,http://www.fping.com/:一次可以ping多个IP地址的扫描程序。

Bastille,http://www.bastille-linux.org/:增强系统安全性的脚本程序,支持Linux, Mac OS X和HP-UX操作系统。

Winfingerprint,http://winfingerprint.sourceforge.net/: 一款基于Win32的高级远程系统扫描器。

TCPTraceroute,http://michael.toren.net/code/tcptraceroute/:使用TCP SYN包实现traceroute的工具。

Shadow Security Scanner,http://www.safety-lab.com/en2/products/1.htm:一款商业化的风险评估工具。

pf,http://www.benzedrine.cx/pf.html:OpenBSD系统内很有特色的包过滤防火墙。

LIDS,http://www.lids.org/:Linux内核上的入侵检测和入侵防御系统。

hfnetchk,http://www.microsoft.com/technet/treeview/default.asp?
url=/technet/security/tools/tools/hfnetchk.asp:微软发布的用于检查网络上Windows主机补丁安装情况的工具。

etherape,http://etherape.sourceforge.net/:继流量监测软件etherman之后又一个支持unix的图形化网络状况监测软件。

dig,http://www.isc.org/products/BIND/:Bind附带的DNS查询工具。

Crack/Cracklib,http://www.users.dircon.co.uk/~crypto/:一流的本地口令破解器。

cheops/cheops-ng,http://www.marko.net/cheops/http://cheops-ng.sourceforge.net/:绘制本地或远程网络的网络图,并且也能识别主机的操作系统类型。

zone alarm,http://www.zonelabs.com/:Windows平台上的个人防火墙软件。

Visual Route,http://www.visualware.com/visualroute/index.html:获取traceroute/whois数据,并且绘制出数据包经过的网络路线在世界地图上的位置。

The Coroner's Toolkit (TCT),http://www.fish.com/tct/:运行于Unix系统上的文件系统检查及紧急修复工具集。

tcpreplay,http://tcpreplay.sourceforge.net/:能把tcpdump或snoop保存下来的流量监测文件在任意点进行回放的工具。

snoop,http://www.spitzner.net/snoop.html:Solaris系统附带的网络嗅探工具。

putty,http://www.chiark.greenend.org.uk/~sgtatham/putty/:Windows平台上优秀的SSH客户端。

pstools,http://www.sysinternals.com/ntw2k/freeware/pstools.shtml:一套用于管理Windows系统的免费命令行工具。

arpwatch,http://www-nrg.ee.lbl.gov/:主要用来检测mac地址和ip地址对应关系的工具

类别: 无分类 |  评论(0) |  浏览(13523) |  收藏
2006年02月14日 21:04:49

半路遭劫--中间人攻击

错误引导——DNS欺骗

临近过年,一辆长途客车满载着归家的旅人们在高速公路上行驶着,此时已是深夜,旅客们多半都已进入梦乡。司机发现前面不远处摆满了石块,还有一块指向告诉公路旁岔路口的牌子写着:“因前方公路塌方,严禁车辆通过,请绕道。”司机迟疑了一下,把车驶进了岔路。不远处,几双不安分的眼睛正在注视着客车……

中间人攻击(Man-in-the-Middle Attack,简称“MITM攻击”)是一种“间接”的入侵攻击, 这种攻击模式是通过各种技术手段将受入侵者控制的一台计算机虚拟放置在网络连接中的两台通信计算机之间,这台计算机就称为“中间人”。然后入侵者把这台计算机模拟一台或两台原始计算机,使“中间人”能够与原始计算机建立活动连接并允许其读取或修改传递的信息,然而两个原始计算机用户却认为他们是在互相通信。通常,这种“拦截数据——修改数据——发送数据”的过程就被称为“会话劫持”(Session Hijack)。

DNS欺骗(DNS Spoofing),就是其中的一种惯用手法。攻击者通过入侵DNS服务器、控制路由器等方法把受害者要访问的目标机器域名对应的IP解析为攻击者所控制的机器,这样受害者原本要发送给目标机器的数据就发到了攻击者的机器上,这时攻击者就可以监听甚至修改数据,从而收集到大量的信息。如果攻击者只是想监听双方会话的数据,他会转发所有的数据到真正的目标机器上,让目标机器进行处理,再把处理结果发回到原来的受害者机器;如果攻击者要进行彻底的破坏,他会伪装目标机器返回数据,这样受害者接收处理的就不再是原来期望的数据,而是攻击者所期望的了。例如让DNS服务器解析银行网站的IP为自己机器IP,同时在自己机器上伪造银行登录页面,那么受害者的真实账号和密码就暴露给入侵者了。

如此说来,这种攻击理应是最强大最危险的,然而实际上它却很少派上大用场,为什么?因为DNS欺骗的攻击模型太理想了。在实际生活中,大部分用户的DNS解析请求均是通过自己的ISP服务器进行的,换句话说,就是系统在连接网络时会获取到ISP服务器提供的DNS服务器地址,所有解析请求都是直接发往这个DNS服务器的,攻击者根本无处入手,除非他能入侵更改ISP服务器上DNS服务的解析指向。所以这种手法在广域网上成功的几率不大。

当然,这种攻击的成功率也有例外存在,例如一个ISP服务器上存在Bind漏洞,攻击者就能通过Bind漏洞进入服务器更改掉DNS解析指向,甚至取得最高权限;另一种方法是入侵路由设备,修改里面的DNS服务器地址为自己控制的机器地址,这种方法只能在用户机器自身是通过路由器返回域名解析的情况下才能成功,多见于一些使用小区宽带连接Internet的用户,因为这种用户机器的DNS地址通常必须指向小区宽带内部的某台服务器地址或者交给路由进行转向,这时候只要攻击者入侵了路由或者那台关系到所有人的服务器修改掉DNS记录,整个小区用户的网络都完了。当然,攻击者不能把全世界网站都伪造到他硬盘上,他只需要改几个重要商务站点的指向即可,这样便可导致用户访问某些商务站点时被转向到攻击者的机器去。但是,这种攻击手法同时对攻击者自身也是一种伤害:如果小区内有许多用户都访问这些商务站点,则大量数据请求会疯狂消耗攻击者的机器资源,攻击者非但不能实时处理数据,更是面临着机器瘫痪和暴露自己的双重危险。

聪明的攻击者不会选择去入侵DNS服务器,他们会想办法替换掉Hosts文件,从而引导受害者走向自己的机器……

不可信任的陌生人——会话劫持

客车沿着岔路行驶下去,怎料道路越来越颠簸,根本不像能开回高速公路的样子,满车的旅客被晃醒了,不住的抱怨起来。司机心里也有点发慌,客车在荒山野岭停了下来。在众人不知所措的时候,车外有几个看似本地居民的人请求搭个便车外出,并表示自己懂得出去的道路。司机虽然半信半疑,可终究还是打开了车门。谁也没有察觉到那几个人的嘴边正浮现出一丝阴险的笑容……

“会话劫持”(Session Hijack)是一种结合了嗅探以及欺骗技术在内的攻击手段。广义上说,会话劫持就是在一次正常的通信过程中,攻击者作为第三方参与到其中,或者是在数据里加入其他信息,甚至将双方的通信模式暗中改变,即从直接联系变成有攻击者参与的联系。简单地说,就是攻击者把自己插入到受害者和目标机器之间,并设法让受害者和目标机器之间的数据通道变为受害者和目标机器之间存在一个看起来像“中转站”的代理机器(攻击者的机器)的数据通道,从而干涉两台机器之间的数据传输,例如监听敏感数据、替换数据等。由于攻击者已经介入其中,他能轻易知道双方传输的数据内容,还能根据自己的意愿去左右它。这个“中转站”可以是逻辑上的,也可以是物理上的,关键在于它能否获取到通信双方的数据。

典型的会话劫持是利用TCP/IP的工作原理来设计攻击的。在谈TCP/IP会话劫持前先解释一下TCP/IP用于确认数据传输的判断机制。许多人一定都有过这样的疑问:我们已经知道TCP/IP是使用点对点(Point to Point)连接进行数据传输的,但是它是如何知道上一条数据和下一条数据存在的联系的呢?如果我发送数据后不慎掉线,恰好另一个人接着我的IP地址连接到了Internet,那他会不会收到服务器返回给我的数据?其实只要看过TCP/IP协议的书籍就会明白,TCP协议采用了两种条件来确认每条已经建立连接的TCP通道,第一个是基础连接确认,即TCP连接中的四大必备条件:源IP、源TCP端口、目标IP、目标TCP端口;第二个条件是“序号标识”(Sequence numbers,SEQ),它们是成对出现的,分为“Sequence”(SEQ,序号字段)和“Acknowledgement Sequence”(ACK SEQ,确认序号字段),TCP每次建立一个连接时,会给双方指定这样一条规则:序号字段指出了本报文中传送的数据在发送主机所要传送的整个数据流中的顺序号,而确认序号字段指出了发送本报文的主机希望接收的对方主机中下一个八位组的顺序号。(这里可能比较难理解,可以举个不专业的例子解释:流水线上的工人被规定好了每人负责安装8个不同的零件,则每次传输到他们手上的都应该是只留下给他们安装的8个零件位置,这就是序号字段;而下一个工人则被规定在前一个工人的基础上安装另一个部分的8个零件,这就是确认序号字段,如果这个工人发现传到自己手上的产品多了或少了零件,则说明前一个工人出错,这个产品就被从流水线提取出来返工,这就是TCP对序号的严密审查和丢弃制度)。TCP如此谨慎,就是为了避免出现前面提到的假设,虽然这种假设发生的几率很小(需要满足TCP的基础连接确认条件),但是它总有机会发生的。然而不幸的是,这对序号是可以预测的,因为TCP必须遵从以下守则:一台主机即将发出的报文中的SEQ值应等于它所刚收到的报文中的ACK SEQ值,而它所要发送报文中的ACK SEQ值应为它所收到报文中的SEQ值加上该报文中所发送的TCP数据的长度,即两者存在“本次发送的SEQ=上次收到的ACK SEQ;本次发送的ACK SEQ=上次收到的SEQ+本次发送的TCP数据长度”的联系。知道这个规律后,攻击者就不难发起“中间人攻击”了,他只需要设法监听到受害者TCP连接中的第一个条件(源IP、源TCP端口、目标IP、目标TCP端口),就可以得知其中一台主机对将要收到的下一个TCP报文段中SEQ和ACK SEQ值的要求,这样攻击者就能在原来的合法主机收到另一台合法主机发送的TCP报文前根据所截获的信息向该主机发出一个符合条件二(序号标识)的TCP报文,如果该主机先收到攻击报文,就会受到欺骗而把合法的TCP会话建立在攻击主机与被攻击主机之间,而且攻击报文会让被攻击主机对下一次要收到的TCP报文中的确认序号值的要求发生变化,最终使另一台合法的主机向被攻击主机发出的报文被拒绝,这种模式被称为“主动劫持”。换句话说,就是其中一方合法主机被攻击者掠夺了连接的权限,而攻击者却成为了合法的连接方之一。这种会话劫持让攻击者避开了被攻击主机对访问者的身份验证和安全认证,从而使攻击者直接进入对被攻击主机的的访问状态,因而危害严重。例如,你刚向某站点发送完账户密码,就被攻击者抢先冒充你的TCP连接上了,那你的损失可就难预料了。不过,会话劫持对网络环境的一点要求可以让大家松口气,它必须在使用MAC寻址的网络环境中才能发挥作用,必要时还要配合ARP协议欺骗,能同时满足这两个条件的只有局域网。而广域网不是靠MAC地址来查找计算机的,因此攻击者很难从现有的广域网结构里插入到某两台计算机之间。

但是,下面的MITM攻击就没那么好运了……

披着羊皮的狼——不再可靠的代理服务器

网络上存在许多各种各样的代理服务器,其中的一些,是披着羊皮的狼……客车在一个“老乡”的指引下缓缓前进,司机这时候却感到有点不对劲,因为这条小路越来越泥泞!他还没来得及思考更多,就觉得车子颠簸了一下,再也动弹不得:车轮陷进水坑里了!满车旅客沸腾起来,那几个“老乡”很有自信的说:“我们下车去找人来推!”遂跳下车向后方走去,只留了两个人在车外“守”着。司机趁那两个人看着后方抽烟的时候偷偷拨打了110……过了一会儿,旅客们欢呼起来,因为他们看到一群“老乡”拿着锄头棍棒等东西走过来。但是只过了很短的时间,欢呼声变成了恐惧的叫声:那群人气势汹汹的,而且有些人手上还拿着砍刀!这些人不是什么“老乡”,而是一伙歹徒!司机明白自己从一开始就中了圈套,忙开足马力前进,可是无奈车轮只能在坑里空转……

代理服务器(Proxy Server)的存在已经是很长久的事实了,而且由最初的几个基于TCP/IP协议的代理软件如HTTP、SMTP、POP3和FTP等发展到如今SSL、SOCK4/5以及其他未知的代理类型,可谓给一些特殊用途者提供了极大的方便。例如,通过代理跨过某些服务器的IP屏蔽,从而浏览到本来不能看到的信息;或者害怕自己IP暴露被对方入侵而寻找层层代理把自己包裹起来;还有些是因为系统不支持Internet共享而被迫采用代理软件来让内部网络的计算机能正常连接Internet……此外还有许多原因,让各种代理服务器经久不衰。

然而,广大网民在享受着代理的便利时,却不曾想过,任何事情都是要付出代价的……

这要从代理服务器的工作原理谈起。代理服务器相当于一个透明的数据通道,它根据客户发来的“要求连接某计算机”的请求数据,进而用自己本身作为原客户机器去连接目标计算机,在目标计算机返回数据后,再发送给原客户,这时目标计算机获取到的是代理服务器的IP,而不是原客户IP,从而实现突破IP屏蔽或者让对方无法获取你的真实IP。

简单举个HTTP代理服务器工作的原理:IE发送一个包含目标URL的HTTP请求,代理服务器接收并析出HTTP报文里的目标URL和相关参数,然后把这个URL作为一次标准的HTTP连接过程与目标网站连接,获取目标网站返回的数据后缓冲到代理服务器的硬盘上,再把这些数据返回给客户端。

请求连接目标URL------> 连接目标服务器------->
客户端-------------------------代理服务器------------------------目标服务器
<-----返回数据----(缓冲) <-------------返回数据

其它协议的代理工作模式也都差不多,代理服务器充当了一个数据转向的工作站,相当于一个专门负责数据转发的“勤劳工人”。

然而,再忠诚的狗也会偷吃的,代理服务器有时候也并非完全透明的……

不知道大家在看我描述代理服务器原理的时候,有没有产生一个“似曾相识”的感觉?没错!代理服务器的工作模式,正是典型的“中间人攻击”模型!代理服务器在其中充当了一个“中间人”的角色,通讯双方计算机的数据都要通过它!因此,“代理服务器进行的‘中间人攻击’”逐步成为现实,相对于其他“中间人攻击”方法,这种利用代理服务器暗渡陈仓的做法简直天衣无缝,攻击者可以自己写一个带有数据记录功能的代理服务程序,放到任意一台稳定的肉鸡甚至直接在自己机器上,然后通过一些社会工程学手段让受害者使用这个做了手脚的“代理服务器”,便可守株待兔了。这种方法最让人不设防,因为它利用的是人们对代理的无条件信任和贪便宜的想法,使得一个又一个“兔子”自动撞了上来,在享受这顿似乎美味的“胡萝卜”的同时却不知道安全正在逐渐远离自己。

如果制作这个代理服务器的攻击者仅限于窥探数据,那么受害者的损失可能还能估量,但是如果攻击者在目标服务器返回的数据里加入一个带有木马程序的数据呢?例如在HTTP代理返回的HTML报文里加入一个MIME攻击漏洞代码,而受害者的计算机恰好没有打相应补丁,那么由此带来的损失就难以估量了,而且计算机技术不高的受害者也难以查出木马究竟是从哪里来的,因为很少有人怀疑代理服务器自身会有问题!

拒绝“中间人”——我们该怎么做

谈了这些MITM攻击,许多用户会觉得恐惧,其实,攻防为一家,有攻就有防,只要措施正确,MITM攻击是可以预防的。

对于DNS欺骗,我们要记得检查本机的HOSTS文件,以免被攻击者加了恶意站点进去;其次要确认自己使用的DNS服务器是ISP提供的,因为目前ISP服务器的安全工作还是做得比较好的,一般水平的攻击者无法成功进入;如果是依靠网关设备自带的DNS解析来连接Internet的,就要拜托管理员定期检查网关设备是否遭受入侵。

至于局域网内各种各样的会话劫持(局域网内的代理除外),因为它们都要结合嗅探以及欺骗技术在内的攻击手段,必须依靠ARP和MAC做基础,所以网管应该使用交换式网络(通过交换机传输)代替共享式网络(通过集线器传输),这可以降低被窃听的机率,当然这样并不能根除会话劫持,我们还必须使用静态ARP、捆绑MAC+IP等方法来限制欺骗,以及采用认证方式的连接等。

但是对于“代理中间人攻击”而言,以上方法就难以见效了,因为代理服务器本来就是一个“中间人”角色,攻击者不需要进行任何欺骗就能让受害者自己连接上来,而且代理也不涉及MAC等因素,所以一般的防范措施都不起作用。笔者认为,除非你是要干坏事,或者IP被屏蔽,或者天生对网络有着恐惧,否则还是不要整天找一堆代理来隐藏自己了,没必要的。常在河边走,即使遇上做了手脚的代理也难察觉。

类别: 无分类 |  评论(1) |  浏览(8540) |  收藏
2006年02月14日 20:39:01

地下病毒写手不为人知的秘密

Philet0ast3r,21岁的德国人,于3年前创建了一个叫做“预备流浪者解放阵线”的病毒作者组织。
他,二十岁上下,住在一个偏僻的小镇上,无聊的时候喜欢编写电脑病毒,在网络杂志上发表。另一个不知天高地厚的家伙看到这个病毒把它释放进了互联网,成千上万台电脑在几分钟内被感染,损失上千万美元。他以艺术家自居,称病毒是他的作品。世界各地隐藏着许多这样的“艺术家”,他们的存在将永远对网络安全构成威胁。但是最令反病毒专家恐惧的不是他们,也不是那些破坏硬盘的蠕虫,而是那些侵入电脑,悄悄盗窃敏感信息的“间谍”病毒。

  马里奥点燃一支香烟,在写字台旁边坐下,把一张IronMaiden乐队的CD塞进了笔记本电脑,这张CD是他最近的新宠。“我真的很喜欢,”他说,“我女朋友送给我的。”他的女友就斜靠在旁边的床上,她是一个15岁的女孩,留着黑色的直发。她害羞地微笑了一下。16岁的马里奥正在上中学,他的家住在奥地利南部一个山区小镇(他不愿意我透露他的姓)。他齐肩的闪亮长发盖住了半边脸,绿色的眼睛懒洋洋的,很像年轻时的滚石乐队主唱迈克•贾格尔。在他房间的墙上挂着一张安娜•库尔尼科娃的巨幅海报,颇让他的女朋友不满。在楼下,他的母亲正在收拾餐桌。这些日子,她也很不高兴,让她困扰的不是儿子的海报,而是他的爱好。


  当马里奥无聊的时候——在这个被白雪覆盖的山镇里,他很容易无聊——他喜欢坐在笔记本电脑前编写病毒和蠕虫。在网络上他的大名是“地狱第二阶”,他已经编写了超过150个所谓的“恶意程序”:能自我复制的小程序,用于感染联网的电脑。这些程序有时造成伤害,有时又是无害的。

  马里奥声称他更喜欢创造那些不蓄意破坏数据的病毒,因为简单的破坏太简单。“任何人都能够编写一两行重写硬盘的代码。”他说,“这样干没有意义,很蹩脚。”此外他认为这种行为很恶毒,而他是个友善的人。

  但是——仅仅是为了证明自己能够办到——1年前,他创造了一个相当危险的工具:一个自动产生病毒的程序。它叫做“木马制造机”,任何人都能通过马里奥的网站自由下载该程序。只需要按几下鼠标,你就能用这个工具创造你自己的“特洛伊木马”病毒。就像古希腊神话中的特洛伊木马一样,特洛伊病毒伪装成图片或者礼物进入某人的电子邮箱,但它其实是一件危险的货物。

  马里奥打开他的病毒生产工具给我演示如何使用它。一个小方盒出现在他的笔记本屏幕上,礼貌地让我给自己的特洛伊病毒取名字,我叫它“克利夫”病毒。接下来它又问我,我希望病毒干什么。是否让它格式化C盘?我点击“是”。是否让病毒覆盖所有文件?“是”。它又问,是否在下次启动电脑的时候启动病毒?我又回答“是”。

  就这样简单。“木马制造机”把它生产的病毒放到了马里奥的硬盘上,它是一个3k的小文件。马里奥的病毒制造工具同时发出警告,“释放病毒是非法的。”他说,他发明“木马制造机”的目的纯粹是为了教育,是为了帮助好奇者认识特洛伊木马如何工作。

  但是,我完全可以无视它的警告。我可以给病毒取个诱惑的名字,比如“小甜甜布兰妮结婚照剪辑”,让人们以为它是一段录像。如果我把它邮寄给一个受害者,如果这个人没有最新的防毒软件,他点开邮件,灾难将降临他的电脑。病毒将被启动,悄悄地钻进微软视窗操作系统,插入新的指令,命令电脑删除自己的硬盘。受害者重新启动电脑时,机器将找到这些新的指令,以为它们是正常的视窗操作系统指令,照常执行。噗!硬盘上的一切文件消失——包括邮件、图片文件和游戏。

  我以前从未想过编写电脑病毒,即使想过,也不知道该怎么做。但是感谢一个住在奥地利山区小镇的男孩,我在1分钟的时间内就制造出了病毒。

  马里奥把病毒扔进桌面上的垃圾桶。“我们还是不碰它为妙。”

  电脑专家把2003年叫做“蠕虫之年”

  去年12个月里,互联网经历了一次又一次的瘟疫和病毒感染。1月,Slammer蠕虫在10分钟时间里,感染了近7.5万个服务器,堵塞了美国的自动提款机系统,导致众多航班误点。夏天,Blaster蠕虫发动攻击,通过视窗的一个漏洞传播,它携带着嘲弄比尔•盖茨的信息,感染了成千上万的电脑,并劫持被感染电脑向微软网站倾泻垃圾数据,试图让其瘫痪。8月,一个叫SobigF的蠕虫以更加巨大的威力爆发,它通过电子邮件传播,一路盗窃被感染电脑存储的邮件地址,不断感染新的电脑。它的繁殖速度如此之快,在它泛滥的高峰期,互联网上输送的每17封邮件中就有一封是SobigF.电脑安全公司mi2g估计,2003年全球病毒袭击造成的经济损失,包括善后清理和拖累生产效率,估计不低于820亿美元。(也有人批评这一数据夸大其词)

  2004年,病毒的破坏力有升级的趋势。1月底,MydoomA邮件病毒发动攻击,它散播的速度甚至比Sobig.F更快;专家估计,在它的巅峰时期,网络上的每5封邮件中就有1封Mydoom.A.的拷贝。它还携带着一个危险的程序:它劫持被感染的电脑攻击软件公司SCO的网站。

  人们也许认为,像马里奥一样的人理该对病毒的泛滥负责,被绳之以法。

  但是,全球反电脑犯罪的机构发现,病毒作者变得越来越谨慎了,至少更讲究策略了。今天,许多顶尖的作者根本不释放他们的作品,而是把它们发表在网站上,公布编码之外,还详细说明这些恶意程序的用途。让这些“休眠”的病毒等待着释放它们的人光顾。

  不幸的是,总是不缺少这样的人。释放病毒的人常常是匿名的恶作剧者,又被称为ScriptKiddies,他们是刚入行的年轻黑客,通常是十几岁的少年或是好奇的大学生,他们还没有编程的技巧,但喜欢假装成专家。他们把病毒下载,宣称它是自己的创造,然后把病毒释放出去。ScriptKiddies对于恶意病毒的工作原理一知半解,对于它会造成多么巨大的损失就更不放在心上了。

  今天的病毒瘟疫实际上是一种特殊共生关系的产物,这种关系的两边分别是精明的病毒作者和愚蠢幼稚的病毒释放者

  如果没有它们双方的合作,许多病毒也许永远不会见到天日。2003年的

  Blaster蠕虫的泛滥部分是由ScriptKiddes造成的。原版的Blaster于8月11日发动攻击,明显出自一个高明的编程者之手(他或她今天仍然逍遥法外)。3天之后,第二种版本的Blaster在网上出现,感染了大约7000台电脑。

  这次,美国联邦调查局追查到了住在明尼苏达州的18岁的杰弗里•李•帕森。

  他对原版病毒稍做改变后又释放出去。他也许是为了出名,也许根本不知道病毒的破坏力,他没有企图掩盖自己的身份,甚至在病毒代码中加入了自己的个人网站链接。(他被逮捕,并因蓄意破坏电脑罪受到起诉,他可能面临1 0年的监禁)几周之后,历史重演,第三种版本的Blaster出现。这次,警察追踪到了罗马尼亚的一名大学生,他也在代码中留下了明显的个人身份线索。

  这种新的趋势让安全专家们坐立不安,因为这意味着编写病毒不再是一种高技术的职业。通过公开自由地在网上交换作品,顶尖的病毒作者使几乎每个人都可能成为瘟疫释放者。危害造成之后,原始病毒作者们只是耸耸肩。

  我们也许制造了恶魔,他们会说,但是我们没有释放它呀。这种躲避责任的做法让安全专家和警察极其愤怒,他们说,这些人的做法也许是合法的,但是绝对不道德。“当他们在网络上发布病毒的时候,他们清楚地知道有人会使用它们。”普渡大学的电脑科学教授尤金•斯帕福德说,今天的病毒作者们就像年轻的弗兰肯斯坦教授(科学怪人),他们创造出自己无法控制的力量,又拒绝承担责任。

  “啤酒在哪?”Philet0ast3r四处找啤酒。1小时前,他打发3个朋友再去取一箱啤酒来,他们还不见踪影。

  Philet0ast3r住在德国巴伐利亚州的一个小镇(我拜访的病毒作者多数住在欧洲,“9•11”之后,美国的病毒作者们由于害怕起诉规矩多了),他正在自己那个单卧室的公寓里举行聚会。拥挤的房间里塞了20个朋友。他们有的在玩扑克,有的在谈论政治,有的在抨击朋克乐队Deftones.这是一个星期六的晚上。3个女孩坐在地板上把另外一个女孩的长发遍成粗壮的黑人式的辫子。这是这群人中最流行的发式。21岁的Philet0ast3r就留着这种被称为雷鬼头的黑人发式,他的下嘴唇上还穿了一个银环。(Philet0ast3r是一个网络头衔,他不愿意泄露他的真名。)

  Philet0ast3r的朋友终于买回啤酒了,他的蓝眼睛突然明亮起来。他用打火机的边缘撬开酒瓶盖,举瓶邀请朋友们畅饮。一个金发的高个子把手臂搭在Philet0ast3r的肩上说,“这家伙是VisualBasic高手。”在病毒作者们的秘密地下世界里,这种赞扬是爱的表现。VisualBasic是“恶意程序”作者最喜欢的语言。

  Philet0ast3r用它创造了好几种病毒。在这个宁静的旅游小镇,他在一家精神病患者看护中心担任助理,空闲的时间里他管理着一个国际病毒作者组织,叫做“预备流浪者解放阵线”(ReadyRangerLiberationFront)。3年前,他在自己家乡——附近一个更加偏僻的小镇——与3个无聊的高中朋友创建了这个组织。我在网上认识了他(文中提到的所有病毒作者都是通过这一方式认识的)。

  Philet0ast3r对“恶意程序”产生兴趣的原因与大多数病毒作者一样:他自己的电脑遭到病毒攻击。他想知道它是怎么工作的,于是开始寻找病毒作者的网站。他发现了各种各样的病毒,全部都非常容易下载,此外还有大量编写程序的技巧。他整夜流连在在线聊天室里,向他人求教,很快他开始创作自己的蠕虫。

  Philet0ast3r的公寓里到处张贴着反公司标语,给人一种印象,他是那种喜欢破坏性病毒的作者。但是Philet0ast3r的病毒其实都没有什么杀伤力,它们更多是为了恶作剧创造的。其中一个病毒会使电脑屏幕上出现一个竖中指的图像,然后它还会害羞地为这个手势道歉。(“嘿,这不是针对你!我只是想让你看看我的货色”)他正在编写的一个病毒会把两个人工智能间谍安插到你的电脑上;这两个家伙会出现在弹出窗口中,紧张地讨论你的防病毒软件是否会抓到并删除它们。Philet0ast3r透露,他编写中的另外一个病毒更加鬼祟,它叫“键盘记录”(keylogger),是一个木马病毒,能够监视记录受害者的每次键盘输入——包括密码和保密的电子邮件——然后悄悄地将记录拷贝发送给安插病毒的人。通过它,病毒释放者能盗窃大量敏感的个人信息。

  从技术上讲,“病毒”和“蠕虫”有细微的区别

  病毒光顾你的电脑时会把自己伪装起来。它可能看似一首mp3格式的歌曲(“hey-a.mp3”)但当你细看会发现它有一个异常的后缀,比如hey-ya.mp 3.exe.这是因为它根本就不是真正的mp3文件,而是一个小程序,被点击后,它会重新编写部分系统程序,让电脑做一些古怪的事情,比如显示一条标语。

  病毒不能自我启动,它需要诱惑人点击它。病毒作者们挖空心思用各种幌子诱惑受害者启动病毒。

  与病毒不同的是,蠕虫的传播不需要人的干预。它们通常也不会改变或者破坏电脑的数据。它们的破坏力在于它们惊人的速度:它们自我复制造成网路塞车,服务器不堪重负,就像炎热的夏天众多同时运行的空调拖垮电网一样。“群发邮件”(massmailer)是最常见的蠕虫种类,它们攻击一名受害者的电脑,找出微软Outlook(世界上最普遍的电子邮件程序)的地址簿,给每个地址发送一份蠕虫拷贝。

  近来,蠕虫和病毒的界线日益模糊。

  一个蠕虫可能携带病毒。蠕虫把病毒投放到受害者的硬盘上,然后自我复制通过邮件去感染其他电脑。

  “网络蠕虫”是最凶猛的“恶意程序”,它们专门钻软件产品的漏洞(通常是微软的产品),Slammer的作者就是利用了微软SQL服务器(企业和政府常用的在线数据库)的漏洞。Slammer蠕虫首先找到一个未受保护的SQL服务器,然后向它发送洪水般的信息,导致服务器的缓冲区溢满,就像茶水溢出杯子一样。缓冲区一旦溢满就会诱使服务器向其他服务器发送成千上万份蠕虫的拷贝。正常情况下,服务器不会允许外部闯入者的操纵,但是微软忽略了对类似攻击采取保护措施。利用这一缺陷,Slammer制造的垃圾淹没了互联网,在10分钟的时间内占领了几乎所有有漏洞的机器。这次袭击导致美国多个地方的911报警系统瘫痪。

  Philet0ast3r表示他对制造网络蠕虫不感兴趣,但是如果他想干也难不倒他。他首先会搜索电脑安全专家公布新软件缺陷报告的网站。这些安全白皮书对漏洞的剖析如此详细,实际上给病毒作者提供了如何通过这些漏洞的地图。“然后我会加以利用,”他说,“就是这么简单。”

  病毒作者们对微软尤其憎恨

  在他们看来,微软在自己的产品中留下了众多容许恶意程序散播的漏洞,应该对蠕虫泛滥负主要责任。微软把它的产品卖给非专业的用户,培养出大量无知的用户,这些人无法识别伪装的病毒附件,成为病毒启动者。事实上,微软的成功才是它成为诱人的攻击目标的最大原因:90%的台式电脑使用视窗操作系统,蠕虫作者以微软为目标,才能最大程度地显示作品威力。

  微软官员当然拒绝承认他们的产品质量低劣。微软之所以成为攻击主要目标的另一原因也许在于攻击微软已经成为一种时尚,被认为是一种很酷的行为。微软高级安全顾问菲尔•瑞汀格说:“追打最大的狗似乎是人的天性。

  “瑞汀格说公司正在努力改善产品的安全性。接连不断的攻击让微软大为恼火,它已经开始奋力反击。去年,微软设立了一个500万美元的基金,用于奖励任何为逮获攻击微软产品的病毒作者提供线索的人。

  顶尖病毒作者的动机常常是相互矛盾的。他们花费好几个小时冥思苦想感染电脑的新方法,又花几个小时把想法变成现实。但是当作品完成后,多数作者说他们并不怎么想把病毒释放出去(事实上,99%的恶意程序都没有在网络上泛滥,要么因为它们创造的本意就不是为了造成灾害,要么因为作者的技术还不成熟)。虽然Philet0ast3r对他的keylogger引以为傲,但他表示没有释放它的打算。

  部分原因是为了自我保护,他不想警察找上门。此外,破坏别人的电脑不符合他的道德标准。

  如果不是为了传播,那么创造病毒和蠕虫究竟是为了什么?

  为了纯粹的智力挑战,Philet0ast3r回答,为了创造“真正酷”的作品的乐趣。对于顶尖的病毒作者,创造新颖的、原创的作品是他们的终极目标。复制别人的病毒的行为是“蹩脚”的,在病毒作者圈子里,没有比“蹩脚”更侮辱人的词汇了。一个真正的有革命性新意的蠕虫,Philet 0ast3r说,“就像艺术。”为了让恶意程序以最快的速度传播,病毒作者必须让代码尽量简短,就像一首优雅简洁的诗,但又富于创意。“艺术的特点之一,”他补充说,“是用更少的材料表达内容。”当碰到一个棘手问题的时候,Philet0ast3r会寻求其他“预备流浪者解放阵线”成员的帮助(其中包括马里奥)。一个外国的朋友——Philet0ast3r从未与之见过面——正在帮助他完善keylogger:使受害者无法发现这个恶意程序的存在。作品完成之后,他们将把它发表在组织的网络杂志上,这是一份半年更新一次的刊物,选择发布组织成员最好的作品。

  病毒作者的地下组织很像英国维多利亚女王时代的业余科学家团体:成员们内部发表个人作品,只是为了获得同道者的认同。他们似乎都很绅士,很低调。在遇到贝尼之前,没有任何人向我炫耀他的天才。贝尼是著名地下病毒作者组织29A成员。29A成员的不断推陈出新的作品连安全专家也不得不表示佩服。本尼是捷克人,他外表整洁,有一双大眼睛。他5年前开始编写病毒,21岁的他已经是这一行中的老手。“最让我自豪的是我的新点子。”他一边说,一边领我进入他的卧室,这个房间非常整洁,杂志被叠得整整齐齐,好像用尺子量过。

  本尼——这是个网络头衔,并非他真实的名字——因在视窗2000发布两周前编写了一个感染视窗2000的病毒而出名。他在编写病毒几个月前碰到了一个微软雇员,此人吹嘘说新的视窗操作系统“无比安全”。本尼创造了(但是坚持说他没有释放)病毒来羞辱微软公司。他还编写了Levi-athan,第一个使用“多线程控制”(multithreading)技术的病毒。多线程控制技术允许计算机同时执行多个指令,好像杂耍演员同时耍几个皮球,这一技术大大加快了病毒传播的速度。本尼在29A的杂志上发表了自己的作品。今天,许多最恶毒的蠕虫都采用了他首创的技术,其中包括去年夏天泛滥的Sobig. F.。

  病毒作者的地下社会吸引了许多聪明但孤僻的年轻人,他们很可能是在现实生活中受过挫折的自由主义者

  “我是被社会抛弃的人。”沃冈(这是他对自己的称呼)承认说。沃冈是居住在加拿大多伦多的病毒作者。某天晚上,我在一个网络聊天频道碰到他。

  他大学的专业是电脑科学,发出400多份简历之后却没有一个人愿意雇佣他。

  “没有朋友、没有什么家人,多年没有交到女友”的他变得精神抑郁。他尝试过自杀,一个寒冷的冬日夜晚,他没有穿外衣跑到家附近的树林里呆了5个小时,打算冻死自己。后来他开始加入写病毒的行列,在这个地下社区找回了生活的意义。“我碰到了许多很酷的人,他们对我的作品很感兴趣。”他说,“他们让我重新振作起来。”他把自己的第一个病毒命名为“初生儿”,以庆祝自己的新生。某次他发现自己编写的一个病毒被防病毒网站列举为防范目标,感到一阵兴奋。“有点像初恋的感觉。”他说,“好几天我感觉自己就像上帝一样了不起。”他开始制造其他的蠕虫,不断寻找那种良好的感觉。“我连续3个月埋头编写一个病毒,就是为了几天做上帝的感觉。”沃冈仍然对现实生活感到忿忿不平,他说,他计划用下一个病毒向那些拒绝雇佣他的人实施报复。这个病毒将携带一个“爬虫”引擎,用于搜索网页链接,寻找那些可能属于公司人事部经理的电子邮件地址,比如像career @microsoft.com这类包含有“职业”一词的邮件地址。然后,引擎会向这些地址发送一封携带蠕虫的假简历。(他还没有决定给蠕虫配备什么样的病毒,很可能是破坏性的病毒)“这是一个复仇蠕虫”他解释说,“惩罚那些拒绝雇佣我,惩罚他们不用我却用那些比不上我一半好的失败者。”许多人对于病毒作者能够逍遥法外大惑不解。他们不知道,在许多国家,编写病毒本身并不违法。

  即使在美国,许多法律专家认为这是一种自由言论形式,应该受到保护。

  程序也是一种语言,编写程序就好像编写菜谱。程序和菜谱一样也是一连串的指令,不同的是,程序命令的执行者是电脑,执行菜谱命令的是厨师。病毒或蠕虫只有在被启动后才变得违法——当某人把它发送给受害者,让它在网络上泛滥,对电脑系统造成损害之后。顶尖的病毒作者对于这一界线再清楚不过了。多数病毒作者的网站上都有宣言称,该网站纯粹为教育目的设立,如果某人下载并传播某个病毒,后果由这个人自负。本尼用来编写病毒的电脑根本没有连接互联网。

  病毒作者辩解说,他们不该为其他人的行为负责。他们只不过是满足了自己的兴趣——编写会自我复制的电脑代码。本尼说:“我喜欢编程,喜欢向人们展示我的作品,别人要拿它做什么,不是我的问题。”一个自称“千兆字节”的女孩在网络聊天室对我说,如果政府逮捕她和其他病毒作者,他们首先应该逮捕那些制造枪械的人。

  史蒂芬•玛西森是我采访的病毒作者中最年轻的,仅有16岁。他住在底特律,网上的名字是卡非。他也是Philet0ast3r的“预备流浪者阵线”的成员。1年前,玛西森发现另一个叫“猫鱼VX”的病毒作者组织剽窃了他的代码。于是,他编写了一个专门用来嘲笑“猫鱼VX”的Evion蠕虫,张贴在自己的网站上。像玛西森的大多数作品一样,这个蠕虫没有破坏性。它只会指示系统弹射出一些傲慢的标语,比如:“猫鱼VX”是孬种。这个病毒让他们偷去吧!

  确实有人把它偷走了,因为不久之后,玛西森听说这个病毒出现在其他地方。直到今天,他仍不知道谁传播了Evion.但他怀疑是某个偶尔逛到他的网站上的ScriptKiddie.“这帮孩子,”他说,“就知道剪切,粘贴。”听着16岁的玛西森用长者的口气谈论“这些孩子”,颇为古怪。更让人奇怪的是,他似乎认为病毒作者对于病毒的传播没有一点责任。事实上,病毒作者公布在网络上的恶意程序本身就构成了对反叛无知少年的诱惑。尖刻的人会说,他们利用了幼稚的scriptkiddie,正像贩毒者利用13岁的未成年者运送毒品一样。

  一些学者正在考虑,是否能以同谋罪控告病毒作者

  他们指出创造病毒等同于提供作案工具,可以被视为协同犯罪。电脑安全公司iDefense的反病毒专家肯•登汉说,有许多证据表明,病毒作者在协助新手犯罪。他在网络聊天室里见到过这样的对话:“在哪里能找到脆弱的主机?”另一个家伙会说“XX有漏洞,你可以用XX工具。”一些病毒作者坚持认为自己有追求兴趣爱好的权利,有一部分人甚至相信他们使网络更加安全了,因为他们曝露了电脑系统的弱点。Philet0ast3r、马里奥和玛西森说,他们在写完每个病毒之后总会立即将病毒的拷贝通过电子邮件送给反病毒公司。他们声称,这样可以帮助反病毒公司设计识别并删除该病毒的软件。玛西森说,“这难道还不能证明我们的爱好是无害的吗?

  “他坚持认为,他们的爱好加强了互联网的”免疫系统。“但是也有病毒作者直言不讳地表示,写病毒的目的就是为了制造灾难。

  这类作者的代表是Melhacker,有传言说,他是住在马来西亚的一名崇拜本•拉登的黑客。反病毒公司认为他制造了多种在网上泛滥的病毒,其中包括据称是从“基地网络”散播的病毒。伊拉克战争前,Melhacker告诉一家电脑杂志说,如果美国入侵伊拉克,他将释放一个恶毒的病毒。这一誓言最后并没有实现。通过电子邮件,他告诉我,他最喜欢那些能“盗窃别人信息”的蠕虫。他拒绝透露哪些病毒是他亲手创造并释放的,也拒绝谈论他与“基地蠕虫”的关系。但是,去年12月,他通过Indovirus.net——一个病毒作者的留言板——号召病毒作者释放作品,并建议他们从网吧释放病毒,以避免被警察追踪。并呼吁人们停止把病毒拷贝送给安全公司。

  玛西森在留言板上反驳了Melhacker的观点。他认为一个优秀的病毒作者不应该散播他的作品。在很多情况下,病毒作者们比安全专家更害怕恶毒病毒被释放。因为这可能引发公众和政府对所有病毒作者的憎恶和抨击。1999年,梅丽莎病毒泛滥的时候,许多网络服务器立即关闭了恶意程序作者的网站。病毒作者纷纷在网上留言声讨梅丽莎的作者。

  最让网络警察和安全专家恐惧的并不是马里奥、Philet0ast3r和本尼这样的传统病毒作者

  无论如何,他们对这群人的习性了如指掌。最近,让反病毒专家们彻夜难眠的是一种新的威胁:为犯罪目的设计的蠕虫。这类蠕虫于去年浮出水面。

  其中Sobig尤其让病毒研究者出了一身冷汗。它在2003年里几次被释放,每次病毒发作几天或几周后自动关闭,每次重新出现都有细微的改变,这些变化说明,一系列病毒出自同一个人之手。最后一个版本的Sobig.F.于8月现身,这次,蠕虫在受害者的电脑上安插一个后门。这样做有什么意图?专家分析,病毒作者可能通过后门控制受害者的电脑,用它发送垃圾邮件,或者从受害者的电脑上窃取敏感的财务信息。

  没有人知道,是谁创造了Sobig.他没有像传统的病毒作者一样,在编码中留下任何个人信息。网络上的传闻显示,Sobig的作者来自俄罗斯或者欧洲某地。也有人认为他(或她)来自中国或者亚洲其他国家。许多人相信他可能在今年的某个时候释放新版的Sobig. Sobig并不是惟一的犯罪意图病毒。去年春天出现的各个变种的Mimail蠕虫会在受害者电脑上安插一个假提示,该提示伪装成来自在线交易公司PayPal的信息。它宣称PayPal丢失了受害者的信用卡或者银行信息,要求他再次输入。受害者输入的信息全部被发送给蠕虫作者(这个人至今逍遥法外)。还有一个叫Bug-bear.B的病毒,它使用复杂的密码猜测手段,入侵银行和股票交易所的电脑盗窃个人信息。

  间谍蠕虫的时代已经揭开序幕

  这一类蠕虫并不损害电脑数据,也不堵塞网络交通,相反的,它们尽量不露声色,躲藏进背景中,以便隐蔽地窃取信息。5年前,最可怕的是“切尔诺贝利”病毒,它删除整个硬盘。破坏硬盘的病毒逐渐减少几乎已经完全销声匿迹。恶意程序的作者学会了生物学家早已知道的道理:让病毒传播的最好办法是让感染病毒的主体生存下去。

  病毒追踪组织WildList的创始人乔•威尔斯说,“这就像埃博拉和艾滋病毒的区别,它们都致命,只是前者让人在3天内死去,后者慢慢地吞噬生命,感染的人却更多,危害更大。”被多年的实践使各种电脑病毒之间形成了一种自然选择竞赛,在这一过程中,病毒作者逐渐琢磨出生存的最佳策略。

  考虑到病毒发展的速度,在不久的将来我们可能碰上更可怕的犯罪性袭击。一些专家预言将出现一种cryptoviruses——它给被入侵电脑的数据加密,使之无法阅读。哈佛大学的电脑安全专家斯图尔特•希切说,“挽回数据的惟一办法是支付赎金。”还有“变形”蠕虫——一种能够迅速变形的恶意程序,连反病毒公司也无法识别它们的真面。29A的一个神秘的俄罗斯成员Z0mbie已经发布了一些实验性的“变形”蠕虫。几年之后移动电话病毒也可能出现,它可能用一连串的假报警电话让911系统陷入交通瘫痪。病毒的肆虐甚至威胁国家安全。美国政府官员担心,恐怖分子可能用病毒破坏美国的电信系统,在发动下一次“9•11”式袭击前制造混乱。

  在这个犯罪意图病毒的新时代,网络犯罪警察们承受巨大的压力,绝不敢轻视任何一个蠕虫,而病毒作者们发现他们的爱好变得越来越危险了。

  去年秋天,年轻的西班牙人安东尼奥就品尝到了痛苦的教训。他是一个23岁的安静的程序设计师,去年8月,他读到关于Blaster蠕虫出现以及它如何利用微软漏洞的报告。他的兴趣被调动起来,他光顾了几个病毒网站,发现了一些与Blaster相仿的简单代码。他把这些代码下载后开始研究起它的工作原理。

  10月14日,他正准备去上班,在门口却撞上了等着他的警察。他们告诉他反病毒公司熊猫软件发现他的病毒感染了12万台电脑。熊猫分析了蠕虫代码后发现程序指向安东尼奥开发的一个网站。警察通过安东尼奥的网络服务器追查到了他。警察收缴了他房间内的所有电脑,把他扔进监狱。两天后,又把他放了。这时他得到通知,他已经被炒了鱿鱼。“我没有多少钱了。”11月,我和他见面时,他告诉我。“如果我还不能尽快找到工作,几个月后,我甚至连房租也付不起了。我不得不回去依靠父母。”西班牙法庭正在考虑如何起诉他。安东尼奥的律师说,他的蠕虫没有携带任何危险的负载,没有对任何被感染的电脑造成损害。他怀疑警察抓住安东尼奥不放是为了向公众炫耀成绩,反病毒公司则想借此机会自我宣传。

  病毒可能失控,而且连累它的创造者。安东尼奥说,他的蠕虫并不是故意释放的。蠕虫在扫描电脑寻找Blaster弱点的时候扩散,接着它向所有的开放目标发送了一份自我复制的拷贝。安东尼奥以为自己很安全,因为他的电脑没有直接连接互联网,但他的电脑与室友的电脑有连接,而他的室友的电脑连接了互联网。

  安东尼奥没有想到的是,他的蠕虫会把室友的电脑看做外部目标,向之发送了一份自己的拷贝,从那里蠕虫被释放到了互联网上。他的蠕虫获得了自己的生命,好像弗兰肯斯坦创造的怪物,完全失控。

类别: 无分类 |  评论(0) |  浏览(8085) |  收藏
2006年02月13日 17:48:41

介绍一下文件权限的具体意义



一个文件都有一个所有者, 表示该文件是谁创建的. 同时, 该文件还有一个组编号, 表示该文件所属的组, 一般为文件所有者所属的组.
如果是一个可执行文件, 那么在执行时, 一般该文件只拥有调用该文件的用户具有的权限. 而setuid, setgid 可以来改变这种设置.
setuid: 设置使文件在执行阶段具有文件所有者的权限. 典型的文件是 /usr/bin/passwd. 如果一般用户执行该文件, 则在执行过程中, 该文件可以获得root权限, 从而可以更改用户的密码.
setgid: 该权限只对目录有效. 目录被设置该位后, 任何用户在此目录下创建的文件都具有和该目录所属的组相同的组.
sticky bit: 该位可以理解为防删除位. 一个文件是否可以被某用户删除, 主要取决于该文件所属的组是否对该用户具有写权限. 如果没有写权限, 则这个目录下的所有文件都不能被删除, 同时也不能添加新的文件. 如果希望用户能够添加文件但同时不能删除文件, 则可以对文件使用sticky bit位. 设置该位后, 就算用户对目录具有写权限, 也不能删除该文件.

下面说一下如何操作这些标志:
操作这些标志与操作文件权限的命令是一样的, 都是 chmod. 有两种方法来操作,
1) chmod u+s temp -- 为temp文件加上setuid标志. (setuid 只对文件有效)
chmod g+s tempdir -- 为tempdir目录加上setgid标志 (setgid 只对目录有效)
chmod o+t temp -- 为temp文件加上sticky标志 (sticky只对文件有效)
2) 采用八进制方式. 对一般文件通过三组八进制数字来置标志, 如 666, 777, 644等. 如果设置这些特殊标志, 则在这组数字之外外加一组八进制数字. 如 4666, 2777等. 这一组八进制数字三位的意义如下,
abc
a - setuid位, 如果该位为1, 则表示设置setuid
b - setgid位, 如果该位为1, 则表示设置setgid
c - sticky位, 如果该位为1, 则表示设置sticky

设置完这些标志后, 可以用 ls -l 来查看. 如果有这些标志, 则会在原来的执行标志位置上显示. 如
rwsrw-r-- 表示有setuid标志
rwxrwsrw- 表示有setgid标志
rwxrw-rwt 表示有sticky标志
那么原来的执行标志x到哪里去了呢? 系统是这样规定的, 如果本来在该位上有x, 则这些特殊标志显示为小写字母 (s, s, t). 否则, 显示为大写字母 (S, S, T)

类别: 无分类 |  评论(0) |  浏览(8833) |  收藏
« 1 23» Pages: ( 1/3 total )