防止网站攻击_iis服务器防止攻击

hacker|
135

iis 怎么防止攻击

首先SQL注入字段表段要设置复杂一点 不要用admin和username之类的 密码要复杂MD5加密,后台登录页最好不要暴露编写robots.txt防止google黑客。服务器里设置用户读取写入权限防止webshell提权。3389重定向 关闭ICMP报文 除了80和你远程的登录端口不要关闭之外其他都关闭。用户名和密码要设置复杂一点 要防暴库 数据库要防止下载可以加入#之类的符号

路径要复杂 网站文件不要用db admin这样的敏感名字这样很容易被扫描出网站结构的还有及时打补丁 禁止cmd禁止用户创建

禁止xp_cmdshell之类的 禁止一些组件的运行 安装防火墙及时打补丁 网站敏感信息要删除 比如conn.asp之类的 最好网站不要有上传的一些功能 等等。服务器要防止IFEO劫持和缓冲区溢出 弱口令猜解等。这些都可以在防火墙设置 推荐网络安全狗这个防火墙是免费的。 要钱好一点的老牌子 龙盾

保护 IIS web 服务器的15个技巧

通常地,大多数Web站点的设计目标都是:以最易接受的方式,为访问者提供即时的信息访问。在过去的几年中,越来越多的黑客、病毒和蠕虫带来的安全问题严重影响了网站的可访问性,尽管Apache服务器也常常是攻击者的目标,然而微软的Internet信息服务(IIS)

Web服务器才是真正意义上的众矢之的。

高级教育机构往往无法在构建充满活力、界面友好的网站还是构建高安全性的网站之间找到平衡点。另外,它们现在必须致力于提高网站安全性以面对缩减中的技术预算

(其实许多它们的私有部门也面临着相似的局面)。

正因为如此,我在这里将为预算而头疼的大学IT经理们提供一些技巧,以帮助他们保护他们的IIS服务器。虽然主要是面对大学里的IT专业人员的,但是这些技巧也基本上适用于希望通过少量的财政预算来提高安全性的IIS管理人员。实际上,这里面的一些技巧对拥有强大预算的IIS管理人员也是非常有用的。

首先,开发一套安全策略

保护Web服务器的第一步是确保网络管理员清楚安全策略中的每一项制度。如果公司高层没有把服务器的安全看作是必须被保护的资产,那么保护工作是完全没有意义的。这项工作需要长期的努力。如果预算不支持或者它不是长期IT战略的一部分,那么花费大量时间保护服务器安全的管理员将得不到管理层方面的重要支持。

网络管理员为各方面资源建立安全性的直接结果是什么呢?一些特别喜欢冒险的用户将会被关在门外。那些用户随后会抱怨公司的管理层,管理层人员又会去质问网络管理员究竟发生了什么。那么,网络管理员没办法建立支持他们安全工作的文档,因此,冲突发生了。

通过标注Web服务器安全级别以及可用性的安全策略,网络管理员将能够从容地在不同的操作系统上部署各种软件工具。

IIS安全技巧

微软的产品一向是众矢之的,因此IIS服务器特别容易成为攻击者的靶子。搞清楚了这一点后,网络管理员必须准备执行大量的安全措施。我将要为你们提供的是一个清单,服务器操作员也许会发现这是非常有用的。

1.

保持Windows升级:

你必须在第一时间及时地更新所有的升级,并为系统打好一切补丁。考虑将所有的更新下载到你网络上的一个专用的服务器上,并在该机器上以Web的形式将文件发布出来。通过这些工作,你可以防止你的Web服务器接受直接的Internet访问。

2.

使用IIS防范工具:

这个工具有许多实用的优点,然而,请慎重的使用这个工具。如果你的Web服务器和其他服务器相互作用,请首先测试一下防范工具,以确定它已经被正确的配置,保证其不会影响Web服务器与其他服务器之间的通讯。

3.

移除缺省的Web站点:

很多攻击者瞄准inetpub这个文件夹,并在里面放置一些偷袭工具,从而造成服务器的瘫痪。防止这种攻击最简单的方法就是在IIS里将缺省的站点禁用。然后,因为网虫们都是通过IP地址访问你的网站的

