探索黑客技术攻防,实战研究与安全创新

导航菜单

Windows防火墙管理命令

防火墙是电脑的重要安全壁垒,为了提高电脑数据的安全,防止黑客入侵,微软在Windows中集成了防火墙程序。在这一章中,将介绍常用的防火墙管理命令,利用这些命令可以快速设置、关闭防火墙

阻挡黑客前进的关键——防火墙

防火墙是防御黑客攻击的重要安全屏障。如果网络上的目标主机已经启用了防火墙,要入侵和控制目标t机,往往需要突破防火墙的限制。

防火墙作用简目前,防火墙总体上可以分为两大类:

.一是软件防火墙,需要安装在操作系统上,方便进行安全设置。通常我们所说的Windows防火墙、瑞星防火墙、诺顿个人防火墙、安全之星、ZoneAlann、McAfeePersonalFirewali等均属于软件防火墙,是个人电脑最重要的安全工具之一。图4-1为“Windows防火墙”对话框

A1.png

二是硬件防火墙,有的硬件防火墙安装在经过优化的UNIX、Liriux和FreeBSD等操作系统中,较适用于小型企业;有的硬件防火墙采用专门的ASIC芯片,并配置了专用的操作系统。著名的生产厂商有NetScreen、FortiNet、Cisco等,这种防火墙具有速度快、处理能力强和漏洞少等优点,但价格比较昂贵

无论是软件防火墙还是硬件防火墙,它们的作用均有共同之处,包括:

·监控网络问传送的数据。

·扫描网络通信,过滤一些攻击。

·关闭不使用的端口,禁止特定的端口通信,以封锁木马。

·过滤不安全的服务和协议,防止外部入侵者利用这些服务和协议来攻击网络。

·强化网络安全策略,集中管理所有安全软件

·监控审计网络数据,记录经过防火墙的访问日志,统计网络数据并在发现有威胁的数据时报警。

·防止内部信息泄漏,防止内部网络的DNS信息、用户登录情况、域名和lP地址等信息被外部网络获知。

·命令行修改防火墙的优势

·通过远程网络入侵主机时,可以使用命令行修改系统防火墙,它具有以下优点:

·操作便捷,执行速度快。

·无论防火墙是否开启都可以设置。

·可以将常用的命令创建为批处理文件,以便快速、定时执行这些命令。

·对网络上的主机执行溢出攻击后,远程控制被入侵的主机时,通常只有CLI(CommandLineInterface.命令行输入界面)Shell,这时可以通过命令行来修改系统防火墙,开放指定的端口或放行程序,为入侵提供了方便。

查看Windows防火墙

在WindowsXP系统中,可以通过控制面板来查看Windows防火墙的开扁状态和配置信息,方法如下:

Stepl单击“开始”按钮,选择“控制面板”命令,打开“控制面板”窗口。

StopZ单击“安全中心”链接文字,然后单击“Windows防火墙”链接丈字,4-2

A2.png

Step3打开“Windows防火墙”对话框后,在“常规”选项卡下可以选择启用或关闭防火墙,4-3,如果电脑处于公共网络,还可以阻止所有外部连接访问本机。

A3.png

Step4切换至“例外”选项卡,在“程序和服务”列表中可以查看当前允许,阻止访问网络的程序和服务名称,4-4。其中,处于选中状态的程序和服务允许访问网络。此外,还可以手动添加允许/阻止访问网络的程序或端口。

A4.png

Step5切换至“高级”选项卡后,可以设置要应用防火墙的网络连接、安全日志、ICMP配置等参数,4-5。

在WindowsXP系统中,Windows防火墙日志默认保存在C:\WINDOWS\pfirewall.Iog(这强假设系统安装在C盘),用户可以通过记事本查看日志的内容,方法如下:

Stepl启动记事本程序后,单击“文件”按钮,在其下拉菜单中选择“打开”命令,4_15。

A5.png

Step2出现“打开”对话框后,定位至C:\WINDOWS目录,然后在“文件类型”下拉列表中选择“所有文件”选项,最后选择pfirewall.log文件并单击“打开”按钮,即可查看最近的防火墙日志记录,4-7。

A6.png

命令方式修改防火墙常用设置

如果要在本地电脑设置Windows防火墙,可以通过GUI界面快速完成。如果因溢出或入侵成功而获得的cmdshell,则需要以命令方式设置防火墙

防火墙命令简介

在WindowsXP系统中,是使用Netshfirewall命令来配置Windows防火墙的,详细的命令及说

明如下:

