สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-23 15:12
ดังนั้นหลังจากเกือบหนึ่งปีนับตั้งแต่สามารถสั่งสอน Simple Netcat Backdoor ของฉันได้ ฉันก็ได้รับแรงบันดาลใจที่จะสร้างเวอร์ชันที่คล้ายกันแต่เต็มไปด้วยฟีเจอร์มากขึ้นโดยใช้ภาษาการเขียนโปรแกรม Python เพราะมันเป็นภาษาที่ค่อนข้างเรียบง่ายเมื่อเทียบกับภาษาอื่น ดังนั้น หากคุณไม่รู้ว่าแบ็คดอร์คืออะไร โดยพื้นฐานแล้วมันเป็นวิธีที่ช่วยให้คุณเชื่อมต่อและควบคุมคอมพิวเตอร์ของผู้อื่นได้ อันนี้มีข้อดีเหนือ netcat มากมาย เช่น การติดตั้งที่ง่ายกว่ามาก การใช้งาน และใช้งานง่ายมากนอกเครือข่ายของคุณ ฉันยังรวม cmd ระยะไกลเพื่อให้คุณสามารถเรียกใช้คำสั่งใด ๆ ได้เหมือนก่อนหน้านี้ นอกจากนี้ เนื่องจากขณะนี้เซิร์ฟเวอร์เป็นแบบข้ามแพลตฟอร์ม คุณจึงสามารถยอมรับการเชื่อมต่อบนเซิร์ฟเวอร์ Linux ได้แล้ว
อย่างไรก็ตาม คุณสามารถดาวน์โหลดเวอร์ชันล่าสุดได้ที่นี่ (ไฟล์เดียวที่คุณต้องการคือเซิร์ฟเวอร์และไคลเอนต์)
หมายเหตุ: โปรแกรมนี้ยังอยู่ในระหว่างดำเนินการเล็กน้อย ฉันหวังว่าในอนาคตจะรวมคุณสมบัติเพิ่มเติมอีกสองสามอย่างไว้ โปรเจ็กต์นี้ยังมีอยู่ในหน้า github
ขั้นตอนที่ 1: ติดตั้งข้อกำหนดเบื้องต้น…
เนื่องจากโปรแกรมนี้สร้างขึ้นใน Python 3 คุณจึงดาวน์โหลดเวอร์ชันล่าสุดได้จากที่นี่ แต่คุณจะต้องมีโมดูลสองสามตัวด้วย
ดังนั้นในการติดตั้ง คุณสามารถเรียกใช้ python -m pip install -r requirements.txt ในพรอมต์คำสั่ง "requirements.txt" เป็นไฟล์ในไดเร็กทอรีหลักที่มีโมดูลทั้งหมดที่จำเป็น
ขั้นตอนที่ 2: ตั้งค่า…
ดังนั้นในการกำหนดค่าไคลเอนต์ ให้เปิด src/client.py ด้วย IDLE หรือโปรแกรมแก้ไขอื่น ๆ และคุณควรเห็นรหัสด้านบนดังในรูปที่ 1
อย่างไรก็ตาม สิ่งแรกที่คุณต้องทำคือกำหนดค่าเป็นที่อยู่ IP เพื่อเชื่อมต่อ ดังนั้นให้ตั้งค่า strHost เป็น IP ของคุณที่ไคลเอนต์ควรเชื่อมต่อ เช่น ในรูปที่ 2 หรือหากคุณวางแผนที่จะใช้โปรแกรมกับ DNS ดังกล่าว จาก no-ip ซึ่งช่วยให้คุณใช้โปรแกรมนอกเครือข่ายได้ ให้ลบ "#" ในบรรทัดด้านล่างและกรอกชื่อโฮสต์ของคุณระหว่างเครื่องหมายคำพูด เช่น. myserver113.ddns.net
หมายเหตุ: หากคุณวางแผนที่จะใช้โปรแกรมนอกเครือข่ายของคุณ คุณต้องพอร์ตการส่งต่อพอร์ต 3000 หรือหากคุณใช้เซิร์ฟเวอร์เช่นจาก DigitalOcean คุณไม่จำเป็นต้องทำการส่งต่อพอร์ต:)
ขั้นตอนที่ 3: สร้างเป็น.exe
ในการอนุญาตให้ใครก็ตามที่ไม่มี python และโมดูลสามารถเรียกใช้ไฟล์ได้ คุณต้องสร้างไฟล์เป็น.exe ดังนั้นเพื่อสร้างให้เปิดพรอมต์คำสั่งและเรียกใช้รหัสต่อไปนี้:
pyinstaller client.py --exclude-module FixTk --exclude-module tcl --exclude-module tk --exclude-module _tkinter --exclude-module tkinter --exclude-module Tkinter --onefile --windowed
สิ่งนี้จะไม่รวมโมดูล tkinter ที่ไม่ได้ใช้เพื่อบันทึกขนาดไฟล์แล้วสร้างไฟล์ปฏิบัติการเดียว
หมายเหตุ: คุณสามารถเพิ่มไอคอนของคุณเองได้โดยเพิ่ม --icon="icon path"
ขั้นตอนที่ 4: การใช้งาน…
ก่อนที่คุณจะสามารถเรียกใช้เซิร์ฟเวอร์ คุณต้องปิดใช้งานไฟร์วอลล์ของคุณหรืออนุญาตพอร์ต 3000 เพื่อยอมรับการเชื่อมต่อที่จะเกิดขึ้น หลังจากนั้นคุณสามารถเรียกใช้เซิร์ฟเวอร์เพื่อฟังการเชื่อมต่อ
เมื่อคุณได้รับการเชื่อมต่อแล้ว คุณสามารถพิมพ์ "--help" และคุณควรได้รับข้อความแจ้งดังรูปที่ 1 จากนั้น คุณสามารถโต้ตอบกับผู้ใช้โดยพิมพ์ "--i client id"
ถัดไป คุณจะเห็นเมนูปรากฏขึ้นดังรูปที่ 2 และตอนนี้คุณสามารถเรียกใช้คำสั่งใดๆ ที่คุณต้องการ เช่น "--m" เพื่อส่งข้อความ "--e" เพื่อเปิด cmd ระยะไกล เป็นต้น คุณยังสามารถใช้ "--b" เพื่อให้คุณสามารถย้ายการเชื่อมต่อไปยังพื้นหลังและโต้ตอบกับคอมพิวเตอร์เครื่องอื่นได้
อย่างที่ฉันบอกไป คุณสามารถทำอะไรก็ได้ที่คุณเคยทำกับ netcat backdoor มากขึ้นเท่านั้น
หมายเหตุ: เป็นการดีที่สุดที่จะทำการปิดอย่างนุ่มนวลโดยเรียกใช้ "--x" ในเมนูหลักแทนที่จะปิดหน้าต่าง
ขั้นตอนที่ 5: กำลังถอนการติดตั้ง…
หากคุณเคยเพิ่มโปรแกรมนี้ในการเริ่มต้นและต้องการลบออก เพียงเปิดรีจิสทรีแล้วไปที่ "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run" จากนั้นลบค่าที่เรียกว่า "winupdate" ฉันตั้งชื่อที่ไม่น่าสงสัยเพื่อที่มันจะไม่ถูกลบโดยบังเอิญ;)
ขั้นตอนที่ 6: คำอธิบาย…
ดังนั้นฉันจึงสามารถใช้หน้าที่เขียนเกี่ยวกับวิธีที่ฉันสร้างทุกฟีเจอร์ แต่ฉันจะอธิบายโดยทั่วไปว่าโปรแกรมทั้งหมดนี้ทำงานอย่างไร
ดังนั้นโปรแกรมจึงทำงานโดยให้เซิร์ฟเวอร์ฟังพอร์ตสำหรับการเชื่อมต่อที่จะเกิดขึ้นจากไคลเอนต์ก่อน ในกรณีนี้ฉันเลือกพอร์ต 3000 ถัดไปไคลเอนต์เชื่อมต่อกับเซิร์ฟเวอร์โดยใช้พอร์ตนั้นแล้วรอให้เซิร์ฟเวอร์ส่งคำสั่ง ในกรณีของฉัน คำสั่งต่างๆ เป็นเพียงสตริงข้อความธรรมดาๆ เช่น "dtaskmgr" ซึ่งโดยทั่วไปจะแจ้งให้ไคลเอ็นต์ปิดใช้งานตัวจัดการงาน มันง่ายมากจริงๆ เซิร์ฟเวอร์ไม่เคยสื่อสารโดยตรงกับพีซีไคลเอนต์ แต่จะสื่อสารกับไคลเอนต์ซึ่งจะรันคำสั่งที่ระบุ
อีกสิ่งหนึ่งที่เกี่ยวกับการส่งข้อมูลผ่านซ็อกเก็ตคือ ข้อมูลต้องถูกส่งเป็นไบต์ ซึ่งหมายความว่าคุณจะเห็นเซิร์ฟเวอร์และไคลเอ็นต์ถอดรหัสข้อความเป็นข้อความมาตรฐานอย่างต่อเนื่อง
อย่างไรก็ตาม นั่นคือทั้งหมดที่เกี่ยวข้องกับการทำแบ็คดอร์ คุณจะสังเกตเห็นว่าฉันแสดงความคิดเห็นเล็กน้อยในโค้ด ดังนั้นหากคุณรู้จักงูหลามตัวเล็ก ๆ มันน่าจะเข้าใจได้ง่ายนิดหน่อย
ขั้นตอนที่ 7: เสร็จแล้ว
ขอให้สนุกกับโปรแกรมนี้! โดยเฉพาะอย่างยิ่งสามารถช่วยเพื่อน/ญาติที่ไม่ได้อยู่ใกล้กัน
ฉันหวังว่าคุณจะพบว่าคำแนะนำนี้มีประโยชน์และหากคุณมีคำถามหรือข้อกังวลใด ๆ โปรดแสดงความคิดเห็นหรือ pm มา
นอกจากนี้ หากคุณพบข้อบกพร่องใดๆ ในโปรแกรมนี้ หรือรู้สึกว่าไม่มีคุณสมบัติใดหรือจะมีประโยชน์ในการรวมไว้ โปรดรายงานให้ฉันทราบ
แนะนำ:
วิธีสร้างแนวทางปฏิบัติสำหรับเป้าหมายของ Nintendo LABO อย่างง่าย: 13 ขั้นตอน
วิธีสร้างแนวทางปฏิบัติสำหรับเป้าหมายของ Nintendo LABO อย่างง่าย: น้องสาวของฉันและฉันเพิ่งซื้อ Nintendo Switch แน่นอนว่าเรามีเกมให้เล่นด้วย และหนึ่งในนั้นคือ Nintendo LABO Variety Kit ในที่สุดฉันก็สะดุดกับ Toy-Con Garage ฉันได้ลองทำอะไรบางอย่างออกไป และนั่นคือตอนที่ฉัน
ขาตั้งสามขา PCB อย่างง่าย: 5 ขั้นตอน
Simple PCB Trivet: นี่เป็นโครงการที่เรียบง่ายและสนุกสนานสำหรับ PCB รีไซเคิล (แผงวงจรพิมพ์) ฉันดึงหนึ่งออกจากระบบสเตอริโอที่เสีย แต่คุณสามารถหาบอร์ดเหล่านี้ได้จากอุปกรณ์อิเล็กทรอนิกส์ต่างๆ ขาตั้งสามขา (trivet) คือสิ่งของที่วางอยู่ระหว่างจานเสิร์ฟและจานรอง
เปียโน Arduino อย่างง่าย: 8 ขั้นตอน
เปียโน Arduino อย่างง่าย: วันนี้เราจะสร้างเปียโน Arduino หนึ่งอ็อกเทฟอย่างง่าย ซึ่งสามารถเป็นจุดเริ่มต้นที่ดีสำหรับโครงการอื่นๆ โครงการนี้จะแนะนำส่วนประกอบพื้นฐานของ Arduino และการเขียนโปรแกรมในระดับมัธยมศึกษาตอนปลาย แม้ว่ารหัสจะเป็นบุคคลที่สร้างไว้ล่วงหน้าค
เครื่องตรวจจับโลหะ Arduino อย่างง่าย: 8 ขั้นตอน (พร้อมรูปภาพ)
Simple Arduino Metal Detector: *** มีการโพสต์เวอร์ชันใหม่ที่ง่ายกว่านี้: https://www.instructables.com/Minimal-Arduino-Metal-Detector/ *** การตรวจจับโลหะเป็นอดีตที่ยอดเยี่ยมที่ได้รับ คุณออกไปข้างนอก ค้นพบสถานที่ใหม่ๆ และอาจพบสิ่งที่น่าสนใจ ตรวจสอบคุณ
เกมเดาหมายเลข Python อย่างง่าย: 11 ขั้นตอน
เกมเดาหมายเลข Python อย่างง่าย: ในบทช่วยสอนนี้ เราจะสอนวิธีสร้างเกมเดาหมายเลข Python อย่างง่ายในแอปพลิเคชัน Pycharm Python เป็นภาษาสคริปต์ที่ยอดเยี่ยมสำหรับทั้งผู้เริ่มต้นและผู้เชี่ยวชาญ รูปแบบการเข้ารหัสใน Python นั้นง่ายต่อการอ่านและติดตาม