Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
pypacker — :package: Python के लिए सबसे तेज़ और सरल पैकेट हेरफेर लाइब्रेरी | Kitploit
उपकरण/GitLabGitLab/mike01/pypacker
पैकेट स्निफिंग और विश्लेषणवेब प्रॉक्सी और अवरोधननेटवर्क सुरक्षापेनिट्रेशन टेस्टिंगउपयोगिताएँ और फ्रेमवर्करेड टीमिंग
GitLabmike01/pypacker

pypacker

📦 Python के लिए सबसे तेज़ और सरल पैकेट हेरफेर लाइब्रेरी

रिपॉजिटरी देखें
281823 दिन पहलेKitploit द्वारा समीक्षित

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

सामान्य जानकारी

यह Pypacker है: Python के लिए सबसे तेज़ और सबसे सरल निम्न-स्तरीय पैकेट हेरफेर लाइब्रेरी। नीचे दिए गए उदाहरण देखें कि आप इसके साथ क्या कर सकते हैं।

यदि आप इस प्रोजेक्ट का समर्थन करना चाहते हैं तो आप PayPal से दान करें PayPal के माध्यम से कर सकते हैं।

Pypacker के साथ आप क्या कर सकते हैं

  • कीवर्ड या रॉ बाइट्स के माध्यम से कस्टम पैकेट बनाएं और Python के माध्यम से उनका डेटा पढ़ें/बदलें: examples/create_packets.py
  • pcap फ़ाइल से पैकेट पढ़ें/लिखें (केवल Wireshark/tcpdump pcap प्रारूप के लिए समर्थन): examples/pcap_read_write.py
  • एकाधिक pcap फ़ाइलों को एक फ़ाइल में मर्ज करें। दूषित pcap फ़ाइलों को पढ़ने का प्रयास करता है और कॉलबैक द्वारा फ़िल्टरिंग की अनुमति देता है: examples/pcap_merge.py
  • लेयर 2 पैकेट भेजें/प्राप्त करें: examples/send_receive_l2.py
  • पैकेटों को इंटरसेप्ट (और संशोधित) करें, उदाहरण के लिए MITM के लिए: examples/interceptor3.py

