#network #security #scan

netscan-os

TCP/IP stack fingerprinting library for netscan

14 releases (breaking)

0.22.0 Nov 21, 2023
0.20.0 Oct 2, 2023
0.15.4 Jul 16, 2023
0.13.0 Nov 16, 2022
0.1.0 Nov 21, 2021

#1581 in Network programming

Download history 183/week @ 2023-08-10 169/week @ 2023-08-17 43/week @ 2023-08-24 156/week @ 2023-08-31 393/week @ 2023-09-07 358/week @ 2023-09-14 42/week @ 2023-09-21 241/week @ 2023-09-28 211/week @ 2023-10-05 272/week @ 2023-10-12 171/week @ 2023-10-19 73/week @ 2023-10-26 211/week @ 2023-11-02 204/week @ 2023-11-09 199/week @ 2023-11-16 61/week @ 2023-11-23

714 downloads per month
Used in netscan

MIT license

76KB
1.5K SLoC

netscan Crates.io License

Cross-platform network scan library
with the aim of being lightweight and fast.

Features

  • Port Scan (IPv4, IPv6)
    • TCP SYN scan
    • TCP CONNECT scan
  • Host Scan (IPv4, IPv6)
    • ICMP PING scan
    • TCP PING scan
    • UDP PING scan

Usage

Add netscan to your dependencies

[dependencies]
netscan = "0.22"

Example

See Examples

Feature flags

The following feature flags can be used to enable/disable specific features.

--feature service

Enable service detection.

--feature os

Enable TCP/IP Stack Fingerprinting.

--feature full

Enable all of the above.

For more details see Examples

Supported platform

  • Linux
  • macOS
  • Windows

Note for Windows users

To build on Windows, follow the instructions below.

Windows

  • You must use a version of Rust which uses the MSVC toolchain
  • You must have npcap or WinPcap installed (If using npcap, make sure to install with the "Install Npcap in WinPcap API-compatible Mode")
  • You must place Packet.lib from the Npcap SDK or WinPcap Developers pack in a directory named lib, in the root of this repository. Alternatively, you can use any of the locations listed in the %LIB%/$Env:LIB environment variables. For the 64 bit toolchain it is in <SDK>/Lib/x64/Packet.lib, for the 32 bit toolchain, it is in <SDK>/Lib/Packet.lib.

Additional Notes

This library requires the ability to create raw sockets. Execute with administrator privileges.

Dependencies

~7–43MB
~654K SLoC