(他们一天可能要访问成千上万个IP地址),他们的请求可能遇到麻烦。将你真实的Web站点指向一个背部分区的文件夹,且必须包含安全的NTFS权限。

4.

如果你并不需要FTP和SMTP服务,请卸载它们:

进入计算机的最简单途径就是通过FTP访问。FTP本身就是被设计满足简单读/写访问的,如果你执行身份认证,你会发现你的用户名和密码都是通过明文的形式在网络上传播的。SMTP是另一种允许到文件夹的写权限的服务。通过禁用这两项服务,你能避免更多的黑客攻击。

5.

有规则地检查你的管理员组和服务:

有一天我进入我们的教室,发现在管理员组里多了一个用户。这意味着这时某个人已经成功地进入了你的系统,他或她可能冷不丁地将炸弹扔到你的系统里,这将会突然摧毁你的整个系统,或者占用大量的带宽以便黑客使用。黑客同样趋向于留下一个帮助服务,一旦这发生了,采取任何措施可能都太晚了,你只能重新格式化你的磁盘,从备份服务器恢复你每天备份的文件。因此,检查IIS服务器上的服务列表并保持尽量少的服务必须成为你每天的任务。你应该记住哪个服务应该存在,哪个服务不应该存在。Windows

2000

Resource

Kit带给我们一个有用的程序,叫作tlist.exe,它能列出每种情况运行在svchost

之下的服务。运行这个程序可以寻找到一些你想要知道的隐藏服务。给你一个提示:任何含有daemon几个字的服务可能不是Windows本身包含的服务,都不应该存在于IIS服务器上。

6.

严格控制服务器的写访问权限:

这听起来很容易,然而,在大学校园里,一个Web服务器实际上是有很多"作者"的。教职人员都希望让他们的课堂信息能被远程学生访问。职员们则希望与其他的职员共享他们的工作信息。服务器上的文件夹可能出现极其危险的访问权限。将这些信息共享或是传播出去的一个途径是安装第2个服务器以提供专门的共享和存储目的,然后配置你的Web服务器来指向共享服务器。这个步骤能让网络管理员将Web服务器本身的写权限仅仅限制给管理员组。

7.

设置复杂的密码:

我最近进入到教室,从事件察看器里发现了很多可能的黑客。他或她进入了实验室的域结构足够深,以至于能够对任何用户运行密码破解工具。如果有用户使用弱密码

