
pcap फ़ाइलों के आधार पर नेटवर्क टोपोलॉजी की कल्पना करें और ग्राफ सांख्यिकी एकत्र करें
PcapViz नेटवर्क उपकरणों के रूप में और सूचना प्रवाह के रूप में नेटवर्कों को चित्रित करता है, जिसमें pcap फ़ाइलों में पैकेट जानकारी का उपयोग किया जाता है जो tcpcap या अन्य कैप्चर सॉफ़्टवेयर का उपयोग करके नेटवर्क डिवाइस से कैप्चर किए गए हैं। यह फ़िल्टर करता है और वैकल्पिक रूप से कैप्चर किए गए पैकेटों को 3 "परतों" में से किसी एक पर प्रदर्शित करता है। ये हैं:
प्रत्येक एक ही नेटवर्क पैकेट से अलग नेटवर्क ग्राफ़ उत्पन्न करता है। यह पृथक्करण प्रत्येक स्तर पर डेटा प्रवाह को देखना बहुत आसान बनाता है, बजाय इसके कि उन्हें मिलाया जाए जैसा कि कई अन्य विज़ुअलाइज़ेशन पैकेज करते हैं। इससे मुख्य टोपोलॉजिकल नोड्स निर्धारित करना या डेटा एक्सफ़िल्ट्रेशन प्रयासों के पैटर्न को अधिक आसानी से देखना संभव होना चाहिए।
usage: main.py [-h] [-i [PCAPS [PCAPS ...]]] [-o OUT] [-g GRAPHVIZ] [--layer2]
[--layer3] [--layer4] [-fi] [-fo] [-G GEOPATH] [-l GEOLANG]
[-E LAYOUTENGINE] [-s SHAPE]
pcap topology and message mapper
optional arguments:
-h, --help show this help message and exit
-i [PCAPS [PCAPS ...]], --pcaps [PCAPS [PCAPS ...]]
space delimited list of capture files to be analyzed
-o OUT, --out OUT topology will be stored in the specified file
-g GRAPHVIZ, --graphviz GRAPHVIZ
graph will be exported to the specified file (dot
format)
--layer2 device topology network graph
--layer3 ip message graph. Default
--layer4 tcp/udp message graph
-fi, --frequent-in print frequently contacted nodes to stdout
-fo, --frequent-out print frequent source nodes to stdout
-G GEOPATH, --geopath GEOPATH
path to maxmind geodb data
-l GEOLANG, --geolang GEOLANG
Language to use for geoIP names
-E LAYOUTENGINE, --layoutengine LAYOUTENGINE
Graph layout method - dot, sfdp etc.
-s SHAPE, --shape SHAPE
Graphviz node shape - circle, diamond, box etc.
एक संचार ग्राफ़ (लेयर 2) बनाना, खंड
python main.py -i tests/test.pcap -o test2.png --layer2

डिफ़ॉल्ट sfdp लेआउट के साथ लेयर3

डिफ़ॉल्ट sfdp लेआउट के साथ लेयर4

सबसे अधिक इनकमिंग पैकेट वाले होस्ट लौटाएं:
python3 main.py -i tests/test.pcap -fi --layer3
4 172.16.11.12
1 74.125.19.17
1 216.34.181.45 slashdot.org
1 172.16.11.1
1 96.17.211.172 a96-17-211-172.deploy.static.akamaitechnologies.com
आवश्यक:
GraphViz कृपया नीचे सिस्टम नोट्स देखें
Pip पैकेज आवश्यकताएँ जब आप यह चलाएंगे तो Maxmind Python API और अन्य निर्भरताएँ स्थापित हो जाएंगी:
pip3 install -r requirements.txt
तो निश्चित रूप से, कृपया इसे चलाएं! आप एक पायथन वर्चुअल एनवायरनमेंट का उपयोग कर रहे हैं, है ना?
Debian-आधारित वितरणों के लिए आपको कुछ अतिरिक्त निर्भरताओं के साथ GraphViz स्थापित करना होगा:
apt-get install python3-dev
apt-get install graphviz libgraphviz-dev pkg-config
Scapy OSX पर बिना किसी बदलाव के काम नहीं करता है। scapy वेबसाइट से प्लेटफ़ॉर्म-विशिष्ट निर्देशों का पालन करें।
brew install graphviz
brew install --with-python libdnet
brew install https://raw.githubusercontent.com/secdev/scapy/master/.travis/pylibpcap.rb
यूनिट परीक्षण tests निर्देशिका से चलाए जा सकते हैं:
python3 core.py
ऊपर दिए गए नमूना चित्र परीक्षण आउटपुट ग्राफ़ हैं।
ध्यान दें कि वर्तमान में graphviz में पदावनत सुविधाओं के बारे में 2 चेतावनियाँ हैं और परीक्षणों के काम करने के लिए, आपको geoIP डेटा फ़ाइल की अपनी प्रतिलिपि को इंगित करने के लिए नकली आर्ग्स को समायोजित करने की आवश्यकता हो सकती है। geoIP डेटा तक पहुँच के बिना, दो परीक्षण हमेशा विफल होंगे।