आवश्यक शर्तें

  • Python 3.x (CPython, Pypy, Jython या कोई अन्य इंटरप्रेटर)
  • वैकल्पिक: netifaces >=0.10.6 (utils के लिए)
  • वैकल्पिक (interceptor के लिए):
    • CPython
    • NFQUEUE लक्ष्य के लिए कर्नेल समर्थन वाला Linux आधारित सिस्टम। कर्नेल कॉन्फ़िग विकल्प यहाँ है:
      • Networking Options -> Network packet filtering -> Core Netfilter -> NFQUEUE target
    • iptables (वैकल्पिक रूप से nftables)
      • NFQUEUE संबंधित नियम जोड़े जा सकते हैं, उदा. "iptables -I INPUT 1 -j NFQUEUE --queue-num 0"
    • libnetfilter_queue लाइब्रेरी (देखें http://www.netfilter.org/projects/libnetfilter_queue)

स्थापना

कुछ उदाहरण:

  • नवीनतम संस्करण क्लोन करें
    • git clone https://gitlab.com/mike01/pypacker.git
    • cd pypacker
    • python setup.py install

pip/pypi अब समर्थित नहीं है क्योंकि उनके जटिल प्रमाणीकरण तंत्र के कारण, क्षमा करें।

उपयोग उदाहरण और दस्तावेज़ीकरण

देखें:

  • उपरोक्त उदाहरण
  • ./examples निर्देशिका में उदाहरण
  • Gitlab विकी: https://gitlab.com/mike01/pypacker/-/wikis/home

प्रोटोकॉल स्वयं (layerXYZ देखें) में आमतौर पर बहुत अधिक दस्तावेज़ीकरण नहीं होता क्योंकि वे अपने संबंधित RFCs/आधिकारिक मानकों द्वारा प्रलेखित होते हैं।

परीक्षण

परीक्षण इस प्रकार निष्पादित किए जाते हैं:

  1. Pypacker निर्देशिका को PYTHONPATH में जोड़ें।
  • cd pypacker
  • export PYTHONPATH=$(pwd):$PYTHONPATH
  1. परीक्षण निष्पादित करें
  • python tests/test_pypacker.py

प्रदर्शन परीक्षण परिणाम:

root@kitploit:~
Hardware: Intel CPU, 4 Cores @ 3.2 GHz
Python: CPython v3.10

nr = new results on this machine
Rounds per test: 10000
=====================================
>>> Packet parsing (Ethernet + IP + UDP + DNS): Search UDP port
Time diff: 0.1409761905670166s
nr = 70933 p/s
>>> Packet parsing (Ethernet + IP + TCP + HTTP): Search TCP port
Time diff: 0.3157649040222168s
nr = 31669 p/s
>>> Packet parsing (Ethernet + IP + TCP + HTTP): Reading all header
Time diff: 0.5989120006561279s
nr = 16696 p/s
>>> Parsing first layer (IP + ICMP)
Time diff: 0.014587163925170898s
nr = 685534 p/s
>>> Creating/direct assigning (IP only header)
Time diff: 0.02884364128112793s
nr = 346696 p/s
>>> bin() without change (IP)
Time diff: 0.013646364212036133s
nr = 732795 p/s
>>> Output with change/checksum recalculation (IP)
Time diff: 0.07719659805297852s
nr = 129539 p/s
>>> Basic/first layer parsing (Ethernet + IP + TCP + HTTP)
Time diff: 0.019113540649414062s
nr = 523189 p/s
>>> Changing Triggerlist element value (Ethernet + IP + TCP + HTTP)
Time diff: 0.017654895782470703s
nr = 566415 p/s
>>> Changing dynamic field (Ethernet + IP + TCP + HTTP)
Time diff: 0.006037473678588867s
nr = 1656321 p/s
>>> Direct assigning and concatination (Ethernet + IP + TCP + HTTP)
Time diff: 0.2050457000732422s
nr = 48769 p/s
.>>> Performance test pypacker vs. dpkt vs. scapy
Comparing pypacker, dpkt and scapy performance (parsing Ethernet + IP + TCP + HTTP)
nr = new results on this machine
Rounds per test: 10000
>> Testing pypacker parsing speed
nr = 194382 p/s
>> Testing dpkt parsing speed
Could not execute dpkt tests: ModuleNotFoundError("No module named 'dpkt'")
>> Testing scapy parsing speed
nr = 2775 p/s

FAQ

किसी भी शेष प्रश्न के लिए कृपया एक बग दर्ज करें (जिसे "questions" के रूप में टैग किया जाएगा)।

प्रश्न: Pypacker कितना तेज़ है?

उत्तर: उपरोक्त परिणाम देखें। अपनी मशीन पर विस्तृत परिणामों के लिए परीक्षण निष्पादित करें: python tests/test_pypacker.py PerfTestCase

प्रश्न: कौन से प्रोटोकॉल समर्थित हैं?

उत्तर: वर्तमान में न्यूनतम समर्थित प्रोटोकॉल हैं: Ethernet, Radiotap, IEEE80211, ARP, DNS, STP, PPP, OSPF, VRRP, DTP, IP, ICMP, PIM, IGMP, IPX, TCP, UDP, SCTP, HTTP, NTP, RTP, DHCP, RIP, SIP, Telnet, HSRP, Diameter, SSL, TPKT, Pmap, Radius, BGP

प्रश्न: क्या [xyz] के समर्थन की कोई योजना है?

उत्तर: Pypacker में नई सुविधाएँ मेरी आवश्यकता या लोगों के योगदान के परिणामस्वरूप जोड़ी जाती हैं - भविष्य के रिलीज़ में विशेष सुविधाओं के समर्थन के लिए कोई औपचारिक योजना मौजूद नहीं है। योगदान के लिए एक सामान्य दिशानिर्देश HACKING फ़ाइल में पाया जा सकता है।

प्रश्न: मैं इस प्रोजेक्ट में कैसे योगदान दे सकता हूँ?

उत्तर: कृपया बग/सुविधा अनुरोध के लिए Gitlab बग-ट्रैकर का उपयोग करें। कृपया नया फ़ाइल करने से पहले पहले से ज्ञात बगों के लिए बगट्रैकर पढ़ें। पैच पुल रिक्वेस्ट के माध्यम से भेजे जा सकते हैं।

प्रश्न: Windows 3.11/XP/7/8/mobile आदि पर Pypacker का उपयोग करने में समस्या xyz है। क्या आप इसे ठीक कर सकते हैं?

उत्तर: बुनियादी सुविधाएँ किसी भी OS पर काम करनी चाहिए। वैकल्पिक वाले समस्या उत्पन्न कर सकते हैं (जैसे interceptor)।

प्रश्न: Pypacker किस लाइसेंस के तहत जारी किया गया है?

उत्तर: यह GPLv2 लाइसेंस है (अधिक जानकारी के लिए LICENSE फ़ाइल देखें)।

प्रश्न: copy.deepcopy(some_packet) को कॉल करने पर "TypeError: can't pickle Struct objects" अपवाद उठता है।

उत्तर: Struct ऑब्जेक्ट्स को picklable बनाने के लिए निम्नलिखित वर्कअराउंड आज़माएँ:

root@kitploit:~
import struct, copyreg
def pickle_struct(s):
	return struct.Struct, (s.format,)

copyreg.pickle(struct.Struct, pickle_struct)

उपयोग संकेत

प्रदर्शन से संबंधित

  • अधिकतम प्रदर्शन के लिए निम्नलिखित इंडेक्स नोटेशन के माध्यम से निम्नतम स्तर पर विशेषताओं तक पहुँचना शुरू करें। यह पर्दे के पीछे केवल आवश्यक लेयरों को आलसी रूप से पार्स करेगा:
root@kitploit:~
pkt_eth, pkt_ip, pkt_tcp, pkt_http = pkt[
 	None,
	(None, lambda b: b.__class__ in [ip.IP, ip6.IP6]),
	(tcp.TCP, lambda c: c.dport==80),
	http.HTTP
]
...
  • "%s" या "%r" प्रारूप का उपयोग करके पैकेट को कनवर्ट करने से बचें क्योंकि यह पर्दे के पीछे पार्सिंग को ट्रिगर करता है:
root@kitploit:~
pkt = Ethernet() + IP() + TCP()
# यह सभी लेयरों को पार्स करता है
packet_print = "%s" % pkt
  • pkt[L] के माध्यम से एकल-मान इंडेक्स-नोटेशन का उपयोग करके एक लेयर की खोज से बचें क्योंकि यह L मिलने तक या उच्चतम लेयर तक पहुँचने तक सभी लेयरों को पार्स करता है:
root@kitploit:~
packet_found = pkt[Telnet]
# विकल्प: बहु-मान इंडेक्स-नोटेशन का उपयोग करें। यह किसी भी गैर-मिलान लेयर पर पार्सिंग रोक देगा:
packet_found = pkt[Ethernet,IP,TCP,Telnet]
  • pypy का उपयोग करें (पूर्ण पैकेट पार्सिंग से संबंधित CPython से ~3x तेज़)

  • और भी अधिक प्रदर्शन के लिए ऑटो फ़ील्ड को अक्षम करें (bin(...) को कॉल करने को प्रभावित करता है):

root@kitploit:~
pkt = ip.IP(src_s="1.2.3.4", dst_s="1.2.3.5") + tcp.TCP()
# IP और TCP के लिए चेकसम गणना (और कोई अन्य अपडेट) अक्षम करें (केवल THIS पैकेट इंस्टेंस)
pkt.sum_au_active = False
pkt.tcp.sum_au_active = False
bts = pkt.bin(update_auto_fields=False)
  • अधिकतम प्रदर्शन प्राप्त करने के लिए प्राप्त/भेजें बफ़र को बड़ा करें। यह निम्नलिखित कमांड का उपयोग करके किया जा सकता है (से लिया गया: http://www.cyberciti.biz/faq/linux-tcp-tuning/):
root@kitploit:~
sysctl -w net.core.rmem_max=12582912
sysctl -w net.core.rmem_default=12582912
sysctl -w net.core.wmem_max=12582912
sysctl -w net.core.wmem_default=12582912
sysctl -w net.core.optmem_max=2048000
sysctl -w net.core.netdev_max_backlog=5000
sysctl -w net.unix.max_dgram_qlen=1000
sysctl -w net.ipv4.tcp_rmem="10240 87380 12582912"
sysctl -w net.ipv4.tcp_wmem="10240 87380 12582912"
sysctl -w net.ipv4.tcp_mem="21228 87380 12582912"
sysctl -w net.ipv4.udp_mem="21228 87380 12582912"
sysctl -w net.ipv4.tcp_window_scaling=1
sysctl -w net.ipv4.tcp_timestamps=1
sysctl -w net.ipv4.tcp_sack=1

विविध संबंधित

  • TCP/UDP स्ट्रीम का संयोजन tshark द्वारा पाइप का उपयोग करके किया जा सकता है "-i -" और "-z follow,prot,mode,filter[,range]" के साथ
  • कैप्चर फ़ाइलें पढ़ते समय सही "निम्नतम लेयर" चुनना: फ़ाइल को उदाहरण के लिए wireshark के साथ खोलें और डेटा लिंक लेयर के लिए पैकेट विवरण देखें। अधिकांश समय यह संभवतः Ethernet II होगा जिसे layer12.ethernet.Ethernet के साथ पार्स किया जा सकता है। उदाहरण के लिए wiresharks/tsharks "-i any" विकल्प के माध्यम से कैप्चर करने पर, यह Linux कुक्ड कैप्चर की ओर ले जाएगा जो layer12.linuxcc.LinuxCC द्वारा दर्शाया गया है।
टूल डाउनलोड करें