(例如"password"或是

changeme"或者任何字典单词),那么黑客能快速并简单的入侵这些用户的账号。

8.

减少/排除Web服务器上的共享:

如果网络管理员是唯一拥有Web服务器写权限的人,就没有理由让任何共享存在。共享是对黑客最大的诱惑。此外,通过运行一个简单的循环批处理文件,黑客能够察看一个IP地址列表,利用\\命令寻找Everyone/完全控制权限的共享。

9.

禁用TCP/IP协议中的NetBIOS:

这是残忍的。很多用户希望通过UNC路径名访问Web服务器。随着NETBIOS被禁用,他们便不能这么做了。另一方面,随着NETBIOS被禁用,黑客就不能看到你局域网上的资源了。这是一把双刃剑,如果网络管理员部署了这个工具,下一步便是如何教育Web用户如何在NETBIOS失效的情况下发布信息。

10.

使用TCP端口阻塞:

这是另一个残忍的工具。如果你熟悉每个通过合法原因访问你服务器的TCP端口,那么你可以进入你网络接口卡的属性选项卡,选择绑定的TCP/IP协议,阻塞所有你不需要的端口。你必须小心的使用这一工具,因为你并不希望将自己锁在Web服务器之外,特别是在当你需要远程登陆服务器的情况下。

11.

仔细检查*.bat和*.exe

文件:

每周搜索一次*.bat

和*.exe文件,检查服务器上是否存在黑客最喜欢,而对你来说将是一场恶梦的可执行文件。在这些破坏性的文件中,也许有一些是*.reg文件。如果你右击并选择编辑,你可以发现黑客已经制造并能让他们能进入你系统的注册表文件。你可以删除这些没任何意义但却会给入侵者带来便利的主键。

12.

管理IIS目录安全:

IIS目录安全允许你拒绝特定的IP地址、子网甚至是域名。作为选择,我选择了一个被称作WhosOn的软件,它让我能够了解哪些IP地址正在试图访问服务器上的特定文件。WhosOn列出了一系列的异常。如果你发现一个家伙正在试图访问你的cmd.exe,你可以选择拒绝这个用户访问Web服务器。当然,在一个繁忙的Web站点,这可能需要一个全职的员工!然而,在内部网,这真的是一个非常有用的工具。你可以对所有局域网内部用户提供资源,也可以对特定的用户提供。

13.

使用NTFS安全:

缺省地,你的NTFS驱动器使用的是EVERYONE/完全控制权限,除非你手工关掉它们。关键是不要把自己锁定在外,不同的人需要不同的权限,管理员需要完全控制,后台管理账户也需要完全控制,系统和服务各自需要一种级别的访问权限,取决于不同的文件。最重要的文件夹是System32,这个文件夹的访问权限越小越好。在Web服务器上使用NTFS权限能帮助你保护重要的文件和应用程序。

14.管理用户账户:

如果你已经安装IIS,你可能产生了一个TSInternetUser账户。除非你真正需要这个账户,否则你应该禁用它。这个用户很容易被渗透,是黑客们的显著目标。为了帮助管理用户账户,确定你的本地安全策略没有问题。IUSR用户的权限也应该尽可能的小。

15.

审计你的Web服务器:

审计对你计算机的性能有着较大的影响,因此如果你不经常察看的话,还是不要做审计了。如果你真的能用到它,请审计系统事件并在你需要的时候加入审计工具。如果你正在使用前面提到的WhosOn工具,审计就不那么重要了。缺省地,IIS总是纪录访问,

WhosOn

会将这些纪录放置在一个非常容易易读的数据库中,你可以通过Access或是

Excel打开它。如果你经常察看异常数据库,你能在任何时候找到服务器的脆弱点。

总结

上述所有IIS技巧和工具(除了WhosOn以外)都是Windows自带的。不要忘记在测试你网站可达性之前一个一个的使用这些技巧和工具。如果它们一起被部署,结果可能让你损失惨重,你可能需要重启,从而遗失访问。

最后的技巧:

登陆你的Web服务器并在命令行下运行netstat

-an。观察有多少IP地址正尝试和你的端口建立连接,然后你将有一大堆的调查和研究要做了。

如何对FTP、IIS服务器安全防护?

1、系统盘权限设置

C:分区部分:

c:\

administrators 全部(该文件夹,子文件夹及文件)

CREATOR OWNER 全部(只有子文件来及文件)

system 全部(该文件夹,子文件夹及文件)

IIS_WPG 创建文件/写入数据(只有该文件夹)

IIS_WPG(该文件夹,子文件夹及文件)

遍历文件夹/运行文件

列出文件夹/读取数据

读取属性

创建文件夹/附加数据

读取权限

c:\Documents and Settings

administrators 全部(该文件夹,子文件夹及文件)

Power Users (该文件夹,子文件夹及文件)

读取和运行

列出文件夹目录

读取

SYSTEM全部(该文件夹,子文件夹及文件)

C:\Program Files

administrators 全部(该文件夹,子文件夹及文件)

CREATOR OWNER全部(只有子文件来及文件)

IIS_WPG (该文件夹,子文件夹及文件)

读取和运行

列出文件夹目录

读取

Power Users(该文件夹,子文件夹及文件)

修改权限

SYSTEM全部(该文件夹,子文件夹及文件)

TERMINAL SERVER USER (该文件夹,子文件夹及文件)

修改权限

2、网站及虚拟机权限设置(比如网站在E盘)

说明:我们假设网站全部在E盘wwwsite目录下,并且为每一个虚拟机创建了一个guest用户,用户名为vhost1...vhostn并且创建了一个webuser组,把所有的vhost用户全部加入这个webuser组里面方便管理

E:\

Administrators全部(该文件夹,子文件夹及文件)

E:\wwwsite

Administrators全部(该文件夹,子文件夹及文件)

system全部(该文件夹,子文件夹及文件)

service全部(该文件夹,子文件夹及文件)

E:\wwwsite\vhost1

Administrators全部(该文件夹,子文件夹及文件)

system全部(该文件夹,子文件夹及文件)

vhost1全部(该文件夹,子文件夹及文件)

3、数据备份盘

数据备份盘最好只指定一个特定的用户对它有完全操作的权限

比如F盘为数据备份盘,我们只指定一个管理员对它有完全操作的权限

4、其它地方的权限设置

请找到c盘的这些文件,把安全性设置只有特定的管理员有完全操作权限

下列这些文件只允许administrators访问

net.exe

net1.exet

cmd.exe

t

netstat.exe

regedit.exe

at.exe

attrib.exe

cacls.exe

format.com

5.删除c:\inetpub目录,删除iis不必要的映射,建立陷阱帐号,更改描述

第三招:禁用不必要的服务,提高安全性和系统效率

Computer Browser 维护网络上计算机的最新列表以及提供这个列表

Task scheduler 允许程序在指定时间运行

Routing and Remote Access 在局域网以及广域网环境中为企业提供路由服务

Removable storage 管理可移动媒体、驱动程序和库

Remote Registry Service 允许远程注册表操作

Print Spooler 将文件加载到内存中以便以后打印。要用打印机的朋友不能禁用这项

IPSEC Policy Agent 管理IP安全策略以及启动ISAKMP/OakleyIKE)和IP安全驱动程序