.Netshfirewall?:显示命令帮助信息。

·Netshfirewallhelp:显示命令帮助信息。

·Netshrirewaliadd:添加防火墙允许的程序或端口配置。

·Netshfirewalldelete:删除防火墙允许的程序或端口配置。

·Netshflrewalldump:创建包含当前配置的脚本文件。

·Netshfirewallreset:将防火墙恢复成Windows系统默认的设置。

·NetshfIrewallset:设置防火墙允许的程序配置、ICMP配置、日志记录、多播广播响应配置、通知配置、操作配置、端口配置、服务配置等。

·Netshfirewallshow:显示设置防火墙允许的程序配置、ICMP配置、日志记录、多播/广播响应配置、通知配置、操作配置、端口配置、服务配置等信息。

接下来就详细说明在WindowsXI,中使用命令行配置Windows防火墙的方法

查询当前防火墙配置和状态

如果要奁询当前登录主机的Windows防火墙配置信息,可以通过Netshfirewallshowconfg命令来完成。打开命令提示符窗口,输入Netshfirewallshowconflg命令并按【Enter]键,稍候就会列出当前系统防火墙的状态,包含了以下信息,4-8

A7.png

·域和标准配置文件中启用的模式,包括操作模式、例外模式、多播/广播响应模式、通知模式等配置信息。

·域和标准配置文件中启用的防火墙服务,如本例主机上启用了文件和打印机共享服务。

·域和标准配置文件中允许通过防火墙的程序配置,疑示程序的路径、名称及是古启用

·域和标准配置文件中开放的端口配置,包括端口编号、协议及对应的进程。

·防火墙安全日志的保存位置、文件大小上限及其他记录选项。

此外,还可以执行Netshfirewallshowstate命令显示防火墙状态,此命令可查看当前防火墙的配置文件类型、启用或禁用的各种模式及开放的端口配置

A8.png

命令行关闭防火墙

入侵网络上的主机后,如果该主机当前并没有其他用户正在使用,可以选择停用防火墙,允许部署在主机上的黑客工具访问外部网络。关闭防火墙的方法如下:

打开命令提示符窗口后,输入netstopsharedaccess命令并按IEnterl键,即可停用Windows防火墙相关的服务,Windows防火墙也将随之关闭,4-9。

A9.png

在被入侵的主机完成部署后,如果需要重新启动防火墙,可以打开命令提示符窗口.输入netstart

haredaccesa命令并按【Enterl键,即町重新启用Windows防火墙相关的服务,开启Windows防火墙,如例4-10

A10.png

命令方式修改防火墙明细规

防火墙对程序和服务的监控主要通过配置防火墙规则来完成,下面将说明以命令方式修改防火墙明细规则的方法,包括开放/删除端U、添加/删除放行的程序。

开放端口

端口是一个网络lP地址与外界通信的门户,一个lP地址的端叫柯65536个,范围是0-65565。删络应用程序和服务在通信时必须通过指定的端口来完成,下面将介绍在Windows防火墙中以命令行开放和删除端口的方法。

在WindowsXP系统中,开放和设置端LJ吖以通过Addportopening命令来完成。

1.Addportopening命令和参数

A11.png

参数说明:

·protocol:端口协议类型,可选参数有TCP、UDP和ALL三个。

≯TCP:传输控制协议。

≯UDP:用户数据报协议。

》ALL:包括TCP和UDP两种协议。

·port:端口号,可设置的范围是1-65535。

·name:可选参数,自定义端口在防火墙规则中的名称,方便识别

·mode:可选参数,可以设置为ENABLE或DISABLE。

》ENABLE:允许通过防火墙。

》DISABLE:不允许通过防火墙。

·scope:可选参数,可以设置为ENABLE、SUBNET或CUSTOM。

》ENABLE:允许所有流最通过防火墙。

≯SUBNET:H允许本地子网流量通过防火墙

≯CUSTOM:只允许指定的流量通过防火墙。

·addresses:可选参数,如果scope参数指定为CUSTOM,口j’自定义IP地址范围。

·profile:可选参数,用于设置配置文件的类型。

≯CURRENT:当前配置文件。

≯DOMAIN:域配置文竹。

》STANDARD:标准配置文件。

》ALL:所有配置文件。

·InterfaCe:可选参数,用于设置接口名称。在俐。命令中,该参数不能和scope或profile参数同时使用。

范倒1

添加开放端口54,协议类型包括TCP和UDP,自定义端口名称DNS,且只能让指定IP地址范围的流量通过此端口

