
प्रोटोकॉल सीखना और स्टेटफुल फ़ज़िंग
Pulsar एक नेटवर्क फ़ज़र है जिसमें स्वचालित प्रोटोकॉल सीखने और सिमुलेशन की क्षमताएँ हैं। यह उपकरण मशीन लर्निंग तकनीकों, जैसे क्लस्टरिंग और मार्कोव मॉडल, के माध्यम से एक प्रोटोकॉल को मॉडल करने की अनुमति देता है। इन मॉडलों का उपयोग Pulsar और एक वास्तविक क्लाइंट या सर्वर के बीच संचार का अनुकरण करने के लिए किया जा सकता है, जो अर्थपूर्ण रूप से सही संदेशों के माध्यम से होता है, जो फ़ज़िंग प्रिमिटिव की एक श्रृंखला के संयोजन में, किसी अज्ञात प्रोटोकॉल के कार्यान्वयन को उसके प्रोटोकॉल स्टेट मशीन के गहरे राज्यों में त्रुटियों के लिए परीक्षण करने की अनुमति देते हैं।
Pulsar द्वारा कार्यान्वित विधि के बारे में विस्तृत जानकारी के लिए, आप निम्नलिखित प्रकाशनों को पढ़ सकते हैं:
Pulsar: Stateful Black-Box Fuzzing of Proprietary Network Protocols
Hugo Gascon, Christian Wressnegger, Fabian Yamaguchi, Daniel Arp and Konrad Rieck
Proc. of 11th EAI International Conference on Security and Privacy in Communication Networks (SECURECOMM) October 2015
Learning Stateful Models for Network Honeypots
Tammo Krueger, Hugo Gascon, Nicole Krämer and Konrad Rieck
ACM Workshop on Security and Artificial Intelligence (AISEC) October 2012
_
_ __ _ _| |___ __ _ _ __
| '_ \| | | | / __|/ _` | '__|
| |_) | |_| | \__ \ (_| | |
| .__/ \__,_|_|___/\__,_|_| v0.1-dev
|_|
usage: pulsar.py [-h] [-c CONF] [-l] [-p PCAP] [-b BINARIES] [-a] [-x]
[-o OUT] [-d DIMENSION] [-s] [-z] [-m MODEL]
Protocol Learning and Stateful Fuzzing
optional arguments:
-h, --help show this help message and exit
-c CONF, --conf CONF Change default directory for configuration files. If
no directory is given, the files from 'pulsar/conf'
will be read.
MODEL LEARNING:
-l, --learner Learn a model from a set of network traces.
-p PCAP, --pcap PCAP tcpdump output file (pcap) or list of files separated
by commas to use as input data for a new model.
-b BINARIES, --binaries BINARIES
Name of binaries to process from the cuckoo storage
dir separated with commas.
-a, --all-binaries Generate models for all binaries from the cuckoo
storage dir (cuckoo/storage/binaries).
-x, --process Process derrick files through the functions defined in
utils/preprocessing/derrick.py.
-o OUT, --out OUT Change output directory for generated models. If no
directory is given, the model will be written to the
'models' directory.
-d DIMENSION, --dimension DIMENSION
Number of components to be used for NMF clustering.
SIMULATION & FUZZING:
-s, --simulate Simulate communication based on a given model.
-z, --fuzzer Start a fuzzing session based on a given model.
-m MODEL, --model MODEL
Path of the dir containing the model files to be
loaded for simulation or fuzzing.
निर्देशिका pulsar/conf में कॉन्फ़िगरेशन फ़ाइलों की एक श्रृंखला होती है जो Pulsar की स्वचालित सीखने, सिमुलेशन और फ़ज़िंग विधियों में प्रत्येक संचालन के लिए आवश्यक पैरामीटर परिभाषित करती हैं।
अलग-अलग PCAP फ़ाइलों या cuckoo सैंडबॉक्स द्वारा चलाए गए एक या अधिक बाइनरीज़ के रिकॉर्ड किए गए ट्रेस से एक संचार चैनल का मॉडल तैयार करें:
$> pulsar.py -l -p file.pcap (1 pcap file)
$> pulsar.py -b 016169EBEBF1CEC2AAD6C7F0D0EE9026 (1 or more binaries from cuckoo storage)
$> pulsar.py -a (all binaries from cuckoo storage)
सीखे गए मॉडल के आधार पर एक संचार चैनल का अनुकरण करें:
$> pulsar.py -s -m model_file
अपने संचार चैनल के मॉडल को देखते हुए किसी लक्ष्य के विरुद्ध फ़ज़िंग सत्र शुरू करें:
$> pulsar.py -z -m model_file