Add support for loongarch
[prads.git] / README.md
blob4ed26b318012857eb91bce69bb152f9bbce903cf
1 # PRADS #
3 ```text
4  ______
5 |  __  |                  __
6 | _____|.----..------..--|  |.-----. (tm)
7 |  |    |  |-'|  __  ||  _  |__  --'
8 |__|    |__|  |____|_||_____|______|
10 Passive Real-time Asset Detection system!
11 ```
13 ## Baut' ##
15 PRADS stands for `Passive Real-time Asset Detection System`. PRADS passively
16 listens to network traffic and gathers information about hosts and services
17 sending traffic. One potential use of this data is to map out your network
18 without performing an active scan (no packets are ever sent), allowing you to
19 enumerate active hosts and services. It can also be used together with your
20 favorite IDS/IPS setup for "event to application" correlation.
22 ## As is! ##
24 This program is provided 'as is'. We take no responsibility for anything :)
26 ## Lic ##
28 GPL v2 or better? See LICENSE
30 ## Install ##
32 See [doc/INSTALL](doc/INSTALL)
34 ## Usage ##
36 There are several ways to use PRADS.
37 PRADS has many commandline options, see the `prads(1)` man page.
39 ## Example ##
41 `prads -i eth0 -l prads.log`
43 If you run the prads service, the assets it sees will be dumped into
44 `/var/log/prads.log` and look like this:
46 ```text
47 10.43.2.181,0,54354,6,SYN,[65535:64:1:64:M1460,N,W2,N,N,T,S,E,E:P:MacOS:iPhone OS 3.1.3 (UC):link:ethernet/modem:uptime:1574hrs],0,1300882012
48 10.43.2.181,0,0,0,ARP (Apple),C8:BC:C8:48:65:CA,0,1300882017
49 ```
51 This information can be further processed, inserted into an SQL database etc.
53 The general format of this data is:
55 ```text
56 asset,vlan,port,proto,service,[service-info],distance,discovered
58 ... where ...
60 asset        = The ip address of the asset.
61 vlan         = The virtual lan tag of the asset.
62 port         = The port number of the detected service.
63 proto        = The protocol number of the matching fingerprint.
64 service      = The "Service" detected, like: TCP-SERVICE, UDP-SERVICE, SYN, SYNACK,MAC,.....
65 service-info = The fingerprint that the match was done on, with info.
66 distance     = Distance based on guessed initial TTL (service = SYN/SYNACK)
67 discovered   = The timestamp when the data was collected
68 ```
70 Let it sniff your network for a while and you will be able to do anomaly
71 detection.
73 ## SNORT (snort.org) ##
75 The prads2snort script may be used to convert the prads log into a
76 hosts_attribute.xml file that can be used by snort to decide fragmentation
77 policies, for better event detection.
78 http://snort.org/docs/snort_manual/node189.html
80 ## Sguil (sguil.net) ##
82 You can feed events from PRADS straight into sguil replacing pads by using
83 the sguil pads agent. PRADS supports the -f fifo argument and the 'fifo:
84 /path/to/fifo' configuration option to feed events into a FIFO.
86 ## SQL database, WebGUI etc. ##
88 This is on the agenda. There will be a webgui to the database, for easy
89 browsing of your network.