Ngrep

ngrep (network grep), Jordan Ritter tarafından yazılmış bir ağ paket çözümleyicisidir. Bir komut satırı arayüzüne sahiptir, pcap kütüphanesine ve GNU regex kütüphanesine dayanır.

ngrep, ağ kaynaklarını veya hedeflerini veya protokollerini seçmek için Berkeley Packet Filter (BPF) mantığını destekler ve ayrıca GNU kullanarak paketlerin veri yükünde kalıpların veya düzenli ifadelerin eşleştirilmesine ve paket verilerinin insan dostu bir şekilde gösteren grep sözdizimine izin verir.

ngrep açık kaynaklı bir uygulamadır ve kaynak kodu GitHub üzerindeki ngrep sitesinden indirilebilir. Derlenebilir ve birden fazla platforma taşınabilir, birçok UNIX benzeri işletim sistemleri: Linux, Solaris, illumos, BSD, AIX ve ayrıca Microsoft Windows üzerinde de çalışır.

İşlevsellik
ngrep tcpdump'a benzer, ancak paketin yükünde bir düzenli ifade (regex) arama ve eşleşen paketleri bir ekranda veya konsolda gösterme yeteneğine sahiptir. Kullanıcıların ağ arayüzünü promiscuous moda geçirerek ağ üzerinden geçen tüm şifrelenmemiş trafiği görmelerini sağlar.

ngrep, uygun bir BPF filtre sözdizimiyle, HTTP, SMTP, FTP, DNS gibi düz metin protokol etkileşimlerinde hata ayıklamak veya  düzenli ifade sözdizimini kullanarak belirli bir dize veya desen aramak için kullanılabilir.

ngrep ayrıca kablo üzerindeki trafiği yakalamak ve pcap döküm dosyalarını saklamak veya tcpdump veya wireshark gibi diğer sniffer uygulamaları tarafından oluşturulan dosyaları okumak için de kullanılabilir.

ngrep'in çeşitli seçenekleri veya komut satırı argümanları vardır. 
ngrep yardım sayfası (man page) Unix benzeri işletim sistemleri içinde mevcut seçeneklerin bir listesini gösterir.

ngrep kullanım örnekleri
Aşağıdaki örneklerde, kullanılan ağ arayüzünün eth0 olduğu varsayılmaktadır.

 eth0 arayüzüne gelen/giden ağ trafiğini yakalar ve HTTP (TCP/80) GET veya POST yöntemlerini takip eden parametreleri gösterir:

$ ngrep -l -q -d eth0 -i "^GET |^POST " tcp and port 80

 eth0 arayüzüne gelen/giden ağ trafiğini yakalar ve HTTP (TCP/80) Kullanıcı Aracısı dizesini gösterir:

$ ngrep -l -q -d eth0 -i "User-Agent: " tcp and port 80

 eth0 arayüzüne gelen/giden ağ trafiğini yakalar ve DNS (UDP/53) sorgularını ve yanıtlarını gösterir:

$ ngrep -l -q -d eth0 -i "" udp and port 53

Güvenlik
Bir arayüzden ham ağ trafiğini yakalamak, bazı platformlarda, özellikle Unix benzeri sistemlerde özel ayrıcalıklar veya süper kullanıcı ayrıcalıkları gerektirir. ngrep varsayılan davranışı, bu platformlarda ayrıcalıkları bırakmak ve belirli bir ayrıcalıksız kullanıcı altında çalışmaktır.

Tcpdump gibi, ngrep'i başka bir kullanıcının veya bilgisayarın ya da tüm bir ağın iletişimini yakalamak ve görüntülemek amacıyla kullanmak da mümkündür.

Bir ağ anahtarı, yönlendirici veya ağ geçidi üzerinde port aynalama ile yapılandırılmış bir cihaza bağlı bir sunucu veya iş istasyonunda ngrep çalıştıran ayrıcalıklı bir kullanıcı veya bir LAN üzerinde ağ trafiğini yakalamak için kullanılan başka bir cihaza bağlı, MAN veya WAN, oturum açma kimlikleri, parolalar veya URLler ve bu ağda görüntülenen web sitelerinin içeriği ile ilgili tüm şifrelenmemiş bilgileri izleyebilir.

Desteklenen protokoller
 IPv4 ve IPv6, Internet Protocol version 4 ve version 6
 TCP, Transmission Control Protocol
 UDP, User Datagram Protocol
 ICMPv4 ve ICMPv6, Internet Control Message Protocol version 4 ve version 6
 IGMP, Internet Group Management Protocol
 Ethernet, IEEE 802.3
 PPP, Point to Point Protocol
 SLIP, Serial Line Internet Protocol
 FDDI, Fiber Data Distribution Protocol
 Token Ring, IEEE 802.5

Ayrıca bakınız
 Paket çözümleyicileri karşılaştırması
 snoop, Solaris ve illumos içerisinde yer alan bir komut satırı paket çözümleyicisi
 dsniff, bir packet sniffer ve trafik analiz araçları seti
 netsniff-ng, ücretsiz bir Linux ağ araç seti
 etherApe, trafiği koklamaya dayanan bir ağ haritalama aracı
 tcptrace, tcpdump tarafından üretilen günlükleri analiz etmek için bir araç
 Microsoft Network Monitor, bir paket analizörü
 xplico, bir ağ adli bilişimi analiz aracı

Kaynakça

Dış bağlantılar
Official site for ngrep
Ngrep - Linux man page

Ağ analizi yazılımları
Unix ağ yazılımları
Windows güvenlik yazılımları
Mac OS X güvenlik yazılımları
C ile programlanmış ücretsiz yazılımlar
Özgür ağ yönetimi yazılımları
BSD lisansı kullanan yazılımlar