描述
英文描述:
alg.exe is a part of the Microsoft Windows operating system. It is a core process for Microsoft Windows Internet Connection sharing and Internet connection firewall. This program is important for the stable and secure running of your computer and should
中文参考:
alg.exe是微软Windows操作系统自带的程序。它用于处理微软Windows网络连接共享和网络连接防火墙。应用程序网关服务,为 Internet 连接共享和 Windows防火墙提供第三方协议插件的支持。该进程属 Windows系统服务。这个程序对你系统的正常运行是非常重要的。
出品者:Microsoft Corp. 属于:Microsoft Windows Operating System
如果此文件在C:windowsalg.exe:
这是一个病毒样本eraseme_88446.exe 释放到系统中的。
C:windowsalg.exe偷偷潜入系统后,下次开机时会遇到1-2次蓝屏重启。
特点:
1、C:windowsalg.exe注册为系统服务,实现启动加载。
2、C:windowsalg.exe控制winlogon.exe进程。因此,在WINDOWS下无法终止C:windowsalg.exe进程。
3、在IceSword的“端口”列表中可见C:windowsalg.exe打开5-6个端口访问网络。
4、C:windowsalg.exe修改系统文件ftp.exe和tftp.exe。与原系统文件比较,病毒改动后的ftp.exe和tftp.exe文件大小不变,但MD5值均变为09d81f8dca0cbd5b110e53e6460b0d3b(见附图)。系统原有的正常文件ftp.exe和tftp.exe被改名为backup.ftp和backup.tftp,存放到C:WINDOWSsystem32Microsoft目录下。
杀毒流程
1、清理注册表:
(1)展开:HKLMSystemCurrentControlSetServices
删除:Application Layer Gateway Services(指向 C:windowsalg.exe)
(2)展开:HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionWinlogon
将SFCDisable的建值改为dword:00000000
(3)展开:HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionWinlogon
删除:"SFCScan"=dword:00000000
(4)展开:HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionShell Extensions
删除:"v7b5x2s1i4h3"="12/15/2006, 01:26 PM"
2、重启系统。显示隐藏文件。
3、删除C:windowsalg.exe。
4、在C:WINDOWSsystem32Microsoft目录下找到backup.ftp,改名为ftp.exe;找到backup.tftp,改名为tftp.exe。然后,将ftp.exe和tftp.exe拖拽到system32文件夹,复盖被病毒改写过的ftp.exe和tftp.exe。
软件术语
应用层网关(Application Level Gateway)
简称“ALG”(也叫应用层防火墙或应用层代理防火墙),其进程名是alg.exe,应用层网关通常被描述为第三代防火墙。当受信任网络上的用户打算连接到不受信任网络(如Internet)上的服务时,该应用被引导至防火墙中的代理服务器。代理服务器可以毫无破绽地伪装成Internet上的真实服务器。它可以对请求进行评估,并根据一套单个网络服务的规则决定允许或拒绝该请求。WinXP Home/PRO默认安装的启动类型为手动。
ALG在作为NAT穿透的应用时,因为我们知道传统的NAT不能改变应用层中的IP地址,那么一个最直接的方法就是直接改变应用层的IP地址,在得到终端的私有地址时就直接绑定其公网地址,为此后可能涉及到的互通做好准备。
1:ALG用在什么地方?
ALG用于以下两种情况:
a:应用协议需要创建动态连接,而创建动态连接所需的ip地址和端口是在协议内容中描述的。由于这些ip地址和端口是动态的,所以安全设备无法通过静态的过滤规则来允许或禁止这些连接,所以就需要动态创建连接。比如FTP协议。
b:应用协议的通讯两端经过了NAT设备。由于协议中携带的地址可能是私有网络地址,因此,需要在NAT设备上把它转换成因特网可以寻址的地址(或者协议两端设置了路由,这种方法只能在实验室里面用,不能在因特网上用),如果NAT设备需要支持多个客户端或服务器,端口也需要修改。修改协议内容,就需要同时修改数据包的长度,校验和等。如果数据包长度超过了MTU,数据包会被分片。
2:ALG的安全问题
动态连接在创建时只是对连接的部分描述(参数不完整),所以在建立真实连接时,会存在安全隐患(放大了安全设备的安全策略,有可能会创建一些未验证的连接,所以在实现ALG时,需要特别注意不要把动态连接的参数设置的过于模糊)
3:ALG中的协议解析问题
一般常见的ALG实现都是采用内容匹配的方法,直接在字符串中找相关的ip地址和端口。这样做的好处是实现简单,坏处是有时不能正确匹配协议。更好的办法是使用协议解析,但这样做比较复杂,如果是基于tcp的应用协议,还可能涉及到流重组的问题(无法确定包边界)。所以一般简单协议用内容匹配,复杂协议用协议解析(特别是基于udp的协议)
4:哪些情况下不能用ALG
如果协议内容加密,就不能使用ALG(无法解析和修改协议内容)
5:ALG相关的RFC
RFC 3027描述了ALG相关的问题。
6:ALG.exe 经常被病毒利用作为欺骗用户眼睛的手段