From c295728bd5f2d84ea0ea303fd95aa3f3a9913b2c Mon Sep 17 00:00:00 2001 From: Andrew Pantyukhin Date: Mon, 21 Aug 2006 07:46:31 +0000 Subject: Add port security/sinfp: SinFP is a new approach to OS fingerprinting, which bypasses limitations that nmap has. Nmap approaches to fingerprinting as shown to be efficient for years. Nowadays, with the omni-presence of stateful filtering devices, PAT/NAT configurations and emerging packet normalization technologies, its approach to OS fingerprinting is becoming to be obsolete. SinFP uses the aforementioned limitations as a basis for tests to be obsolutely avoided in used frames to identify accurately the remote operating system. That is, it only requires one open TCP port, sends only fully standard TCP packets, and limits the number of tests to 2 or 3 (with only 1 test giving the OS reliably in most cases). WWW: http://www.gomor.org/sinfp --- security/sinfp/Makefile | 62 ++++++++++++++++++++++++++++++++++++++++++++++++ security/sinfp/distinfo | 3 +++ security/sinfp/pkg-descr | 15 ++++++++++++ security/sinfp/pkg-plist | 55 ++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 135 insertions(+) create mode 100644 security/sinfp/Makefile create mode 100644 security/sinfp/distinfo create mode 100644 security/sinfp/pkg-descr create mode 100644 security/sinfp/pkg-plist (limited to 'security/sinfp') diff --git a/security/sinfp/Makefile b/security/sinfp/Makefile new file mode 100644 index 000000000000..a3570eb86f36 --- /dev/null +++ b/security/sinfp/Makefile @@ -0,0 +1,62 @@ +# New ports collection makefile for: SinFP +# Date created: 26 May 2006 +# Whom: Andrew Pantyukhin +# +# $FreeBSD$ +# + +PORTNAME= SinFP +DISTVERSION= 2.01-1 +CATEGORIES= security ipv6 perl5 +MASTER_SITES= SF + +MAINTAINER= infofarmer@FreeBSD.org +COMMENT= Full operating system stack fingerprinting suite + +LIB_DEPENDS= dnet.1:${PORTSDIR}/net/libdnet +BUILD_DEPENDS= p5-DBD-SQLite>=1.12:${PORTSDIR}/databases/p5-DBD-SQLite \ + p5-DBI>=1.50:${PORTSDIR}/databases/p5-DBI \ + p5-Bit-Vector>=6.4:${PORTSDIR}/math/p5-Bit-Vector \ + p5-Carp-Clan>=5.3:${PORTSDIR}/devel/p5-Carp-Clan \ + p5-Math-Base85>=0.2:${PORTSDIR}/math/p5-Math-Base85 \ + p5-Net-IPv4Addr>=0.10:${PORTSDIR}/net-mgmt/p5-Net-IPv4Addr \ + p5-Net-IPv6Addr>=0.2:${PORTSDIR}/net-mgmt/p5-Net-IPv6Addr \ + p5-Socket6>=0.19:${PORTSDIR}/net/p5-Socket6 \ + p5-Net-Libdnet>=0.01:${PORTSDIR}/net/p5-Net-Libdnet \ + p5-Net-Pcap>=0.12:${PORTSDIR}/net/p5-Net-Pcap \ + p5-Class-Gomor>=1.00:${PORTSDIR}/devel/p5-Class-Gomor \ + p5-DBIx-SQLite-Simple>=0.33:${PORTSDIR}/databases/p5-DBIx-SQLite-Simple \ + p5-Net-Write>=0.82:${PORTSDIR}/net/p5-Net-Write +RUN_DEPENDS= ${BUILD_DEPENDS} + +CONFLICTS= p5-Net-Packet-[0-9]* p5-Net-Packet-Target-[0-9]* +MAN3= Net::Packet.3 Net::Packet::ARP.3 Net::Packet::Consts.3 Net::Packet::Desc.3 \ + Net::Packet::DescL2.3 Net::Packet::DescL3.3 Net::Packet::DescL4.3 Net::Packet::Dump.3 \ + Net::Packet::ETH.3 Net::Packet::Env.3 Net::Packet::Frame.3 Net::Packet::ICMPv4.3 \ + Net::Packet::IPv4.3 Net::Packet::IPv6.3 Net::Packet::Layer.3 Net::Packet::Layer2.3 \ + Net::Packet::Layer3.3 Net::Packet::Layer4.3 Net::Packet::Layer7.3 Net::Packet::NULL.3 \ + Net::Packet::RAW.3 Net::Packet::SLL.3 Net::Packet::TCP.3 Net::Packet::Target.3 \ + Net::Packet::UDP.3 Net::Packet::Utils.3 Net::Packet::VLAN.3 Net::SinFP.3 Net::SinFP::Consts.3 \ + Net::SinFP::DB.3 Net::SinFP::DB::IpVersion.3 Net::SinFP::DB::Os.3 Net::SinFP::DB::OsVersion.3 \ + Net::SinFP::DB::OsVersionChildren.3 Net::SinFP::DB::OsVersionFamily.3 \ + Net::SinFP::DB::PatternBinary.3 Net::SinFP::DB::PatternTcpFlags.3 \ + Net::SinFP::DB::PatternTcpMss.3 Net::SinFP::DB::PatternTcpOptions.3 \ + Net::SinFP::DB::PatternTcpWindow.3 Net::SinFP::DB::Signature.3 Net::SinFP::DB::SystemClass.3 \ + Net::SinFP::DB::Vendor.3 Net::SinFP::Result.3 Net::SinFP::Search.3 Net::SinFP::SinFP4.3 \ + Net::SinFP::SinFP6.3 + +PERL_CONFIGURE= yes +CONFIGURE_ENV= GOMOR_PATH=${PREFIX} + +post-extract: + @${MV} ${WRKSRC}/gomor/* ${WRKSRC}/ + @cd ${WRKSRC} && ${RM} -rf dbd-sqlite dbi libdnet libpcap modules net-libdnet net-pcap \ + Makefile Class* DBIx* Net-Write* gomor + +.include + +.if ${PERL_LEVEL} < 500601 +IGNORE= perl 5.6.1 or newer required. Install lang/perl5 or lang/perl5.8 and try again +.endif + +.include diff --git a/security/sinfp/distinfo b/security/sinfp/distinfo new file mode 100644 index 000000000000..4f0a97fc30bb --- /dev/null +++ b/security/sinfp/distinfo @@ -0,0 +1,3 @@ +MD5 (SinFP-2.01-1.tar.gz) = e0e9db25030d7517393d9c63c4c4cf2e +SHA256 (SinFP-2.01-1.tar.gz) = 7e1e81498481f157f4cec2bcf6e16f1026c1756ae97442ff54942d9bdb12ff01 +SIZE (SinFP-2.01-1.tar.gz) = 2788910 diff --git a/security/sinfp/pkg-descr b/security/sinfp/pkg-descr new file mode 100644 index 000000000000..2f9ad428f127 --- /dev/null +++ b/security/sinfp/pkg-descr @@ -0,0 +1,15 @@ +SinFP is a new approach to OS fingerprinting, which bypasses +limitations that nmap has. + +Nmap approaches to fingerprinting as shown to be efficient for years. +Nowadays, with the omni-presence of stateful filtering devices, +PAT/NAT configurations and emerging packet normalization technologies, +its approach to OS fingerprinting is becoming to be obsolete. + +SinFP uses the aforementioned limitations as a basis for tests to be +obsolutely avoided in used frames to identify accurately the remote +operating system. That is, it only requires one open TCP port, sends +only fully standard TCP packets, and limits the number of tests to 2 +or 3 (with only 1 test giving the OS reliably in most cases). + +WWW: http://www.gomor.org/sinfp diff --git a/security/sinfp/pkg-plist b/security/sinfp/pkg-plist new file mode 100644 index 000000000000..8373c3472e21 --- /dev/null +++ b/security/sinfp/pkg-plist @@ -0,0 +1,55 @@ +bin/sinfp.db +bin/sinfp.pl +%%SITE_PERL%%/%%PERL_ARCH%%/auto/gomor/.packlist +%%SITE_PERL%%/Net/Packet.pm +%%SITE_PERL%%/Net/Packet/ARP.pm +%%SITE_PERL%%/Net/Packet/Consts.pm +%%SITE_PERL%%/Net/Packet/Desc.pm +%%SITE_PERL%%/Net/Packet/DescL2.pm +%%SITE_PERL%%/Net/Packet/DescL3.pm +%%SITE_PERL%%/Net/Packet/DescL4.pm +%%SITE_PERL%%/Net/Packet/Dump.pm +%%SITE_PERL%%/Net/Packet/ETH.pm +%%SITE_PERL%%/Net/Packet/Env.pm +%%SITE_PERL%%/Net/Packet/Frame.pm +%%SITE_PERL%%/Net/Packet/ICMPv4.pm +%%SITE_PERL%%/Net/Packet/IPv4.pm +%%SITE_PERL%%/Net/Packet/IPv6.pm +%%SITE_PERL%%/Net/Packet/Layer.pm +%%SITE_PERL%%/Net/Packet/Layer2.pm +%%SITE_PERL%%/Net/Packet/Layer3.pm +%%SITE_PERL%%/Net/Packet/Layer4.pm +%%SITE_PERL%%/Net/Packet/Layer7.pm +%%SITE_PERL%%/Net/Packet/NULL.pm +%%SITE_PERL%%/Net/Packet/RAW.pm +%%SITE_PERL%%/Net/Packet/SLL.pm +%%SITE_PERL%%/Net/Packet/TCP.pm +%%SITE_PERL%%/Net/Packet/Target.pm +%%SITE_PERL%%/Net/Packet/UDP.pm +%%SITE_PERL%%/Net/Packet/Utils.pm +%%SITE_PERL%%/Net/Packet/VLAN.pm +%%SITE_PERL%%/Net/SinFP.pm +%%SITE_PERL%%/Net/SinFP/Consts.pm +%%SITE_PERL%%/Net/SinFP/DB.pm +%%SITE_PERL%%/Net/SinFP/DB/IpVersion.pm +%%SITE_PERL%%/Net/SinFP/DB/Os.pm +%%SITE_PERL%%/Net/SinFP/DB/OsVersion.pm +%%SITE_PERL%%/Net/SinFP/DB/OsVersionChildren.pm +%%SITE_PERL%%/Net/SinFP/DB/OsVersionFamily.pm +%%SITE_PERL%%/Net/SinFP/DB/PatternBinary.pm +%%SITE_PERL%%/Net/SinFP/DB/PatternTcpFlags.pm +%%SITE_PERL%%/Net/SinFP/DB/PatternTcpMss.pm +%%SITE_PERL%%/Net/SinFP/DB/PatternTcpOptions.pm +%%SITE_PERL%%/Net/SinFP/DB/PatternTcpWindow.pm +%%SITE_PERL%%/Net/SinFP/DB/Signature.pm +%%SITE_PERL%%/Net/SinFP/DB/SystemClass.pm +%%SITE_PERL%%/Net/SinFP/DB/Vendor.pm +%%SITE_PERL%%/Net/SinFP/Result.pm +%%SITE_PERL%%/Net/SinFP/Search.pm +%%SITE_PERL%%/Net/SinFP/SinFP4.pm +%%SITE_PERL%%/Net/SinFP/SinFP6.pm +@dirrmtry %%SITE_PERL%%/Net/SinFP/DB +@dirrmtry %%SITE_PERL%%/Net/SinFP +@dirrmtry %%SITE_PERL%%/Net/Packet +@dirrmtry %%SITE_PERL%%/Net +@dirrmtry %%SITE_PERL%%/%%PERL_ARCH%%/auto/gomor -- cgit v1.2.3