A12.png

除了addportopening命令之外,还可以使用setportopenmg命令来设置端Ll,这两个命令的参数和作用效果相同。

范例2

开放TCP端口8080,自定义端口名称为MywehPort

A13.png

2.查看当前开放的端口

端口设置完毕,可以通过Netshflrewallshowportopening命令来查看当前主机中开放的端口配置

A14.png

删除开放的端口

对于不需要开放的端口,可以通过deleteportopening命令将其删除。

命令格式

A15.png

参数说明:

.protocol:端口协议类型,可选参数有TCP、UDP和ALL三个。

》TCP:传输控制协议。

》UDI-:用户数据报协议。

》ALL:包括TCP和UDP两种协议。

.port:端口号,可设置的范围为1-65535。

·profile:可选参数,用于设置配置文件的类型。

》CURRENTi:当前配置文件。

》DOMAIN:域配置文件。

>STANDARD:标准配置文件。

》ALL:所有配置文件。

·interface(接口名称):是可选参数,在同一命令中,该参数不能和profile参数一起指定。

范例3

将TCP端口54从所有配置文件中删除

A16.png

范例4

将端口22从域配置文件中删除。

A17.png

添加放行程序

要设置允许通过防火墙的程序,可以通过setallowedprogram命令来完成。

命令格式:

A18.png

参数说明:

·program:用于指定程序的路径和文件名。

·name:可选参数:用于自定义允许的程序在防火墙规则中的显示名称。

·mode:可选参数:设置是否允许指定的程序通过防火墙。

≯ALL:允许通过防火墙。

≯DISABLE:不允许通过防火墙。

·scope:可选参数:设置程序可以通过防火墙的范围。

≯ALL:允许所有流量通过防火墙。

≯SUBNET:只允许本地网络子网流量通过防火墙

≯CUSTOM:只允许指定的流量通过防火墙

·addr-esses:可选参数,用于指定地址范围,只有scope参数为custom的情况下才能使用此参数。

·profile:可选参数,用于设置规则的配置文件。

≯CURRENT:当前配置文件。

>DOMAIN:域配置文件

≯STANDARD:标准配置文件。

