Tuesday, May 19, 2015

Raw packet capture using ngrep as alternative to tcpdump

There are many packet capture tools available where you want to do a quick raw capture. Though tcpdump is quite popular, other tools like ngrep could be handy. To download ngrep, you can get the source code from

http://ngrep.sourceforge.net/

***********
$wget -O http://tcpdiag.dl.sourceforge.net/project/ngrep/ngrep/1.45/ngrep-1.45.tar.bz2
***********

To install from source, follow the steps below:

***********
1. sudo yum install -y libpcap-devel
2. cd /ngrep-1.45
3. ./configure 
4. make
5. sudo make install
***********

NOTE - In the "configure" step, there could be errors like

***********
more than one set found in:
/usr/include
/usr/include/pcap

please wipe out all unused pcap installations

If you get the above error, you can use the workaround documented at


pcap-bpf.h, pcap.h, pcap-namedb.h can temporarily be moved from /usr/include 


***********

The ngrep binary is placed under /usr/local/bin and you can run the ngrep utility like below:-

***********
$sudo ./ngrep -q -d eth0 -W byline host www.google.com and port 80
interface: eth0 (198.x.x.x/255.255.255.240)
filter: (ip) and ( host www.google.com and port 80 )

T 198.x.x.x:39924 -> 216.58.217.132:80 [AP]
GET / HTTP/1.1.
User-Agent: curl/7.40.0.
Host: www.google.com.
Accept: */*.
.


T 216.58.217.132:80 -> 198.x.x.x:39924 [A]
HTTP/1.1 200 OK.
Date: Tue, 19 May 2015 20:35:24 GMT.
Expires: -1.
Cache-Control: private, max-age=0.
Content-Type: text/html; charset=ISO-8859-1.
Set-Cookie: PREF=ID=376ff1b1d2b8ea9a:FF=0:TM=1432067724:LM=1432067724:S=KjiPBYS3
DtDK-mjr; expires=Thu, 18-May-2017 20:35:24 GMT; path=/; domain=.google.com.
Set-Cookie: NID=67=jb9NrkGR-kfzXjPKDJ9cYemjLXpDBALNIY0Wuq3bTT4w2vaEeNkDwIYQf2zKw
x3nUlBBaoWj81TGWswY2-PzDFfagMaBnFn-d9uI8hHbyfMa3g8e38iSTsnyXY8I-SNbcwOKiRlkWC5Y9
phHHCGTunI4mVo; expires=Wed, 18-Nov-2015 20:35:24 GMT; path=/; domain=.google.co
m; HttpOnly.
P3P: CP="This is not a P3P policy! See http://www.google.com/support/accounts/bi
n/answer.py?hl=en&answer=151657 for more info.".
Server: gws.
X-XSS-Protection: 1; mode=block.
X-Frame-Options: SAMEORIGIN.
Alternate-Protocol: 80:quic,p=1.
Accept-Ranges: none.
Vary: Accept-Encoding.
Transfer-Encoding: chunked.
.
45c1.
<!doctype html>...
***********




No comments:

Post a Comment