不要蓄意攻击软件的薄弱环节的简单介绍
作者:hacker | 分类:破解 | 浏览:179 | 日期:2022年11月27日目录:
怎样防黑客及木马软件?
安全策略:
打开管理工具
找到本地安全设置.本地策略.安全选项
1.交互式登陆.不需要按 Ctrl+Alt+Del 启用 [根据个人需要,启用比较好,但是我个人是不需要直接输入密码登陆的]
2. *** 访问.不允许SAM帐户的匿名枚举 启用
3. *** 访问.可匿名的共享 将后面的值删除
4. *** 访问.可匿名的命名管道 将后面的值删除
5. *** 访问.可远程访问的注册表路径 将后面的值删除
6. *** 访问.可远程访问的注册表的子路径 将后面的值删除
7. *** 访问.限制匿名访问命名管道和共享
8.帐户.重命名来宾帐户guest [更好写一个自己能记住中文名]让黑客去猜解guest吧,而且还得删除这个帐户,后面有详细解释]
9.帐户.重命名系统管理员帐户[建议取中文名]
E计划.用户权限分配策略:
打开管理工具
找到本地安全设置.本地策略.用户权限分配
1.从 *** 访问计算机 里面一般默认有5个用户,除Admin外我们删除4个,当然,等下我们还得建一个属于自己的ID
2.从远程系统强制关机,Admin帐户也删除,一个都不留
3.拒绝从 *** 访问这台计算机 将ID删除
4.从 *** 访问此计算机,Admin也可删除,如果不要蓄意攻击软件的薄弱环节你不使用类似3389服务
5.通过终端允许登陆 删除Remote Desktop Users
F计划.终端服务配置
打开管理工具
终端服务配置
1.打开后不要蓄意攻击软件的薄弱环节,点连接,右键,属性,远程控制,点不允许远程控制
2.常规,加密级别,高,在使用标准windows验证上点√!
3.网卡,将最多连接数上设置为0
4.高级,将里面的权限也删除.[我没设置]
再点服务器设置,在Active Desktop上,设置禁用,且限制每个使用一个会话
G计划.用户和组策略
打开管理工具
计算机管理.本地用户和组.用户
删除Support_388945a0用户等等
只留下你更改好名字的adminisrator权限
计算机管理.本地用户和组.组
组.我们就不组了.分经验的(不管他.默认设置)
X计划.DIY策略[根据个人需要]
1.当登陆时间用完时自动注销用户(本地) 防止黑客密码渗透.
2.登陆屏幕上不显示上次登陆名(远程)如果开放3389服务,别人登陆时,就不会残留有你登陆的用户名.让他去猜你的用户名去吧.
3.对匿名连接的额外限制
4.禁止按 alt+crtl+del
5.允许在未登陆前关机[防止远程关机/启动、强制关机/启动]
6.只有本地登陆用户才能访问cd-rom
7.只有本地登陆用户才能访问软驱
8.取消关机原因的提示
1、打开控制面板窗口,双击“电源选项”图标,在随后出现的电源属性窗口中,进入到“高级”标签页面;
2、在该页面的“电源按钮”设置项处,将“在按下计算机电源按钮时”设置为“关机”,单击“确定”按钮,来退出设置框;
3、以后需要关机时,可以直接按下电源按键,就能直接关闭计算机了。当然,我们也能启用休眠功能键,来实现快速关机和开机;
4、要是系统中没有启用休眠模式的话,可以在控制面板窗口中,打开电源选项,进入到休眠标签页面,并在其中将“启用休眠”选项选中就可以了。
9.禁止关机事件跟踪
开始“Start -”运行“ Run -输入”gpedit.msc “,在出现的窗口的左边部分,
选择 ”计算机配置“(Computer Configuration )- ”管理模板“
(Administrative Templates)- ”系统“(System),在右边窗口双击
“Shutdown Event Tracker” 在出现的对话框中选择“禁止”(Disabled),
点击然后“确定”(OK)保存后退出这样,你将看到类似于windows 2000的关机窗口
三、修改权限防止病毒或木马等破坏系统
winxp、windows2003以上版本适合本 *** .
因为目前的木马抑或是病毒都喜欢驻留在system32目录下,如果我们用命令限制system32的写入和修改权限的话
那么,它们就没有办法写在里面了.看命令
A命令
cacls C:windowssystem32 /G administrator:R 禁止修改、写入C:windowssystem32目录
cacls C:windowssystem32 /G administrator:F 恢复修改、写入C:windowssystem32目录
呵呵,这样病毒等就进不去了,如果你觉得这个还不够安全,
还可以进行修改觉得其他危险目录,比如直接修改C盘的权限,但修改c修改、写入后,安装软件时需先把权限恢复过来才行
B命令
cacls C: /G administrator:R 禁止修改、写入C盘
cacls C: /G administrator:F 恢复修改、写入C盘
这个 *** 防止病毒,
如果您觉得一些病毒防火墙消耗内存太大的话
此 *** 稍可解决一点希望大家喜欢这个 *** ^_^
X命令
以下命令推荐给高级管理员使用[因为win版本不同,请自行修改参数]
cacls %SystemRoot%system32cmd.exe /E /D IUSR_ComSpec 禁止 *** 用户、本地用户在命令行和gui下使用cmd
cacls %SystemRoot%system32cmd.exe /E /D IUSR_Lsa 恢复 *** 用户、本地用户在命令行和gui下使用cmd
cacls %SystemRoot%system32t /E /D IUSR_Lsa 禁止 *** 用户、本地用户在命令行和gui下使用t
cacls %SystemRoot%system32t /E /D IUSR_Lsa 恢复 *** 用户、本地用户在命令行和gui下使用t
cacls %SystemRoot%system32tftp32.exe /E /D IUSR_Lsa 禁止 *** 用户、本地用户在命令行和gui下使用tftp32.exe
cacls %SystemRoot%system32tftp32.exe /E /D IUSR_Lsa 恢复 *** 用户、本地用户在命令行和gui下使用tftp32.exe
四、重要文件名加密[NTFS格式]
此命令的用途可加密windows的密码档, *** 密码档等等^.^
命令行方式
加密不要蓄意攻击软件的薄弱环节:在DOS窗口或“开始” | “运行”的命令行中输入“cipher /e 文件名(或文件夹名)”。
解密:在DOS窗口或“开始” | “运行”的命令行中输入“cipher /d 文件名(或文件夹名)”。
五、修改注册表防御D.D.O.S
在注册表HKLMSYSTEMCurrentControlSetServicesTcpipParameters中更改以下值可以帮助你防御一定强度的DoS攻击
SynAttackProtect REG_DWORD 2
EnablePMTUDiscovery REG_DWORD 0
NoNameReleaseOnDemand REG_DWORD 1
EnableDeadGWDetect REG_DWORD 0
KeepAliveTime REG_DWORD 300,000
PerformRouterDiscovery REG_DWORD 0
EnableICMPRedirects REG_DWORD 0
更多新的防御技巧请搜索其他信息,
由于本人不敢拿自己的硬盘开玩笑,所以没做实验... ...
六、打造更安全的防火墙
只开放必要的端口,关闭其余端口.因为在系统安装好后缺省情况下,一般都有缺省的端口对外开放,
黑客就会利用扫描工具扫描那些端口可以利用,这对安全是一个严重威胁。 本人现将自己所知道的端口公布如下(如果觉得还有危险需要过滤的,请联系本人:OICQ 13946296
端口 协议 应用程序
21 TCP FTP
25 TCP *** TP
53 TCP DNS
80 TCP HTTP SERVER
1433 TCP SQL SERVER
5631 TCP PCANYWHERE
5632 UDP PCANYWHERE
6(非端口) IP协议
8(非端口) IP协议
那么,我们根据自己的经验,将下面的端口关闭
TCP
21
22
23
25 TCP *** TP
53 TCP DNS
80
135 epmap
138 [冲击波]
139 *** b
445
1025 DCE/1ff70682-0a51-30e8-076d-740be8cee98b
1026 DCE/12345778-1234-abcd-ef00-0123456789ac
1433 TCP SQL SERVER
5631 TCP PCANYWHERE
5632 UDP PCANYWHERE
3389
4444[冲击波]
4489
UDP
67[冲击波]
137 netbios-ns
161 An SNMP Agent is running/ Default community names of the SNMP Agent
关于UDP一般只有腾讯OICQ会打开4000或者是8000端口,那么,我们只运行本机使用4000端口就行了
七、保护个人隐私
1、TT浏览器
选择用另外一款浏览器浏览网站.我推荐用TT,使用TT是有道理的.
TT可以识别网页中的脚本,JAVA程序,可以很好的抵御一些恶意的脚本等等,而且TT即使被感染,你删除掉又重新安装一个就是.[TT就是腾讯的浏览器](不过有些人喜欢用MyIE,因为我使用的时间和对他的了解不是很深吧,感觉不出他对安全方面有什么优势一_一~,希望支持MyIE的朋友不要揍我,否则我会哭... ...)
2、移动“我的文档”
进入资源管理器,右击“我的文档”,选择“属性”,在“目标文件夹”选项卡中点“移动”按钮,
选择目标盘后按“确定”即可。在Windows 2003中“我的文档”已难觅芳踪,桌面、开始等处都看不到了,
建议经常使用的朋友做个快捷方式放到桌面上。
3、移动IE临时文件
进入“开始→控制面板→Internet 选项”,在“常规”选项卡的“Internet 文件”栏里点“设置”按钮,
在弹出窗体中点“移动文件夹”按钮,选择目标文件夹后,点“确定”,在弹出对话框中选择“是”,
系统会自动重新登录。点本地连接,高级,安全月志,把月志的目录更改专门分配月志的目录,
不建议是C:再重新分配月志存储值的大小,我是设置了10000KB
八、第三方软件的帮助
防火墙:天网防火墙(建议)[二道贩子注:winxp以上可以考虑用系统自带的防火墙,win2000可以考虑用IPSEC,是个锻炼的机会)
杀毒软件:卡巴斯基
二道贩子后注:
现在黑客的攻击有从传统的系统漏洞转向了你的浏览器,所以要在升级一些传统漏洞补丁的同时要注意你的浏览器.
Windows 2000服务器的安全设置
设置禁用,构建之一道防线c_
在安装完Windows 2000后,首先要装上最新的系统补丁。但即使装上了,在因特网上的任何一台机器上只要输入“\\你的IP地址\c”,然后输入用户名 Guest,密码空,就能进入你的C盘,你还是完全暴露了。解决的 *** 是禁用•格斯特账号,为管理人设置一个安全的密码,将各驱动器的共享设为不共享。同时你还要关闭不需要的服务。你可以在管理工具的服务中将它们设置为禁用,但要提醒的是一定要慎重,有的服务是不能禁用的。一般可以禁用的服务有Telnet、任务调度程序(允许程序在指定时间运行)、遥远的登记服务(允许远程注册表操作)等。这是你构建的服务器的之一道防线。-设置第二,构建第二道防线*i
© 作为校园网的服务器,很多学校将该服务器同时作为网站服务器,而第二的漏洞也是一个棘手的问题。实际上,你可以通过简单的设置,完全可以将网站的漏洞补上。你可以将第二默认的服务都停止(如图 1,FTP服务你是不需要的,要的话笔者推荐用Serv-U;“管理网站点”和“默认网站点”都会给你带来麻烦;简单邮件传输协议一般也不用),然后再新建一个网站点h
©设置好常规内容后,在“属性→主目录”的配置中对应用程序映射进行设置,删除不需要的映射(如图 2),这些映射是第二受到攻击的直接原因。如果你需要CGI和PHP的话,可参阅一些资料进行设置LB
这样,配合常规设置,你的第二就可以安全运行了,你的服务器就有了第二道防线。#_t1)
运用扫描程序,堵住安全漏洞[J=
©要做到全面解决安全问题,你需要扫描程序的帮助。笔者推荐使用X浏览(如图 3),它可以帮助你检测服务器的安全问题。rmp
扫描完成后,你要看一下,是否存在口令漏洞,若有,则马上要修改口令设置;再看一下是否存在第二漏洞,若有,请检查第二的设置。其他漏洞一般很少存在,我要提醒大家的是注意开放的端口,你可以将扫描到的端口记录下来,以方便进行下一步设置。vY)
© 封锁端口,全面构建防线YD_\1
©《 黑客大多通过端口进行入侵,所以你的服务器只能开放你需要的端口,那么你需要哪些端口呢?以下是常用端口,你可根据需要取舍:7e|
80为网网站服务;21为FTP服务;25为电子邮件简单邮件传输协议服务;110为发邮件给POP3服务。?[U
© 其他还有SQL服务者的端口1433等,你可到网上查找相关资料。那些不用的端口一定要关闭不要蓄意攻击软件的薄弱环节!关闭这些端口,我们可以通过Windows 2000的安全策略进行。B
©《借助它的安全策略,完全可以阻止入侵者的攻击。你可以通过“管理工具→本地安全策略”进入,右击“IP安全策略”,选择“创建IP安全策略”,点[下一步]。输入安全策略的名称,点[下一步],一直到完成,你就创建了一个安全策略OkQcy
接着你要做的是右击“IP安全策略”,进入管理IP筛选器和筛选器操作,在管理IP筛选器列表中,你可以添加要封锁的端口,这里以关闭ICMP和 139端口为例说明。b]}
关闭了ICMP,黑客软件如果没有强制扫描功能就不能扫描到你的机器,也砰不到你的机器。关闭ICMP的具体操作如下:点[添加],然后在名称中输入“关闭ICMP”,点右边的[添加],再点[下一步]。在源地址中选“任何IP地址”,点[下一步]。在目标地址中选择“我的IP地址”,点[下一步]。在协议中选择“ICMP”,点[下一步]。回到关闭ICMP属性窗口,即关闭了ICMP。sf7 FQ
下面我们再设置关闭 139,同样在管理IP筛选器列表中点“添加”,名称设置为“关闭 139”,点右边的“添加”,点[下一步]。在源地址中选择“任何IP地址”,点[下一步]。在目标地址中选择“我的IP地址”,点[下一步]。在协议中选择“TCP”,点[下一步]。在设置IP协议端口中选择从任意端口到此端口,在此端口中输入 139,点下一步。即完成关闭 139端口,其他的端口也同样设置,结果如图 5。f6WL
特别指出的是关闭UDP4000可以禁止校园网中的机器使用 *** 。Q
©然后进入设置管理筛选器操作,点“添加”,点下一步,在名称中输入“拒绝”,点下一步。选择“阻止”,点[下一步]。u然后关闭该属性页,右击新建的IP安全策略“安全”,打开属性页。在规则中选择“添加”,点[下一步]。选择“此规则不指定隧道”,点下一步。在选择 *** 类型中选择“所有 *** 连接”,点下一步。在IP筛选器列表中选择“关闭ICMP”,点[下一步]。在筛选器操作中选择“拒绝”,点下一步。这样你就将“关闭ICMP”的筛选器加入到名为“安全”的IP安全策略中。同样的 *** ,你可以将“关闭 139”等其他筛选器加入进来。添加后的结果如图 7。(8
©《我 最后要做的是指派该策略,只有指派后,它才起作用。 *** 是右击“安全”,在菜单中选择“所有任务”,选择“指派”。IP安全设置到此结束,你可根据自己的情况,设置相应的策略。2
©《设置完成后,你可再用X浏览进行检查,发现问题再补上。9g
通过以上的设置,你的Windows 2000服务器可以说是非常安全了。希望你早日筑起服务器的安全防护林。
Windows下权限设置详解
随着动网论坛的广泛应用和动网上传漏洞的被发现以及SQL注入式攻击越来越多的被使用,WEBSHELL让防火墙形同虚设,一台即使打了所有微软补丁、只让80端口对外开放的WEB服务器也逃不过被黑的命运。难道我们真的无能为力了吗?其实,只要你弄明白了NTFS系统下的权限设置问题,我们可以对crackers们说:NO! 要打造一台安全的WEB服务器,那么这台服务器就一定要使用NTFS和Windows NT/2000/2003。众所周知,Windows是一个支持多用户、多任务的操作系统,这是权限设置的基础,一切权限设置都是基于用户和进程而言的,不同的用户在访问这台计算机时,将会有不同的权限。DOS是个单任务、单用户的操作系统。但是我们能说DOS没有权限吗?不能!当我们打开一台装有DOS操作系统的计算机的时候,我们就拥有了这个操作系统的管理员权限,而且,这个权限无处不在。所以,我们只能说DOS不支持权限的设置,不能说它没有权限。随着人们安全意识的提高,权限设置随着NTFS的发布诞生了。
Windows NT里,用户被分成许多组,组和组之间都有不同的权限,当然,一个组的用户和用户之间也可以有不同的权限。下面我们来谈谈NT中常见的用户组。 Administrators,管理员组,默认情况下,Administrators中的用户对计算机/域有不受限制的完全访问权。分配给该组的默认权限允许对整个系统进行完全控制。所以,只有受信任的人员才可成为该组的成员。
Power Users,高级用户组,Power Users 可以执行除了为 Administrators 组保留的任务外的其他任何操作系统任务。分配给 Power Users 组的默认权限允许 Power Users 组的成员修改整个计算机的设置。但Power Users 不具有将自己添加到 Administrators 组的权限。在权限设置中,这个组的权限是仅次于Administrators的。
Users:普通用户组,这个组的用户无法进行有意或无意的改动。因此,用户可以运行经过验证的应用程序,但不可以运行大多数旧版应用程序。Users 组是最安全的组,因为分配给该组的默认权限不允许成员修改操作系统的设置或用户资料。Users 组提供了一个最安全的程序运行环境。在经过 NTFS 格式化的卷上,默认安全设置旨在禁止该组的成员危及操作系统和已安装程序的完整性。用户不能修改系统注册表设置、操作系统文件或程序文件。Users 可以关闭工作站,但不能关闭服务器。Users 可以创建本地组,但只能修改自己创建的本地组。
Guests:来宾组,按默认值,来宾跟普通Users的成员有同等访问权,但来宾帐户的限制更多。
Everyone:顾名思义,所有的用户,这个计算机上的所有用户都属于这个组。
其实还有一个组也很常见,它拥有和Administrators一样、甚至比其还高的权限,但是这个组不允许任何用户的加入,在察看用户组的时候,它也不会被显示出来,它就是SYSTEM组。系统和系统级的服务正常运行所需要的权限都是靠它赋予的。由于该组只有这一个用户SYSTEM,也许把该组归为用户的行列更为贴切。
权限是有高低之分的,有高权限的用户可以对低权限的用户进行操作,但除了Administrators之外,其他组的用户不能访问 NTFS 卷上的其他用户资料,除非他们获得了这些用户的授权。而低权限的用户无法对高权限的用户进行任何操作。
我们平常使用计算机的过程当中不会感觉到有权限在阻挠你去做某件事情,这是因为我们在使用计算机的时候都用的是Administrators中的用户登陆的。这样有利也有弊,利当然是你能去做你想做的任何一件事情而不会遇到权限的限制。弊就是以 Administrators 组成员的身份运行计算机将使系统容易受到特洛伊木马、病毒及其他安全风险的威胁。访问 Internet 站点或打开电子邮件附件的简单行动都可能破坏系统。不熟悉的 Internet 站点或电子邮件附件可能有特洛伊木马代码,这些代码可以下载到系统并被执行。如果以本地计算机的管理员身份登录,特洛伊木马可能使用管理访问权重新格式化您的硬盘,造成不可估量的损失,所以在没有必要的情况下,更好不用Administrators中的用户登陆。Administrators中有一个在系统安装时就创建的默认用户----Administrator,Administrator 帐户具有对服务器的完全控制权限,并可以根据需要向用户指派用户权利和访问控制权限。因此强烈建议将此帐户设置为使用强密码。永远也不可以从 Administrators 组删除 Administrator 帐户,但可以重命名或禁用该帐户。由于大家都知道“管理员”存在于许多版本的 Windows 上,所以重命名或禁用此帐户将使恶意用户尝试并访问该帐户变得更为困难。对于一个好的服务器管理员来说,他们通常都会重命名或禁用此帐户。Guests用户组下,也有一个默认用户----Guest,但是在默认情况下,它是被禁用的。如果没有特别必要,无须启用此账户。我们可以通过“控制面板”--“管理工具”--“计算机管理”--“用户和用户组”来查看用户组及该组下的用户。
我们用鼠标右键单击一个NTFS卷或NTFS卷下的一个目录,选择“属性”--“安全”就可以对一个卷,或者一个卷下面的目录进行权限设置,此时我们会看到以下七种权限:完全控制、修改、读取和运行、列出文件夹目录、读取、写入、和特别的权限。“完全控制”就是对此卷或目录拥有不受限制的完全访问。地位就像Administrators在所有组中的地位一样。选中了“完全控制”,下面的五项属性将被自动被选中。“修改”则像Power users,选中了“修改”,下面的四项属性将被自动被选中。下面的任何一项没有被选中时,“修改”条件将不再成立。“读取和运行”就是允许读取和运行在这个卷或目录下的任何文件,“列出文件夹目录”和“读取”是“读取和运行”的必要条件。“列出文件夹目录”是指只能浏览该卷或目录下的子目录,不能读取,也不能运行。“读取”是能够读取该卷或目录下的数据。“写入”就是能往该卷或目录下写入数据。而“特别”则是对以上的六种权限进行了细分。读者可以自行对“特别”进行更深的研究,鄙人在此就不过多赘述了。
下面我们对一台刚刚安装好操作系统和服务软件的WEB服务器系统和其权限进行全面的刨析。服务器采用Windows 2000 Server版,安装好了SP4及各种补丁。WEB服务软件则是用了Windows 2000自带的IIS 5.0,删除了一切不必要的映射。整个硬盘分为四个NTFS卷,C盘为系统卷,只安装了系统和驱动程序;D盘为软件卷,该服务器上所有安装的软件都在D盘中;E盘是WEB程序卷,网站程序都在该卷下的WWW目录中;F盘是网站数据卷,网站系统调用的所有数据都存放在该卷的WWWDATABASE目录下。这样的分类还算是比较符合一台安全服务器的标准了。希望各个新手管理员能合理给你的服务器数据进行分类,这样不光是查找起来方便,更重要的是这样大大的增强了服务器的安全性,因为我们可以根据需要给每个卷或者每个目录都设置不同的权限,一旦发生了 *** 安全事故,也可以把损失降到更低。当然,也可以把网站的数据分布在不同的服务器上,使之成为一个服务器群,每个服务器都拥有不同的用户名和密码并提供不同的服务,这样做的安全性更高。不过愿意这样做的人都有一个特点----有钱:)。好了,言归正传,该服务器的数据库为MS-SQL,MS-SQL的服务软件SQL2000安装在d:\ms-sqlserver2K目录下,给SA账户设置好了足够强度的密码,安装好了SP3补丁。为了方便网页 *** 员对网页进行管理,该网站还开通了FTP服务,FTP服务软件使用的是SERV-U 5.1.0.0,安装在d:\ftpservice\serv-u目录下。杀毒软件和防火墙用的分别是Norton Antivirus和BlackICE,路径分别为d:\nortonAV和d:\firewall\blackice,病毒库已经升级到最新,防火墙规则库定义只有80端口和21端口对外开放。网站的内容是采用动网7.0的论坛,网站程序在e:\www\bbs下。细心的读者可能已经注意到了,安装这些服务软件的路径我都没有采用默认的路径或者是仅仅更改盘符的默认路径,这也是安全上的需要,因为一个黑客如果通过某些途径进入了你的服务器,但并没有获得管理员权限,他首先做的事情将是查看你开放了哪些服务以及安装了哪些软件,因为他需要通过这些来提升他的权限。一个难以猜解的路径加上好的权限设置将把他阻挡在外。相信经过这样配置的WEB服务器已经足够抵挡大部分学艺不精的黑客了。读者可能又会问了:“这根本没用到权限设置嘛!我把其他都安全工作都做好了,权限设置还有必要吗?”当然有!智者千虑还必有一失呢,就算你现在已经把系统安全做的完美无缺,你也要知道新的安全漏洞总是在被不断的发现。权限将是你的最后一道防线!那我们现在就来对这台没有经过任何权限设置,全部采用Windows默认权限的服务器进行一次模拟攻击,看看其是否真的固若金汤。
假设服务器外网域名为,用扫描软件对其进行扫描后发现开放WWW和FTP服务,并发现其服务软件使用的是IIS 5.0和Serv-u 5.1,用一些针对他们的溢出工具后发现无效,遂放弃直接远程溢出的想法。打开网站页面,发现使用的是动网的论坛系统,于是在其域名后面加个/upfile.asp,发现有文件上传漏洞,便抓包,把修改过的ASP木马用NC提交,提示上传成功,成功得到WEBSHELL,打开刚刚上传的ASP木马,发现有MS-SQL、Norton Antivirus和BlackICE在运行,判断是防火墙上做了限制,把SQL服务端口屏蔽了。通过ASP木马查看到了Norton Antivirus和BlackICE的PID,又通过ASP木马上传了一个能杀掉进程的文件,运行后杀掉了Norton Antivirus和BlackICE。再扫描,发现1433端口开放了,到此,便有很多种途径获得管理员权限了,可以查看网站目录下的conn.asp得到SQL的用户名密码,再登陆进SQL执行添加用户,提管理员权限。也可以抓SERV-U下的ServUDaemon.ini修改后上传,得到系统管理员权限。还可以传本地溢出SERV-U的工具直接添加用户到Administrators等等。大家可以看到,一旦黑客找到了切入点,在没有权限限制的情况下,黑客将一帆风顺的取得管理员权限。
那我们现在就来看看Windows 2000的默认权限设置到底是怎样的。对于各个卷的根目录,默认给了Everyone组完全控制权。这意味着任何进入电脑的用户将不受限制的在这些根目录中为所欲为。系统卷下有三个目录比较特殊,系统默认给了他们有限制的权限,这三个目录是Documents and settings、Program files和Winnt。对于Documents and settings,默认的权限是这样分配的:Administrators拥有完全控制权;Everyone拥有读运,列和读权限;Power users拥有读运,列和读权限;SYSTEM同Administrators;Users拥有读运,列和读权限。对于Program files,Administrators拥有完全控制权;Creator owner拥有特殊权限;Power users有完全控制权;SYSTEM同Admin
计算机病毒主要特征与防范策略
计算机病毒主要特征与防范策略
目前,计算机病毒已成为困扰计算机系统安全和 *** 发展的难题.了解和掌握一些计算机病毒的基本知识,对防范计算机病毒的入侵至关重要.本文通过对计算机病毒的特征,类型和传播途径的介绍,使读者对其有一个概括的认识,并在此基础上提出了一些有效的防范措施,以减少计算机病毒所带来的危害。
1 计算机病毒的主要特征
1.1 破坏性
病毒是一种旨在破坏计算机系统的程序代码,它最明显的特点是破坏性。不过根据病毒对计算机的破坏程度,可以将病毒分为两类,一是良性病毒,这种病毒会占用电脑的内存,导致电脑反应过慢,但不会造成其他损害;二是恶性病毒,这种病毒会删除电脑内储存的数据信息、打乱重要程序等,使得用户无法继续使用计算机。
1.2 不可预见性
病毒的种类很多,不同的编码代表不同的病毒,有些经过特别处理的病毒甚至能躲过计算机审查,从而潜伏在计算机系统。当前计算机系统的研发人员为了防止病毒攻击,不断完善系统和各软件的程序,由于病毒后于系统和软件出现,因此病毒制造者总能找到系统的薄弱环节,从而编制出新的病毒,这说明病毒具有不可预见性,要时刻关注病毒变化,及时完善系统。
1.3 攻击性
病毒是一种破坏性的程序,因此必然会对电脑进行攻击。遭到病毒攻击的电脑,轻者会影响运行速度,占用内存,重者会导致重要文件被格式化,系统瘫痪,整个计算机系统无法运行。如果是企业的计算机遭到病毒攻击,极有可能会泄露商业机密,造成无法挽回的损失。
1.4 自我复制能力
病毒具有极强的自我复制能力,这种能力不仅会影响本台计算机的运行,还会通过带有病毒的'文件或程序传播到其他计算机上。病毒进入计算机就会感染一部分文件或者程序,然后病毒通过其他介质又会进入其他文件或程序,这样就形成了本台计算机的自我复制;同时,如果带病毒的程序或文件应用在其他计算机上,还会给其他计算机带来病毒威胁。
2 计算机病毒的防范措施
2.1 增强病毒防范意识,养成良好的安全使用习惯
病毒虽然不可预见,攻击性强,但是如果计算机用户能够及早预防病毒攻击,养成良好的使用习惯,这样病毒就难以找到进入计算机。
病毒的防范重在预防,如果等到电脑已经被病毒攻击后再来补救,就会造成一些损失,甚至有些重要文件就无法恢复了。所以,用户提高病毒防范意识,养成安全的使用习惯是至关重要的。首先,病毒发布者经常把病毒伪装成软件、邮件、广告等,诱引用户下载,从而攻击电脑,所以,用户在日常使用中应该通过网站下载软件程序,不可随便点击一个网页就开始下载;陌生人发来的 *** 、中奖等信息邮件不要随意点开,发送邮件前要仔细检查。其次,还有一部分病毒嵌入在文件中,当电脑运行速度突然变慢,并且程序经常出错时,用户应该检查电脑是否有病毒,并用杀毒软件进行杀毒;在适用 U 盘前要对 U 盘进行杀毒,防止病毒从U盘传播。再次,电脑上要安装防病毒软件,如 360 安全卫士、金山杀毒软件等,这些软件可以在平时对电脑的安全防护起到很好的保护作用,并定期对电脑进行病毒查杀。最后,还要把电脑的重要数据信息备份,以防万一。用户与计算机经常接触,只有用户养成良好的使用习惯,并且注意防范病毒,才能确保计算机出于安全状态,防止病毒攻击。
2.2 采用多种反病毒技术,保证 *** 系统安全可靠
目前, *** 研发人员已经相继发布了多种反病毒技术,以提高 *** 环境的可靠性和安全度。这主要是针对已经受到病毒攻击的计算机使用的,运用比较广泛的有如下三种技术:
一是实时监视技术,采用实时监视技术可以使电脑时刻处于保护状态,一旦出现病毒或疑似病毒,系统就会报警,并且自动修改系统,对电脑形成一层保护网,这样系统不用依靠防病毒软件就具有防病毒功能,而且这种技术所需的内存空间不大,不会占用系统资源。二是自动解压技术,计算机中的文件较多,大多数文件都是以压缩包的形式储存的,压缩软件能够减少文件所占内存,但是由于文件处于压缩状态,采用一般的杀毒软件难以对压缩包里的各个文件进行逐一检测,自动解压技术可以使文件的压缩与查毒同时进行。三是全平台反病毒技术,有些防病毒软件不能与计算机系统完全吻合,导致系统有些环节处于保护的空白地段,全平台反病毒技术正是针对这个情况研发的一项技术,以加强系统的抗病毒能力。
2.3 对密码进行分类设置,将密码复杂化
密码是用户保护个人隐私和个人财产的重要手段,很多软件在应用过程中都需要设置密码,密码既是个人信息的一部分,也是经常用来保护用户信息的手段之一。随着 *** 技术的发展,计算机的功能越来越多,各种业务都可以通过 *** 完成,比如网银、支付宝、 *** 、邮件等等,这些业务无一不涉及密码。
3 结束语
病毒虽然给 *** 环境造成了很大的威胁,但是相信只要用户提高病毒防范意识,同时加大反病毒技术研究,我们就能将病毒拒之于 *** 之外,提高 *** 的安全性能。
参考文献
[1] 孙涛 , 陈辉 . 计算机病毒历史及防范技术发展现状 [J]. 电脑信息 ,2012(2):348-349.
[2] 刘靖 . 现代计算机病毒及防治措施 [J].互联网技术 ,2012(7):125-126.
[3] 周小龙 . 企业计算机 *** 系统的病毒防范技术 [J]. 计算机 *** 科技 ,2012(4):259-260.
;
如何做好软件安全测试
一、软件安全性测试基本概念
软件安全性测试包括程序、 *** 、数据库安全性测试。根据系统安全指标不同测试策略也不同。
1.用户程序安全的测试要考虑问题包括:
① 明确区分系统中不同用户权限;
② 系统中会不会出现用户冲突;
③ 系统会不会因用户的权限的改变造成混乱;
④ 用户登陆密码是否是可见、可复制;
⑤ 是否可以通过绝对途径登陆系统(拷贝用户登陆后的链接直接进入系统);
⑥ 用户推出系统后是否删除了所有鉴权标记,是否可以使用后退键而不通过输入口令进入系统。
2.系统 *** 安全的测试要考虑问题包括:
① 测试采取的防护措施是否正确装配好,有关系统的补丁是否打上;
② 模拟非授权攻击,看防护系统是否坚固;
③ 采用成熟的 *** 漏洞检查工具检查系统相关漏洞;
④ 采用各种木马检查工具检查系统木马情况;
⑤ 采用各种防外挂工具检查系统各组程序的客外挂漏洞。
3.数据库安全考虑问题:
① 系统数据是否机密(比如对银行系统,这一点就特别重要,一般的网站就没有太高要求);
② 系统数据的完整性;
③ 系统数据可管理性;
④ 系统数据的独立性;
⑤ 系统数据可备份和恢复能力(数据备份是否完整,可否恢复,恢复是否可以完整)。
二、根据软件安全测试需要考虑的问题
1. 保护了最薄弱的环节
攻击者往往设法攻击最易攻击的环节,这对于您来说可能并不奇怪。即便他们在您系统各部分上花费相同的精力,他们也更可能在系统最需要改进的部分中发现问题。这一直觉是广泛适用的,因此我们的安全性测试应侧重于测试最薄弱的部分。
如果执行一个好的风险分析,进行一次最薄弱环节的安全测试,标识出您觉得是系统最薄弱的组件应该非常容易,消除最严重的风险,是软件安全测试的重要环节。
2. 是否具有纵深防御的能力
纵深防御背后的思想是:使用多重防御策略来测试软件,以至少有一层防御将会阻止完全的黑客破坏。 “保护最薄弱环节”的原则适用于组件具有不重叠的安全性功能。当涉及到冗余的安全性措施时,所提供的整体保护比任意单个组件提供的保护要强得多,纵深防御 能力的测试是软件安全测试应遵循的原则。
3. 是否有保护故障的措施
大量的例子出现在数字世界。经常因为需要支持不安全的旧版软件而出现问题。例如,比方说,该软件的原始版本十分“天真”,完全没有使用加密。现在该软件想修正这一问题,但已建立了广大的用户基础。此外,该软件已部署了许多或许在长时间内都不会升级的服务器。更新更聪明的客户机和服务器需 要同未使用新协议更新的较旧的客户机进行互操作。该软件希望强迫老用户升级,没有指望老用户会占用户基础中如此大的一部分,以致于无论如何这将真的很麻 烦。怎么办呢?让客户机和服务器检查它从对方收到的之一条消息,然后从中确定发生了什么事情。如果我们在同一段旧的软件“交谈”,那么我们就不执行加密。
怎样维护软件版权,遵守信息活动中的道德
计算机 *** 安全与职业道德的标准:1、有关知识产权1990年9月我国颁布了《中华人民共和国著作权法》,把计算机软件列为享有著作权保护的作品;1991年6月,颁布了《计算机软件保护条例》,规定计算机软件是个人或者团体的智力产品,同专利、著作一样受法律的保护任何未经授权的使用、复制都是非法的,按规定要受到法律的制裁。●人们在使用计算机软件或数据时,应遵照国家有关法律规定,尊重其作品的版权,这是使用计算机的基本道德规范。,建议人们养成良好的道德规范,具体是:●应该使用正版软件,坚决 *** 盗版,尊重软件作者的知识产权;●不对软件进行非法复制;●不要为了保护自己的软件资源而制造病毒保护程序;●不要擅自纂改他人计算机内的系统信息资源;2、有关计算机安全计算机安全是指计算机信息系统的安全。计算机信息系统是由计算机及其相关的和配套的设备、设施(包括 *** )构成的,为维护计算机系统的安全,防止病毒的入侵,我们应该注意:●不要蓄意破坏和损伤他人的计算机系统设备及资源;●不要制造病毒程序,不要使用带病毒的软件,更不要有意传播病毒给其他计算机系统(传播带有病毒的软件);●要采取预防措施,在计算机内安装防病毒软件;要定期检查计算机系统内文件是否有病毒,如发现病毒,应及时用杀毒软件清除;●维护计算机的正常运行,保护计算机系统数据的安全;●被授权者对自己享用的资源负有保护责任,口令密码不得泄露给外人;3、有关 *** 行为规范计算机 *** 正在改变着人们的行为方式、思维方式乃至社会结构,它对于信息资源的共享起到了无与伦比的巨大作用,并且蕴藏着无尽的潜能。但是 *** 的作用不是单一的,在它广泛的积极作用背后,也有使人堕落的陷阱,这些陷阱产生着巨大的反作用。其主要表现在: *** 文化的误导,传播暴力、色情内容; *** 诱发着不道德和犯罪行为; *** 的神秘性"培养"了计算机"黑客",如此等等。各个国家都制定了相应的法律法规,以约束人们使用计算机以及在计算机 *** 上的行为。例如,我国公安部公布的《计算机信息 *** 国际联网安全保护管理法》中规定任何单位和个人不得利用国际互联网 *** 、复制、查阅和传播下列信息:●煽动抗拒、破坏宪法和法律、行政法规实施的;●煽动颠覆国家政权,推翻社会主义制度的;●煽动分裂国家、破坏国家统一的;●煽动民族仇恨、破坏国家统一的;●捏造或者歪曲事实,散布谣言,扰乱社会秩序的;●宣言封建迷信、淫秽、色情、赌博、暴力、凶杀、恐怖,教唆犯罪的;●公然侮辱他人或者捏造事实诽谤他人的;●损害国家机关信誉的;●其他违反宪法和法律、行政法规的。但是,仅仅靠制定一项法律来制约人们的所有行为是不可能的,也是不实用的。相反,社会依靠道德来规定人们普遍认可的行为规范。在使用计算机时应该抱着诚实的态度、无恶意的行为,并要求自身在智力和道德意识方面取得进步。●不能利用电子邮件作广播型的宣传,这种强加与人的做法会造成别人的信箱充斥无用的信息而影响正常工作;●不应该使用他人的计算机资源,除非你得到了准许或者作出了补偿;●不应该利用计算机去伤害别人;●不能私自阅读他人的通讯文件(如电子邮件),不得私自拷贝不属于自己的软件资源;●不应该到他人的计算机里去窥探,不得蓄意破译别人口令。
如何攻破软件
如何攻破软件 James A.Whittaker 摘要 本文讨论一系列用于发现软件设计与开发中的缺陷的 *** (所谓的“攻击”)。这些攻击 都是手工、探索性的测试方式不要蓄意攻击软件的薄弱环节,设计和执行都是动态的、几乎不需要额外开销。这些攻击是 经过对上百个真实的软件缺陷进行研究并且抽象出不要蓄意攻击软件的薄弱环节他们的成因和现象之后构造出来的。经过 佛罗里达理工学院软件测试方向的学员两个学期的细化分析,已经归纳了数十个旨在发现缺 陷的攻击策略。这些攻击策略被证明非常受用,已经发现了上百个额外的缺点——都是由这 些攻击策略直接导致的——在短时间内对产品几乎没有任何了解的情况下。本文介绍上述攻 击策略的一个子集并说明他们是如何在已发布产品中发现真实缺陷。 简介 是什么成就了一名优秀的测试人员?是什么样的天赋使他们对bug 如此敏感?这样的 能力是可以传授的吗? 这些问题就是本文的主旨。我相信优秀的测试人员更多是后天造就而不是先天生成的, 事实上,多年下来许多测试人员自己似乎积累了一个攻击策略的标准库。每当他们面临测试 难题时就会重组手头的攻击策略,从而总是能够发现缺陷。尽管这些攻击策略很少被记录下 来,它们确确实实在手工测试和测试传承中扮演着重要的角色。 通过对真实的测试人员和现实缺陷的研究,我们开始着手文档化这一财富。在本文中, 我们探索来自于该项工程的一部分成果。下一个挑战是对这些攻击施行自动化,找到有效使 用的具体策略。 攻击无异于以下三个大类: 输入/输出攻击 数据攻击 运算攻击 每个类型中都有特定类型的攻击,它们导致十分有趣的软件故障。在之后的部分我以具 体的缺陷为例介绍每个大类下的攻击类型。涉及到的bug 都来自于微软公司的产品。我认为 这不该被看作是一种反微软的行为。事实上,它作为软件行业霸主的事实使它自然而然地成 为了“众矢之的”。但不能就这样认为微软的产品相对于其他软件产商有更多的缺陷。本文 中提到的攻击策略几乎成功攻击过许多公司的软件产品,这些产品运行在不要蓄意攻击软件的薄弱环节你可以想到的任何 平台上。我的经验表明,不管开发人员开发的应用产品域是什么、使用的操作系统有什么差 异亦或是否发布源码,他们都在高频度地制造bugs。如果他们是web 开发人员,那就更不 用费心了,因为web 程序本身非常容易崩溃。 输入/输出攻击 针对输入/输出的攻击就是测试人员所说的“黑盒”测试,因为不需要任何有关内部数 据或计算的信息来支持测试执行。事实上,这是测试中最常见的一种,因为阅读源码不仅乏 味、费时,并且通常收益甚微,除非你知道自己到底在寻找什么类型的bug(我们将在接下 来的两部分内容里讨论什么是你应该试图寻找的)。 输入/输出攻击 单一输入攻击 迫使所有的报错信息出现 强制指定默认值 尝试所有可用的字符集 迫使输出区域大小改变 引发显示区域溢出 迫使屏幕刷新问题出现 输入值组合攻击 迫使无效输出出现 找出不能共存的输入值组合 输入序列攻击 迫使无效输出出现 多次重复同样的输入序列 单一输入攻击 这一类攻击是对使用单一输入(从变量输入的角度来说)的行为进行的检查。我们试图 发现在大部分数据都正常工作的情况下由一个单一的输入导致应用崩溃的情况。其实除了单 单从边界值上考虑以外还有很多别的方式来选择输入用例,特别是当你希望找到真正被开发 认可的bug,而不是仅仅作为未定义的需求而忽略掉。 首先给出一些看 似简单但不易施行的 建议: 确保所有的报错信息 都出现一遍。 不能使程序正常 地中止或结束的通常 就是所谓的bug。很多 报错信息仅仅是迫使程序停止来显示一条报错信息,然后接着执行下一条输入或者直到定时 器超时而已。但是,也有其他一些报错信息则是来自于被程序抛出和异常处理器被执行引发 的异常。异常处理器(或中央错误处理线程)因其指针突然改变而数据状态不产生相应变化, 通常会存在问题。异常处理器执行的瞬间,各种各样的数据问题接踵而至:文件未关闭、内 存未释放、数据未初始化。当控制重新回到主线程,很难判断错误处理器是在什么时刻被调 用,又会有怎样的遗留问题在等待粗心大意的开发人员:因为文件没有关闭导致打开文件失 败、在没有初始化前就开始使用数据。如果我们能确保在所有的报错信息都出现过之后系统 依然正常工作,那么也算是为用户省去了不少麻烦(更不用说我们的维护工程师了)。 图1 展示了我的学生在微软 Word 2000 中发现的一个有趣的bug,一条错误提示不知为 何连续出现了两次。这个bug 是在通过单一输入攻击错误处理线程的过程中发现的。 确保软件指定默认值。 开发人员通常不记得在用户输入越界或给参数设置不合理的值时指定默认的值。有时候 强制设立默认值意味着什么也不做——然而正因为想不到,这一举措甚至难倒了优秀的开发 人员。例如,在Word 2000 中,如下对话框中有一个选择框,当不对其做任何修改时再次打 开对话框,该控件将消失。对比左右图片中的对话框。你发现什么控件消失了吗? 有的时候指定默认值需要先改变值的当前设定,然后将其设定为一个不合理的值。这种 连续的转换保证了再转换成其他可用的值前是经过设置默认值。 尝试输入变量的所有可用的字符集。 有的输入问题很简单,特别是当你使用了类似$,%,#,引号等等字符时,这些字符在 许多编程语言中有特殊意义并且作为输入被读入时通常需要特殊处理。如果开发人员未考虑 这种情况,则这些输入可能导致程序的失败。 通过改变输入内容的多少引发输出区域的改变。 聚焦于输出本身是一种发现bug 颇有成效但是极少使用的 *** 。其思想是:先假定一种 表现为bug 的输出或者行为,然后寻找能够导致这种现场产生的输入。以上所述的一个简单 的攻击例子就是通过改变输入值和输入字符串的长度来引发输出区域大小的重新计算。 一个很好的概念性例子是将时钟的时间设置为9:59,然后等待它转到10:00。一开始显 示区域是4 个字符长度而后来是5。反过来,我们设定时间为12:59(5 个字符),然后等待 其转变为1:00(4 个字符)。开发人员通常只会对初始化为空白的情况进行处理而不曾考虑 到显示区域已有数据的情况下如何更新该区域以显示不同长度的数据。 举个例子,PowerPoint 中的“艺术字”功能中有个有趣的bug。假定我们输入下图中的 一个长的字符串。 可以发现因为字符串太长,并不是整个字符串都能显示出来。但这不是问题的关键。点 击确认按钮时触发两个事件。首先,程序计算出需要的输出区域大小,然后将输入的文字填 充进去。现在,我们编辑该字符串,将它改为单个字符。 可以发现尽管现在只有单个字符,字体大小也没有改变,但显示区域大小却没有发生改 变。进一步看。如果再次编辑该字符串为多行的字符串,输出结果更有意思。 我想这部分已经介绍得比较清楚了,我们将进入下一部分。 确保对显示区域的边界的检查。 这是基于输出的另一种攻击思路,与之前的十分类似。然而,不同于之前着力于导致显 示区域内部出错,这次我们将精力集中在显示区域的外部。并且显示区域将不再重新计算显 示边界而仅仅是考虑边界溢出。 再以PowerPoint 为例,我们可以先画一个文本框,然后输入一个带上标的字符串。放 大该字符串的字体使上标的上半部分被截断。这一问题将连同之后的相关问题一起说明。 引发屏幕刷新问题。 这是使用windows 图形用户界面的用户会遇到的主要问题。对开发人员来说,更是一 个大问题:过度的刷新将导致程序变慢,而不刷新又会导致大大小小的问题,小至要求用户 强制刷新,大到导致用户的操作失败。 通常通过在屏幕上添加、删除和移动元素来触发页面刷新。这将导致背景重新绘制,如 果页面不能正确、及时地作出相应,那么这就是通常意义上的bug。其中,尝试变化所移动 的元素的距离是一种较好的方式,可以移动一点点,接着移动一大截,移动一两次,接着移 动很多次。 接着说回上面例子中的带上标的字符串,试着每次用鼠标拖动它移动一些距离,就会发 现令人讨厌的问题,如下图所示。 在Office 2000 中 经常出现的另一个与 屏幕刷新相关的问题 是文本的异常消失。 这一讨厌的问题在 Word 的页面边界附近 出现。 输入值组合攻击 第二类输入/输出 bug 主要针对多个共 同作用或相互影响的输入。例如,一个通过两个参数调用的API,其中一个参数的取值建立 在另一个参数取值的基础上。通常,bug 正是出在值组合上,因为代码的逻辑关系复杂。 找出不能共存的输入值的组合。 那么哪些值的组合是有问题的?这个问题目前还处于积极研究中,但是我们已经找到了 一个特别有效地 *** ,那就是先确定期望获得的输出,然后试着去找到对应的输入值的组合。 尝试产生无效的输出。 这是一种适用于测试人员对问题域十分清楚的有效攻击 *** 。例如,当你在测试一个计 算器并且清楚部分功能点的结果有限制时,试图找到超出范围的结果所对应的输入值组合是 值得的。但是,如果你不熟悉数学,那么这种努力很可能是浪费时间——你甚至可能将一个 不正确的结果当成正确的。 有时候windows 本身会给出提示,告诉你哪些输入是相互关联的。此时,测试人员可 以去测试这些值的范围,并且尝试触犯既定的关系。 输入序列攻击 软件中的输入就像一种正式的语言。单一的输入相当于组成语言的字母,输入的字符串 类似构成语言的句子。其中一些句子应该通过控件和输入区域的启用与禁用被过滤。通过尽 可能多地输入字符串、改变输入的顺序来测试这种问题。 选择导致无效输出的输入序列。 和上文描述这是一种找到问题输入组合的好 *** 一样,这同样是找出有问题的输入序列 的好 *** 。例如,当我们发现了Office 2000 中的一个导致文本消失的问题后,对PowerPoint 幻灯片中标题文本框进行攻击。如下的一组屏幕截图再现了一个特定的输入序列是如何导致 文本消失的。 有趣的是仅仅将文本框旋转180 度并不能发现这个bug。必须按照这样的操作顺序:旋 转180 度后,再旋转10 度(或者更多)。逆向执行以上操作并不能修正这一问题,每当点击 标题外部区域,该标题内容就会消失。 改变输入的顺序之所以善于发现bug 是因为很多操作自身成功执行的同时会遗留很多 问题,它们将导致之后的操作失败。对输入序列进行彻底的检查会暴露出很多这样的问题。 然而有时候,下面这种攻击表明:为了发现bug,根本不需要使用多种多样的输入序列。 多次重复同样的输入序列。 这种方式会对资源造成大规模占用,并且对存储数据空间造成压力,当然也包括发现其 他负面的遗留问题。遗憾的是,大多数应用程序并不清楚自身空间和时间的限制,而许多开 发人员倾向于假定资源总是足够可用的。 在Word 的公式编辑器中可以找到这方面的一个例子,程序本身似乎并不清楚它只能处 理10 层嵌套括号的计算。 数据攻击 数据是软件的命脉;如果你设法破坏了它,那么程序将不得不使用被破坏的数据,这之 后得到的就不是合理的结果。所以理解数据是如何、在何处建立是必要的。 从本质上讲,数据的存储是通过读取输入,然后将其存储在内部或者存储一些内部计算 的结果来实现的。因此,测试正是通过提供输入和执行计算来实现数据在应用程序中的传递。 数据攻击遵循以下简单原则。 数据攻击 变量值攻击 1.存储不正确的数据类型 2.使数据值超过允许的范围 数据单元大小攻击 3.溢出输入缓冲区 4.存储过多的值 5.存储太少的值 数据访问攻击 6.找出同一数据的不同修改方式 变量值攻击 这一类的攻击需要对内部存储的数据对象的数据类型和合法值进行检查。如果有对源码 的权限则这些信息可以轻易得到,但是,通过小小的探索性测试和对错误信息的关注也可以 确定大致的类型信息。 改变输入的数据类型来找出不匹配的类型。 在需要整数的区域输入字符(和类似的攻击)已经被证明十分有效,但随着现代编程语 言对类型检查和类型转换的处理变得容易,我们发现这样的攻击相对之前已经不再那么有 效。 使数据值超过允许的范围。 被存储的变量数据和输入的变量数据一样,这样的攻击方式同样适用。 数据单元大小攻击 第二类数据攻击旨在触发数据结构的溢出和下溢。换句话说。攻击试图打破预先设定的 数据对象的大小限制。 首先要说的就是典型的缓冲区溢出。 溢出输入缓冲区。 此处通过输入长字符串导致输入缓冲区溢出。这是黑客们偏好的攻击方式,因为有时候 应用程序在崩溃之后会继续执行进程。若一名黑客将一段可执行代码附在一个长字符串中输 入,程序很可能执行这段代码。 在Word 2000 中的一个缓冲区溢出问题就是这样一个可被利用的bug。此bug 被发现在 查找/替换功能中,如下所示。有趣的是,“查找”这一字段被合理地加以限制而“替换”没 有。 同一数据结构 存储过多的值。 复杂地数 据结构诸如数 组、矩阵和列表 在测试中不仅 仅要考虑存储 在其中的数值, 还要考虑存储 值的数目。 同一数据结构 存储过少的值。 当数据结 构允许增加和 删除信息时,通 常在做了n-1 次增加的同时穿插着或在其之后做n 次删除操作会导致攻击成功。 数据访问攻击 我的朋友Alan Jorgensen 喜欢用“右手不明左手所为”这句话来形容这一类bug。道理 很简单,但开发人员却常倒在这一类攻击下:在很多程序中通常任何任务都能通过多种途径 完成。对测试人员来说,这意味着同一个函数可以由多个入口来调用,这些入口都必须确保 该函数的初始条件得到满足。 一个极好的例子是我的学生在PowerPoint 中发现的表格数据大小相关的崩溃性bug。创 建表格时更大尺寸被限定为25×25。然而,可以创建一个25×25 的表格,然后为其添加行 和列——导致应用程序崩溃。这就是说,程序一方面不允许26×26 的表格存在而另一方面 却并不清楚这个规则的存在。 运算攻击 运算攻击 操作数攻击 使用非法操作数进行运算 找出非法操作数组合 结果攻击 使运算结果过大 使运算结果过小 功能相互作用攻击 找出共享数据不佳的功能 操作数攻击 这类攻击需要知道在一个或更多内部运算中操作数的数据类型和可用的值。如果有源码 权限则这些信息可以轻易获得。否则,测试人员必须尽更大努力去弄清楚正在进行的运算具 体是什么、使用的是什么数据类型。 触发由非法操作数引起的运算。 有时候输入或存储的数据处于合法的范围之中,但是在某些运算类型中却是非法的。被 0 除就是一个很好的例子。0 是一个合法的整数,但作为除法运算的除数却是非法的。 找出不能共存的操作数的组合。 涉及到一个以上操作数的运算不仅受制于上面的攻击,同时存在操作数冲突的可能性。 结果攻击 第二类运算攻击旨在造成存储运算结果的数据对象的溢出和下溢。 试图造成运算结果过大而存储失败。 就算是简单如y=x+1 这样的运算在数值边界上也常出问题。如果x 和y 都是2 比特的 整数并且x 的值为32768,则这一运算将失败,因为结果将会造成存储溢出。 试图造成运算结果过小而存储失败。 和上文相同,不同的是使用y=x-1 并且使x 的值为-32767。 功能相互作用攻击 文章中讨论的这最后一类攻击或许算是所有种类的鼻祖,可以用来区分测试菜鸟和专业 人员:功能的相互作用。问题没有什么新意:不同的应用程序功能共享同一数据空间。两种 功能的相互作用导致应用程序失败,不是因为对数据处理的设定不同,就是因为产生了不良 副作用。 但是哪些功能共享数据并且能够在冲突情况下实现数据转化目前还是测试领域中一个 开放的问题。目前我们正停留在不断地尝试阶段。下面这个例子足以说明情况。 这个例子给出了在Word 2000 中的同一页面上合并脚注和双列时出现的一个出人意料 的结果。问题在于:Word 从注释的引用点计算脚注的页面宽度。所以,若同一页面上存在 两条脚注,一条被处于双列位置的内容所引用,另一条则被处于单列位置的内容所引用,单 列脚注会将双列脚注挤到下一页面。同时被挤掉的还有引用点至页面底部间的文本。 下面的屏幕 截图形象地 说明了问题。 第二列的文 本 去 哪 里 了?连同脚 注一起处在 下一页。你会 任由文档像 这 样 显 示 吗?在找到解决 *** (这意味着你得花时间去整理)前你将不得不忍受这一现状。 结论 简单遍历一遍上面罗列的21种攻击策略可以覆盖应用程序的大部分功能。事实上,施行 一次成功的攻击通常意味着尝试各种可能性,走过很多死胡同。但是仅仅因为部分这一类探 索性 *** 发现不了bug并不意味着它们没有用。首先,这段时间使用应用程序帮助测试人员 熟悉程序的各种功能,从而产生新的攻击思路。其次,测试通过是好的消息不要蓄意攻击软件的薄弱环节!它们表明,产 品是可靠的:尤其当这组测试是上面所说的恶意攻击。如果代码可以承受这样的测试过程, 它几乎可以应对用户作出的任何操作。 另外,永远不要低估了测试时怀揣一个具体目标的作用。我见过太多测试人员把时间浪 费在毫无目的地输入或者随机地调用API试图导致软件出错。实行测试意味着制定明确的目 标——基于会出错的点——然后设计测试用例来实践该目标。这样,每个测试用例都有目的 性并且进度可以被随时控制。 最后,记住,测试应该是有趣的。攻击这一比喻正是对测试的这一特性很好的诠释并且 还为愉快的消遣时光添加了些许作料。狩猎愉快!
当在手机中发现恶意软件的时候,我们该怎么办?
全球每天都有数十亿活跃用户使用智能手机。对于大多数人来说,智能手机是必不可少的沟通、社交、工作、娱乐和支付……工具,我们有很多个人数据存储在手机里,它更像是我们的记忆和钱包。
由于智能手机用户的庞大数量和手机中珍贵的信息,它已成为数字犯罪的主要目标,恶意软件是他们的犯罪工具。恶意软件又称“流氓软件”,一般是指通过 *** 、存储设备等渠道传播,故意向个人智能设备、服务器等造成隐私或数据泄露,对系统造成损害等。这些软件包括间谍软件、勒索软件、广告软件和其他可能危及私人数据的程序。
据著名的杀毒软件数据显示,2018年手机恶意软件攻击比上一年几乎翻了一番。这意味着流行的智能手机越来越容易受到恶意软件的攻击。
手机有恶意软件,通常有以下说明:
一、 电池耗电太多。也许你不怎么使用软件,或者你不经常使用手机,但是电总是消耗得很快,这可能是因为恶意软件已经在后台运行了。
二、数据流显著增加。一些恶意程序会占用手机流量,如果仔细注意就会发现数据流量突然增加,甚至瞬间达到几MB/s的传输速度。
三、软件没有安装。恶意软件通常不让用户看到手机桌面上的恶意软件,只进入设置,点击应用扩展列表,逐一查找,是否有可疑软件。
四、存储空间未知的原因。一些新的恶意软件会在自动安装后消失,随后会有更多新的恶意软件消失。我们看不到文件夹中的任何新文件,但恶意病毒可能已经填满了存储空间。
如何做到恶意软件真正出现,最有效的 *** 就是让手机重启并进入安全模式,这种安全模式类似于windows安全模式,即在启动时禁用第三方应用程序运行。进入手机安全模式后,找到恶意程序并删除。至于如何进入手机安全模式,每个手机都有不同,可能需要专业技能。但是,并不是每个用户都是专业的,这种恶意攻击,不得不使用杀毒软件来试图摧毁它,但不一定成功。
当然,在恶意软件出现之前,更好是防范它。以下是一些健康手机的建议:
一、 选择可靠、安全、好的记录软件。一些旨在传播恶意软件的非法程序,一旦安装,数十个恶意软件就会自动安装在手机上。
二、 适当安装防护软件,定期执行扫描系统。保护软件检测要安装的软件包,如果发现恶意软件,则提示不要安装。
三、到官方网站或可信平台下载个人软件。有些恶意软件会被包装成和普通软件一样的外观,其实就是恶意软件,所以下载软件到可信任的平台上,以免上当受骗。
四、有可疑链接,不要点击。短信、邮箱、社交记录等,出现未知,有可疑链接,不要点击,这可能是恶意病毒访问端口。
只要我们在使用智能手机时具备常识、警惕性,更加注意手机的变化,比如保护大脑和钱包来保护自己的手机,那么恶意软件就不容易安装在我们的手机上。