All Projects → trailofbits → Onesixtyone

trailofbits / Onesixtyone

Licence: gpl-2.0
Fast SNMP Scanner

Programming Languages

c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to Onesixtyone

Msploitego
Pentesting suite for Maltego based on data in a Metasploit database
Stars: ✭ 124 (-43.12%)
Mutual labels:  snmp
3proxy
3proxy - tiny free proxy server
Stars: ✭ 2,263 (+938.07%)
Mutual labels:  network-security
Laitos
Top geek's chindogu - personal assistant over satellite/telephone/SMS/chatbot, plus web infrastructure servers (web & mail, ad-free DNS, web proxy, SNMP, etc)
Stars: ✭ 191 (-12.39%)
Mutual labels:  snmp
Reconnoitre
A security tool for multithreaded information gathering and service enumeration whilst building directory structures to store results, along with writing out recommendations for further testing.
Stars: ✭ 1,824 (+736.7%)
Mutual labels:  snmp
Snmp mib archive
An archive of over 3000 unique SNMP MIBs
Stars: ✭ 159 (-27.06%)
Mutual labels:  snmp
Ivre
Network recon framework, published by @cea-sec & @ANSSI-FR. Build your own, self-hosted and fully-controlled alternatives to Shodan / ZoomEye / Censys and GreyNoise, run your Passive DNS service, collect and analyse network intelligence from your sensors, and much more!
Stars: ✭ 2,331 (+969.27%)
Mutual labels:  network-security
Pysmi
SNMP MIB parser
Stars: ✭ 96 (-55.96%)
Mutual labels:  snmp
Snmpcollector
A full featured Generic SNMP data collector with Web Administration Interface for InfluxDB
Stars: ✭ 216 (-0.92%)
Mutual labels:  snmp
Zxrequestblock
基于NSURLProtocol一句话实现iOS应用底层所有网络请求拦截(含网页ajax请求拦截【不支持WKWebView】)、一句话实现防抓包(使Thor,Charles,Burp等代理抓包方式全部失效,且即使开启了代理,也不影响App内部的正常请求)。包含http-dns解决方法,有效防止DNS劫持。用于分析http,https请求等
Stars: ✭ 160 (-26.61%)
Mutual labels:  network-security
Netdot
Network Documentation Tool
Stars: ✭ 180 (-17.43%)
Mutual labels:  snmp
Netsec Ps Scripts
Collection of PowerShell network security scripts for system administrators.
Stars: ✭ 139 (-36.24%)
Mutual labels:  network-security
Netpwn
Tool made to automate tasks of pentesting.
Stars: ✭ 152 (-30.28%)
Mutual labels:  network-security
Fusioninventory Agent
FusionInventory Agent
Stars: ✭ 177 (-18.81%)
Mutual labels:  snmp
Autoenum
Automatic Service Enumeration Script
Stars: ✭ 134 (-38.53%)
Mutual labels:  snmp
Librenms
Community-based GPL-licensed network monitoring system
Stars: ✭ 2,567 (+1077.52%)
Mutual labels:  snmp
Mib2zabbix
SNMP Template generator for Zabbix
Stars: ✭ 111 (-49.08%)
Mutual labels:  snmp
Snimpy
interactive SNMP tool with Python
Stars: ✭ 162 (-25.69%)
Mutual labels:  snmp
Mylg
Network Diagnostic Tool
Stars: ✭ 2,538 (+1064.22%)
Mutual labels:  snmp
Mercury
Mercury: network metadata capture and analysis
Stars: ✭ 203 (-6.88%)
Mutual labels:  network-security
Thola
Tool for monitoring and provisioning network devices (mainly using SNMP) - monitoring check plugin
Stars: ✭ 179 (-17.89%)
Mutual labels:  snmp

onesixtyone

Build Status

The SNMP protocol is a stateless, datagram oriented protocol. An SNMP scanner is a program that sends SNMP requests to multiple IP addresses, trying different community strings and waiting for a reply. Unfortunately SNMP servers don't respond to requests with invalid community strings and the underlying UDP protocol does not reliably report closed UDP ports. This means that 'no response' from the probed IP address can mean either of the following:

  • machine unreachable
  • SNMP server not running
  • invalid community string
  • the response datagram has not yet arrived

The approach taken by most SNMP scanners is to send the request, wait for n seconds and assume that the community string is invalid. If only 1 of every hundred scanned IP addresses responds to the SNMP request, the scanner will spend 99*n seconds waiting for replies that will never come. This makes traditional SNMP scanners very inefficient.

onesixtyone takes a different approach to SNMP scanning. It takes advantage of the fact that SNMP is a connectionless protocol and sends all SNMP requests as fast as it can. Then the scanner waits for responses to come back and logs them, in a fashion similar to Nmap ping sweeps. By default onesixtyone waits for 10 milliseconds between sending packets, which is adequate for 100MBs switched networks. The user can adjust this value via the -w command line option. If set to 0, the scanner will send packets as fast as the kernel would accept them, which may lead to packet drop.

Running onesixtyone on a class B network (switched 100MBs with 1Gbs backbone) with -w 10 gives us a performance of 3 seconds per class C, with no dropped packets. All 65536 IP addresses were scanned in less than 13 minutes. onesixtyone sends a request for the system.sysDescr.0 value, which is present on almost all SNMP enabled devices. This returned value gives us a description of the system software running on the device. Here is an excerpt of a log file:

192.168.120.92 [1234] HP ETHERNET MULTI-ENVIRONMENT,ROM A.05.03,JETDIRECT,
JD24,EEPROM A.05.05
130.160.108.146 [public] Hardware: x86 Family 15 Model 0 Stepping 10 AT/AT
COMPATIBLE - Software: Windows 2000 Version 5.0 (Build 2195 Uniprocessor Free)
192.168.112.64 [public] Power Macintosh, hardware type 406; MacOS 9.0;
OpenTransport 2.5.2
192.168.104.254 [public] Novell NetWare 4.11  August 22, 1996
192.168.112.83 [public] Macintosh Quadra 650, System Software 7.1
192.168.244.210 [public] RICOH Aficio 850 / RICOH Network Printer D model
192.168.240.39 [public] Cisco Systems WS-C5000
192.168.244.103 [public] HPJ3210A AdvanceStack 10BT Switching Hub Management
Module, ROM A.01.02, EEPROM A.01.01, HW A.01.00

Authors

onesixtyone was designed and implemented by Alex Sotirov ([email protected]).

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].