Distributed Link Tracking Client 当文件在网络域的NTFS卷中移动时发送通知

Com+ Event System 提供事件的自动发布到订阅COM组件

Alerter 通知选定的用户和计算机管理警报

Error Reporting Service 收集、存储和向 Microsoft 报告异常应用程序

Messenger 传输客户端和服务器之间的 NET SEND 和 警报器服务消息

Telnet 允许远程用户登录到此计算机并运行程序

第四招:修改注册表,让系统更强壮

1、隐藏重要文件/目录可以修改注册表实现完全隐藏:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\ Current-Version\Explorer\Advanced\Folder\Hi-dden\SHOWALL”,鼠标右击 “CheckedValue”,选择修改,把数值由1改为0

2、启动系统自带的Internet连接_blank"防火墙,在设置服务选项中勾选Web服务器。

3、防止SYN洪水攻击

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

新建DWORD值,名为SynAttackProtect,值为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

4. 禁止响应ICMP路由通告报文

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\interface

新建DWORD值,名为PerformRouterDiscovery 值为0

5. 防止ICMP重定向报文的攻击

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

将EnableICMPRedirects 值设为0

6. 不支持IGMP协议

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

新建DWORD值,名为IGMPLevel 值为0

7.修改终端服务端口

运行regedit,找到[HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Terminal Server \ Wds \ rdpwd \ Tds \ tcp],看到右边的PortNumber了吗?在十进制状态下改成你想要的端口号吧,比如7126之类的,只要不与其它冲突即可。

2、第二处HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Terminal Server \ WinStations \ RDP-Tcp,方法同上,记得改的端口号和上面改的一样就行了。

8、禁止IPC空连接:

cracker可以利用net use命令建立空连接,进而入侵,还有net view,nbtstat这些都是基于空连接的,禁止空连接就好了。打开注册表,找到Local_Machine\System\CurrentControlSet\Control\LSA-RestrictAnonymous 把这个值改成”1”即可。

9、更改TTL值

cracker可以根据ping回的TTL值来大致判断你的操作系统,如:

TTL=107(WINNT);

TTL=108(win2000);

TTL=127或128(win9x);

TTL=240或241(linux);

TTL=252(solaris);

TTL=240(Irix);

实际上你可以自己更改的:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters:DefaultTTL REG_DWORD 0-0xff(0-255 十进制,默认值128)改成一个莫名其妙的数字如258,起码让那些小菜鸟晕上半天,就此放弃入侵你也不一定哦

10. 删除默认共享

有人问过我一开机就共享所有盘,改回来以后,重启又变成了共享是怎么回事,这是2K为管理而设置的默认共享,必须通过修改注册表的方式取消它:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters:AutoShareServer类型是REG_DWORD把值改为0即可

