
Dahua कैमरों के लिए P2P के माध्यम से सुरक्षा स्कैनर

CGI, SDKType 0/1 डिवाइस समर्थनGo के माध्यम से:
go install github.com/thebadinteger/p2pwn@main
स्रोत से बिल्ड करें:
git clone https://github.com/thebadinteger/p2pwn.git
cd p2pwn
go build
या Releases page से नवीनतम बाइनरी डाउनलोड करें।
./p2pwn -i [input] -o [output] -t [threads] (-c [config]) (--nuke) (--debug)
[-i, --input] Input file or specific target(s)
Format:
XXXXXXXXXX > Prefix
XXXXXXXXXXYYYYY > S/N
others > csv,xml,dhscp,folders
[-o, --output] Output folder for results
Default > DD-MM-YYYY_HH-MM-SS
If doesn't exist, will be created
[-t, --threads] Number of threads for scanning
Default > 100
[-c, --config] Path to config file
Default > config.toml
[-n, --nuke] Use destructive options
[-d, --debug] Log everything
[-?, -h, --help] Get general help
इनपुट प्रारूप:
S/N या उपसर्ग
XXXXXXXXXX
XXXXXXXXXXYYYYY
XXXXXXXXXX,XXXXXXXXXXYYYYY
या csv,xml,dhscp,folders
आउटपुट प्रारूप:
pwned.csv:
sn,model,login,password,channels,ip,vuln
import_*.xml:
(प्रति फ़ाइल अधिकतम 64 डिवाइस)
<?xml version="1.0" encoding="UTF-8"?>
<DeviceManager version="2.0">
<Device name="{serial}" domain="{serial}" port="37777" username="{login}" password="{encryptedpass}" protocol="1" connect="19" />
</DeviceManager>
snapshots/:
विशेष पासवर्ड अक्षर फ़ाइल नाम में प्रदर्शित नहीं होते हैं
{serial}_{login}_{password}_{model}_{channel(s)}.jpg
config.tomlकॉन्फ़िगरेशन में, आप स्कैनिंग और पेंटेस्टिंग सेट कर सकते हैं, और जाँच विधियों को सक्षम या अक्षम कर सकते हैं।
डिफ़ॉल्ट कॉन्फ़िग:
[scan] # Scan configuration
timeout = 5000 # Connection timeout in milliseconds
retries = 3 # Number of retries on connect
generate = 1048576 # How many S/N to generate on prefix (1-1048576)
nurses = 200 # Number of workers for checking online S/N
governor = true # Enable/disable governor
maxrps = 3000 # Cap on concurrent online/offline checks
[pwn] # Usage of different protocols and methods
protocol.cgi = true # Web CGI protocol
protocol.sdk = true # 37777 SDK protocol
protocol.type1 = true # Type 1 protocol
methods.brute = true # Credentials bruteforce
methods.cve-2021-33044 = true # CVE-2021-33044
methods.cve-2021-33045 = true # CVE-2021-33045
methods.uau = true # Unauthenticated addUser
[image]
snapshot = true # Take snapshots
all = false # Take snapshots from all channels
cgi = true # Take snapshots with CGI
sdk = true # Take snapshots with SDK
rtsp = true # Take snapshots with RTSP
[brute] # Bruteforce configuration
type1.delay = 20 # Type 1 brute attempts delay in seconds
credentials = [
{ login = "admin", password = "admin" },
{ login = "admin", password = "admin123" },
{ login = "admin", password = "admin12345" },
{ login = "666666", password = "666666" },
{ login = "888888", password = "888888" },
] # Credentials list or '/path/to/wordlist' > login:password
[dummy] # Credentials for added dummy account
login = "p2pwn" # 5-32 alphanumeric characters
password = "p2password" # 8-32 alphanumeric characters
memo = "p2pwn" # Account note up to 32 characters
[overlay] # Custom overlay configuration
osd = false # Set OSD on pwned devices
channel = "p2pwn" # ChannelTitle (max 32 char)
custom = [
"p2pwned",
"device is vulnerable"
] # CustomTitle (up to 5 lines, max 22 char per line)
color.front = [255, 255, 255, 255] # OSD front color R G B A (0-255)
color.back = [0, 0, 0, 128] # OSD back color R G B A (0-255)
[nuke] # Experimental destructive options
delete = false # Delete all accounts except admin and dummy
video = 50 # Set all video settings to specified number (0-100)
box = false # Add box masks
coordinates.box = [
[3383, 2047, 4649, 6245],
[2620, 6145, 5362, 7411]
] # Box masks x1 y1 x2 y2 (up to 5 boxes)
disable = false # Disable P2P on the device when done
टिप्स:
nurses - जितना अधिक, उतनी तेज़ S/N जाँच (ऑनलाइन/ऑफ़लाइन), लेकिन अधिक पैकेटmaxrps - समवर्ती ऑनलाइन/ऑफ़लाइन जाँचों की सीमा (जितना अधिक, उतना तेज़)snapshot - स्नैपशॉट लेता है (इसे अक्षम करने से स्कैन तेज़ हो सकता है)all - केवल पहले चैनल के बजाय हर चैनल से स्नैपशॉट लेता हैprotocol.cgi - CVE जाँच और ब्रूट कर सकता हैprotocol.sdk - केवल ब्रूट कर सकता है (यदि NVR स्कैन नहीं कर रहे हैं तो स्कैन तेज़ करने के लिए अक्षम करें)protocol.type1 - केवल ब्रूट कर सकता है (यदि Type 1 डिवाइस स्कैन नहीं कर रहे हैं तो स्कैन तेज़ करने के लिए अक्षम करें)methods.cve-2021-33044 - एडमिन क्रेडेंशियल निकालता है, एक डमी खाता जोड़ता है (फ़ॉलबैक)methods.cve-2021-33045 - एडमिन क्रेडेंशियल निकालता है, एक डमी खाता जोड़ता है (फ़ॉलबैक)methods.uau - एक डमी खाता जोड़ता हैtype1.delay - Type 1 ब्रूट प्रयासों में सेकंड में देरी (बदलने की अनुशंसा नहीं की जाती)channel - OSD ओवरले के लिए कस्टम चैनल शीर्षक (बदलाव न करने के लिए खाली छोड़ें)custom - कस्टम OSD ओवरले टेक्स्ट (बदलाव न करने के लिए खाली छोड़ें)[nuke] - प्रयोगात्मक विनाशकारी विकल्प, इसका उपयोग न करें (केवल --nuke फ़्लैग निर्दिष्ट होने पर काम करता है)badinteger द्वारा निर्मित [GPL v3.0 License]
विशेष धन्यवाद: THANKS.md
यह सॉफ़्टवेयर केवल शैक्षिक और अधिकृत परीक्षण उद्देश्यों के लिए है।
लेखक आपके कार्यों या सॉफ़्टवेयर के किसी भी दुरुपयोग और क्षति के लिए उत्तरदायी नहीं है।