tALL{所有配置文件。

范例5

允许保存在CI、Windows目录下的ps.exe程序通过防火墙,并将该程序配置在防火墙中的名称设置为QQ,另外限定了只能从本地子网与此程序通信,最后此规则保存在当前配置文件中。

A19.png

其实,还可以使用addallowedprogram命令添加允许的程序配置,其参数和效果与setallowedprogram命令一样。

要显示当前主机的Windows防火墙中允许的程序配置,可以通过Netshfirewallshowallowedprogram命令来完成,4-11。

A20.png

删除放行程序

对于不需要的程序配置,可以使用deleteallowedprogram命令将其从Windows防火墙中删除。

命令格式:

A21.png

参数说明:

·program:指定程序的保存路径和文件名。

·profile:可选参数,指定配置文件类型。

≯CURRENT:当前配置文件。

》DOMArN:域配置文件。

≯STANDARD:标准配置文件。

≯ALL:所有配置文件。

范倒6

将C:\windows目录下的ps.exe程序从WindoWs防火墙的当前配置文件中删除。

A22.png

设置防火墙日志配置

防火墙安全日志记录了防火墙事件,用户可以通过setlogging命令来设置Windows防火墙日志配置。

1.设置日志记录

命令格式:

A23.png

参数说明:

·filelocation:可选参数,用于设置保存日志的路径和文件名。

·maxfilesize:可选参数,用于设置臼志文件的大小上限,默认以KE:为单位,设置范围为1~32767。

·droppedpackets:可选参数,用于记录丢弃数据包日志。

》ENABLE:在防火墙中记录。

》DISABLE:在防火墙中不记录。

·connections:’可选参数,用于记录成功的连接日志。

≯ENABLE:在防火墙中记录。

≯DISABLE:在防火墙中不记录。

范例7

将防火墙安全日志记录保存在e:\windows\\pfrirewatl.log目录下,大小限制为4096(默认单位为KB),记录内容包括被丢失的数据包

A24.png

2.显示日志记录

要显示当前Windows防火墙的日志记录配置信息,可以通过showlogging命令来完成。

A25.png

设置ICMP配置

通过配置ICMP(InternetCornrolMessageProtocol,Intemet控制报文协议)可以改变防火墙对ICMP报文的处理方式。例如禁止入站回显请求,那么其他主机使用Ping检测该电脑时,就会出现“无法访问目标主机”的提示信息,无法通过Ping反馈判断主机是否开机。假如你已经掌控了一台“肉鸡”,开启防火墙并屏蔽ICMP后,可以大幅减低其他黑客与你分享“肉鸡”的机会

1.命令格式和参数

命令格式

A26.png

参数说明:

·type:用于设置ICMP类型,后面用等号=连接类型,这些类型代表的编号如下:

》2:允许出站数据包太大。

>3:允许不达出站目标。

》4:允许出站源抑制

≯5:允许重定向。

>8:允许入站回显请求。

≯9:允许入站路由器请求。

>11:允许出站超时。

>12:允许出站参数错误。

》13:允许入站时间戳请求。

≯":允许入站掩码请求。

≯ALL;所有类型

·mode:可选参数,用于设置ICMP模式,后面用等号=连接ENABLE或DISABL参数。

》ENABLE:允许通过防火墙。

》DISABLE:不允许通过防火墙。

·profile:可选参数,用于设置配置文件类型。

≯CURRENT:当前配置文件(默认值)。

》DOMAIN:域配置文件。

≯STANDARD:标准配置文件。

》ALL:所有配置文件。

·interface:可选参数,表示接口名称,后面用等号=连接接口名称。

需要注意的是,profne和interface不能在同一个命令中一起使用,当设置ICMP类型为2时,也不能在同一命令中一起指定interface接口名称。

范倒8

让所有ICMP连接类型都不允许通过防火墙

A27.png

显示ICMP配置

当需要查看Windows防火墙的ICMP配置信息时,可以通过showicmpsetting命来完成

A28.png

设置防火墙服务配置

Setservice命令除了让用户决定哪些服务可穿过Windows防火墙对外提供服务,哪些服务或程序被屏蔽之外,还能进一步精确配置服务对外工作的范围,例如只对指定的lP地址开放远程桌面服务。

1。Setservice命令和参数

命令格式

A29.png

参数说明:

.type:服务类型。

》FILEANDPRINT:文件和复印机共享。

≯REMOTEADMIN:远程管理。

》REMOTEDESKTOP:远程协助和远程桌面。

》UPNP:UPnP框架。

≯ALL:所有类型

·mode:可以设置ENABLE或DISABLE参数。

》ENABLE:允许通过防火墙。

≯DISABLE:不允许通过防火墙。

·scope是可选参数:用于指定服务范围。

≯ENABLE;允许所有流量通过防火墙。

≯SUBNET:只允许本地网络流量通过防火墙。

》CUSTOM:只允许指定地址的流量通过防火墙。

·addresses:可选参数,只有scope参数设置为CUSTOM,才能自定义范围地址。

·profile:可选参数,用于指定配置文件类型。

》CURRENT:当前配置文件。

≯DOMAIN:域配置文件。

》STANDARD:标准配置文件。

≯ALL:所有配置文件。

需要注意的是,如果mode参数设置为DISABLE,scope参数将被忽略

范例9

启用远程协助和远程桌面服务,只允许IP地址为157.60.0.1的主机通过防火墙使用此服务,此规则在所有配置文件中有效。

A30.png

范例10

将所有配置文件中的远程协助和远程桌面服务关闭

A31.png

2.显示舫火墙服务配置

要显示当前主机的Windows防火墙服务配置,可以使用Netshfirewallshowservic命令来完成

A32.png

设置防火墙通知配置

默认情况下,当Windows防火墙拦截未曾设置的程序或服务访问网络时,会出现相关的提示消息,用户可以使用setnotifcations命令来设置防火墙通知配置。

命令格式:

A33.png

·mode:通知模式,可以设置为ENABLE或DISABLE。

≯ENABLE:允许来自防火墙的弹出通知。

》DISABLE:不允许来自防火墙的弹}出通知。

·profile:可选参数,用f指定配茕文件类型,如果不使用此参数,默认保存到当前配置文件。

·CURRENT:当前配置文件。

》DOMAIN:域配置文件。

≯STANDARD:标准配置文件。

》ALL:所有配置文件。

范例11

让所有的防火墙配置都不弹出通知消息。

A34.png

恢复防火墙默认配置

如果Windows防火墙的设置过于混乱,纠正各种设置的工作量非常大,不妨使用Netshfirewallreset命令将防火墙恢复默认配置,然后重新配置详细的防火墙规则。

打开命令提示符窗口后,输入Netshtirewallreset命令并按IEnterl键,稍候片刻,防火墙即可恢复成安装系统时的状态

A35.png