11. 禁止建立空连接

默认情况下,任何用户通过通过空连接连上服务器,进而枚举出帐号,猜测密码。我们可以通过修改注册表来禁止建立空连接:

Local_Machine\System\CurrentControlSet\Control\LSA-RestrictAnonymous 的值改成”1”即可。

第五招:其它安全手段

1.禁用TCP/IP上的NetBIOS

网上邻居-属性-本地连接-属性-Internet协议(TCP/IP)属性-高级-WINS面板-NetBIOS设置-禁用TCP/IP上的NetBIOS。这样cracker就无法用nbtstat命令来读取你的NetBIOS信息和网卡MAC地址了。

2. 账户安全

首先禁止一切账户,除了你自己,呵呵。然后把Administrator改名。我呢就顺手又建了个Administrator账户,不过是什么权限都没有的那种,然后打开记事本,一阵乱敲,复制,粘贴到“密码”里去,呵呵,来破密码吧~!破完了才发现是个低级账户,看你崩溃不?

创建2个管理员用帐号

虽然这点看上去和上面这点有些矛盾,但事实上是服从上面的规则的。 创建一个一般权限帐号用来收信以及处理一些*常事物,另一个拥有Administrators 权限的帐户只在需要的时候使用。可以让管理员使用 “ RunAS” 命令来执行一些需要特权才能作的一些工作,以方便管理

3.更改C:\WINDOWS\Help\iisHelp\common\404b.htm内容改为META HTTP-EQUIV=REFRESH CONTENT="0;URL=/;"这样,出错了自动转到首页

4. 安全日志

我遇到过这样的情况,一台主机被别人入侵了,系统管理员请我去追查凶手,我登录进去一看:安全日志是空的,倒,请记住:Win2000的默认安装是不开任何安全审核的!那么请你到本地安全策略-审核策略中打开相应的审核,推荐的审核是:

账户管理 成功 失败

登录事件 成功 失败

对象访问 失败

策略更改 成功 失败

特权使用 失败

系统事件 成功 失败

目录服务访问 失败

账户登录事件 成功 失败

审核项目少的缺点是万一你想看发现没有记录那就一点都没辙;审核项目太多不仅会占用系统资源而且会导致你根本没空去看,这样就失去了审核的意义

5. 运行防毒软件

我见过的Win2000/Nt服务器从来没有见到有安装了防毒软件的,其实这一点非常重要。一些好的杀毒软件不仅能杀掉一些著名的病毒,还能查杀大量木马和后门程序。这样的话,“黑客”们使用的那些有名的木马就毫无用武之地了。不要忘了经常升级病毒库,我们推荐mcafree杀毒软件+blackice_blank"防火墙

6.sqlserver数据库服务器安全和serv-u ftp服务器安全配置,更改默认端口,和管理密码

7.设置ip筛选、用blackice禁止木马常用端口

一般禁用以下端口

135 138 139 443 445 4000 4899 7626

8.本地安全策略和组策略的设置,如果你在设置本地安全策略时设置错了,可以这样恢复成它的默认值.

打开 %SystemRoot%\Security文件夹,创建一个 "OldSecurity"子目录,将%SystemRoot%\Security下所有的.log文件移到这个新建的子文件夹中.

在%SystemRoot%\Security\database\下找到"Secedit.sdb"安全数据库并将其改名,如改为"Secedit.old".

启动"安全配置和分析"MMC管理单元:"开始"-"运行"-"MMC",启动管理控制台,"添加/删除管理单元",将"安全配置和分析"管理单元添加上.

右击"安全配置和分析"-"打开数据库",浏览"C:\WINNT\security\Database"文件夹,输入文件名"secedit.sdb",单击"打开".

当系统提示输入一个模板时,选择"Setup Security.inf",单击"打开".

如果系统提示"拒绝访问数据库",不管他.

你会发现在"C:\WINNT\security\Database"子文件夹中重新生成了新的安全数据库,在"C:\WINNT\security"子文件夹下重新生成了log文件.安全数据库重建成功.

0条大神的评论

发表评论