hacktricks/network-services-pentesting/pentesting-ssh.md

333 lines
33 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 22 - Pentesting SSH/SFTP
<details>
<summary><strong>जानें AWS हैकिंग को शून्य से हीरो तक</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
दूसरे तरीके HackTricks का समर्थन करने के लिए:
* अगर आप अपनी **कंपनी का विज्ञापन HackTricks में** देखना चाहते हैं या **HackTricks को PDF में डाउनलोड** करना चाहते हैं तो [**सब्सक्रिप्शन प्लान**](https://github.com/sponsors/carlospolop) देखें!
* [**आधिकारिक PEASS & HackTricks स्वैग**](https://peass.creator-spring.com) प्राप्त करें
* हमारे विशेष [**NFTs**](https://opensea.io/collection/the-peass-family) कलेक्शन, [**The PEASS Family**](https://opensea.io/collection/the-peass-family) खोजें
* **शामिल हों** 💬 [**डिस्कॉर्ड समूह**](https://discord.gg/hRep4RUj7f) या [**टेलीग्राम समूह**](https://t.me/peass) या **मुझे** **ट्विटर** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)** पर फॉलो** करें।
* **अपने हैकिंग ट्रिक्स साझा करें** द्वारा PRs सबमिट करके [**HackTricks**](https://github.com/carlospolop/hacktricks) और [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos में।
</details>
<img src="../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
अगर आप **हैकिंग करियर** में रुचि रखते हैं और अहैकेबल को हैक करना चाहते हैं - **हम भर्ती कर रहे हैं!** (_फ्लूएंट पोलिश लिखित और बोली जानी चाहिए_).
{% embed url="https://www.stmcyber.com/careers" %}
## मौलिक जानकारी
**SSH (Secure Shell या Secure Socket Shell)** एक नेटवर्क प्रोटोकॉल है जो एक असुरक्षित नेटवर्क पर कंप्यूटर के साथ एक सुरक्षित कनेक्शन सक्षम करता है। यह दूरस्थ सिस्टम तक पहुंचते समय डेटा की गोपनीयता और अखंडता बनाए रखने के लिए आवश्यक है।
**डिफ़ॉल्ट पोर्ट:** 22
```
22/tcp open ssh syn-ack
```
**SSH सर्वर:**
* [openSSH](http://www.openssh.org) OpenBSD SSH, BSD, Linux वितरणों और Windows में शिप होता है जो Windows 10 से शुरू हुआ
* [Dropbear](https://matt.ucc.asn.au/dropbear/dropbear.html) कम मेमोरी और प्रोसेसर संसाधनों वाले वातावरणों के लिए SSH कार्यान्वयन, OpenWrt में शिप होता है
* [PuTTY](https://www.chiark.greenend.org.uk/\~sgtatham/putty/) Windows के लिए SSH कार्यान्वयन, क्लाइंट सामान्यत: उपयोग किया जाता है लेकिन सर्वर का उपयोग अधिक दुर्लभ है
* [CopSSH](https://www.itefix.net/copssh) Windows के लिए OpenSSH का कार्यान्वयन
**SSH पुस्तकालय (सर्वर-साइड कार्यान्वयन को कार्यान्वित करना):**
* [libssh](https://www.libssh.org) SSHv2 प्रोटोकॉल को कार्यान्वित करने वाली मल्टीप्लेटफॉर्म सी पुस्तकालय जिसमें [Python](https://github.com/ParallelSSH/ssh-python), [Perl](https://github.com/garnier-quentin/perl-libssh/) और [R](https://github.com/ropensci/ssh) में बाइंडिंग है; यह KDE द्वारा sftp के लिए और GitHub द्वारा git SSH बुनियाद के लिए उपयोग किया जाता है
* [wolfSSH](https://www.wolfssl.com/products/wolfssh/) ANSI C में लिखी गई SSHv2 सर्वर पुस्तकालय जो एम्बेडेड, आरटीओएस, और संसाधन-सीमित वातावरणों के लिए लक्षित है
* [Apache MINA SSHD](https://mina.apache.org/sshd-project/index.html) Apache SSHD जावा पुस्तकालय Apache MINA पर आधारित है
* [paramiko](https://github.com/paramiko/paramiko) Python SSHv2 प्रोटोकॉल पुस्तकालय
## गणना
### बैनर ग्रबिंग
```bash
nc -vn <IP> 22
```
### स्वचालित ssh-audit
ssh-audit एक टूल है जो ssh सर्वर और क्लाइंट कॉन्फ़िगरेशन की मान्यता की जांच के लिए है।
[https://github.com/jtesta/ssh-audit](https://github.com/jtesta/ssh-audit) एक अपडेटेड fork है [https://github.com/arthepsy/ssh-audit/](https://github.com/arthepsy/ssh-audit/)
**विशेषताएँ:**
* SSH1 और SSH2 प्रोटोकॉल सर्वर समर्थन;
* SSH क्लाइंट कॉन्फ़िगरेशन का विश्लेषण;
* बैनर पकड़ें, डिवाइस या सॉफ़्टवेयर और ऑपरेटिंग सिस्टम को पहचानें, संपीड़न का पता लगाएं;
* कुंजी-विनिमय, होस्ट-कुंजी, एन्क्रिप्शन और संदेश सत्यापन कोड एल्गोरिदम इकाइयों को इकट्ठा करें;
* एल्गोरिदम सूचना उत्पादन (उपलब्ध कब से, हटा दिया गया/अक्षम, असुरक्षित/कमजोर/पुराना, आदि);
* एल्गोरिदम सिफारिशें उत्पादन (पहचाने गए सॉफ़्टवेयर संस्करण के आधार पर जोड़ें या हटाएं);
* सुरक्षा सूचना उत्पादन (संबंधित मुद्दे, निर्धारित CVE सूची, आदि);
* एल्गोरिदम सूचना के आधार पर SSH संस्करण संगतता का विश्लेषण;
* OpenSSH, Dropbear SSH और libssh से ऐतिहासिक सूचना;
* Linux और Windows पर चलता है;
* कोई निर्भरता नहीं
```bash
usage: ssh-audit.py [-1246pbcnjvlt] <host>
-1, --ssh1 force ssh version 1 only
-2, --ssh2 force ssh version 2 only
-4, --ipv4 enable IPv4 (order of precedence)
-6, --ipv6 enable IPv6 (order of precedence)
-p, --port=<port> port to connect
-b, --batch batch output
-c, --client-audit starts a server on port 2222 to audit client
software config (use -p to change port;
use -t to change timeout)
-n, --no-colors disable colors
-j, --json JSON output
-v, --verbose verbose output
-l, --level=<level> minimum output level (info|warn|fail)
-t, --timeout=<secs> timeout (in seconds) for connection and reading
(default: 5)
$ python3 ssh-audit <IP>
```
### सर्वर की सार्वजनिक SSH कुंजी
```bash
ssh-keyscan -t rsa <IP> -p <PORT>
```
### कमजोर एन्क्रिप्शन एल्गोरिदम
यह डिफ़ॉल्ट रूप से **nmap** द्वारा पता चलता है। लेकिन आप **sslcan** या **sslyze** का भी उपयोग कर सकते हैं।
### Nmap स्क्रिप्ट
```bash
nmap -p22 <ip> -sC # Send default nmap scripts for SSH
nmap -p22 <ip> -sV # Retrieve version
nmap -p22 <ip> --script ssh2-enum-algos # Retrieve supported algorythms
nmap -p22 <ip> --script ssh-hostkey --script-args ssh_hostkey=full # Retrieve weak keys
nmap -p22 <ip> --script ssh-auth-methods --script-args="ssh.user=root" # Check authentication methods
```
### शोडन
* `ssh`
## ब्रूट फोर्स उपयोगकर्ता नाम, पासवर्ड और निजी कुंजी
### उपयोगकर्ता नाम सूचीकरण
कुछ OpenSSH संस्करणों में आप उपयोगकर्ताओं की सूचीकरण के लिए एक समय आक्रमण बना सकते हैं। आप इसे उत्पादित करने के लिए मेटास्प्लॉइट मॉड्यूल का उपयोग कर सकते हैं:
```
msf> use scanner/ssh/ssh_enumusers
```
### [ब्रूट फोर्स](../generic-methodologies-and-resources/brute-force.md#ssh)
कुछ सामान्य ssh क्रेडेंशियल्स [यहाँ](https://github.com/danielmiessler/SecLists/blob/master/Passwords/Default-Credentials/ssh-betterdefaultpasslist.txt) और [यहाँ](https://github.com/danielmiessler/SecLists/blob/master/Passwords/Common-Credentials/top-20-common-SSH-passwords.txt) और नीचे।
### निजी कुंजी ब्रूट फोर्स
अगर आपको कुछ ssh निजी कुंजी पता है जो उपयोग की जा सकती है... तो इसे प्रयास करें। आप nmap स्क्रिप्ट का उपयोग कर सकते हैं:
```
https://nmap.org/nsedoc/scripts/ssh-publickey-acceptance.html
```
या MSF अतिरिक्त मॉड्यूल:
```
msf> use scanner/ssh/ssh_identify_pubkeys
```
#### या `ssh-keybrute.py` का उपयोग करें (नेटिव पायथन3, हल्का और पुराने एल्गोरिदम सक्षम): [snowdroppe/ssh-keybrute](https://github.com/snowdroppe/ssh-keybrute).
#### यहाँ ज्ञात बुरी कुंजी मिल सकती है:
{% embed url="https://github.com/rapid7/ssh-badkeys/tree/master/authorized" %}
#### कमजोर SSH कुंजी / Debian पूर्वानुमाननीय PRNG
कुछ सिस्टमों में एक्सरोटिक सामग्री उत्पन्न करने के लिए उपयोग किए गए यादृच्छिक बीज में ज्ञात दोष हो सकते हैं। इससे एक द्रुत तालिका कम हो सकती है जिसे ब्रूटफोर्स किया जा सकता है। Debian सिस्टम पर उत्पन्न कमजोर PRNG से प्रभावित सिस्टमों पर पूर्व-उत्पन्न कुंजी के सेट यहाँ उपलब्ध हैं: [g0tmi1k/debian-ssh](https://github.com/g0tmi1k/debian-ssh).
आपको यहाँ देखना चाहिए ताकि पीड़ित मशीन के लिए वैध कुंजी खोज सकें।
### केरबेरोस
**crackmapexec** `ssh` प्रोटोकॉल का उपयोग करके **केरबेरोस के माध्यम से प्रमाणीकरण करने** के लिए विकल्प `--kerberos` का उपयोग कर सकता है।\
अधिक जानकारी के लिए `crackmapexec ssh --help` चलाएं।
## डिफ़ॉल्ट क्रेडेंशियल्स
| **विक्रेता** | **उपयोगकर्ता नाम** | **पासवर्ड** |
| ---------- | ----------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| APC | apc, डिवाइस | apc |
| Brocade | व्यवस्थापक | admin123, password, brocade, fibranne |
| Cisco | व्यवस्थापक, cisco, सक्षम करें, hsa, pix, pnadmin, ripeop, रूट, shelladmin | admin, Admin123, default, password, secur4u, cisco, Cisco, \_Cisco, cisco123, C1sco!23, Cisco123, Cisco1234, TANDBERG, change\_it, 12345, ipics, pnadmin, diamond, hsadb, c, cc, attack, blender, changeme |
| Citrix | रूट, nsroot, nsmaint, vdiadmin, kvm, cli, व्यवस्थापक | C1trix321, nsroot, nsmaint, kaviza, kaviza123, freebsd, public, rootadmin, wanscaler |
| D-Link | व्यवस्थापक, उपयोगकर्ता | private, admin, user |
| Dell | रूट, उपयोगकर्ता1, व्यवस्थापक, vkernel, cli | calvin, 123456, password, vkernel, Stor@ge!, admin |
| EMC | व्यवस्थापक, रूट, सिस्टम प्रशासक | EMCPMAdm7n, Password#1, Password123#, sysadmin, changeme, emc |
| HP/3Com | व्यवस्थापक, रूट, vcx, app, spvar, manage, hpsupport, opc\_op | admin, password, hpinvent, iMC123, pvadmin, passw0rd, besgroup, vcx, nice, access, config, 3V@rpar, 3V#rpar, procurve, badg3r5, OpC\_op, !manage, !admin |
| Huawei | व्यवस्थापक, रूट | 123456, admin, root, Admin123, Admin@storage, Huawei12#$, HwDec@01, hwosta2.0, HuaWei123, fsp200@HW, huawei123 |
| IBM | USERID, व्यवस्थापक, प्रबंधक, mqm, db2inst1, db2fenc1, dausr1, db2admin, iadmin, सिस्टम, डिवाइस, ufmcli, ग्राहक | PASSW0RD, passw0rd, admin, password, Passw8rd, iadmin, apc, 123456, cust0mer |
| Juniper | netscreen | netscreen |
| NetApp | व्यवस्थापक | netapp123 |
| Oracle | रूट, oracle, oravis, applvis, ilom-admin, ilom-operator, nm2user | changeme, ilom-admin, ilom-operator, welcome1, oracle |
| VMware | vi-admin, रूट, hqadmin, vmware, व्यवस्थापक | vmware, vmw@re, hqadmin, default |
## SSH-MitM
यदि आप पीड़ित के रूप में स्थानीय नेटवर्क में हैं जो SSH सर्वर से उपयोगकर्ता नाम और पासवर्ड के साथ कनेक्ट होने जा रहा है, तो आप **उन क्रेडेंशियल्स को चुराने के लिए MitM हमला करने** की कोशिश कर सकते हैं:
**हमले का मार्ग:**
* **ट्रैफिक पुनर्निर्देशन:** हमलावर **पीड़ित का ट्रैफिक अपनी मशीन पर भटकाता है**, वास्तव में **SSH सर्वर के लिए कनेक्शन को अंतर्वर्ती** करता है।
* **अंतर्वर्तीकरण और लॉगिंग:** हमलावर की मशीन एक **प्रॉक्सी** के रूप में काम करती है, उपयोगकर्ता के लॉगिन विवरणों को **पकड़ती** है जैसे कि वास्तविक SSH सर्वर बनने का दावा करते हुए।
* **कमांड निष्पादन और रिले:** अंत में, हमलावर की सर्वर **उपयोगकर्ता के क्रेडेंशियल्स को लॉग करती है**, **वास्तविक SSH सर्वर पर कमांड फॉरवर्ड** करती है, **उन्हें निष्पादित** करती है, और **परिणाम वापस** उपयोगकर्ता को भेजती है, जिससे प्रक्रिया सुगम और वैध लगती है।
[**SSH MITM**](https://github.com/jtesta/ssh-mitm) उसी को करता है जो ऊपर वर्णित है।
वास्तविक MitM को कैप्चर करने के लिए आप ARP स्पूफिंग, DNS स्पूफिंग जैसी तकनीकों का उपयोग कर सकते हैं या [**नेटवर्क स्पूफिंग हमलों**](../generic-methodologies-and-resources/pentesting-network/#spoofing) में वर्णित अन्य तकनीकों का उपयोग कर सकते हैं।
## SSH-Snake
यदि आप एक नेटवर्क को चलाना चाहते हैं जिसमें प्राप्त की गई SSH निजी कुंजीयों का उपयोग करके प्रत्येक प्रणाली पर नए होस्ट के लिए प्रत्येक निजी कुंजी का उपयोग करते हैं, तो [**SSH-Snake**](https://github.com/MegaManSec/SSH-Snake) आपको आवश्यक है।
SSH-Snake स्वचालित और पुनरावृत्ति करने वाले निम्नलिखित कार्यों को करता है:
1. वर्तमान प्रणाली पर, किसी भी SSH निजी कुंजीयों को खोजें,
2. वर्तमान प्रणाली पर, उन सभी होस्ट या गंतव्य (उपयोगकर्ता@होस्ट) को खोजें जिन्हें निजी कुंजी स्वीकार कर सकती है,
3. खोजी गई सभी गंतव्यों में सभी निजी कुंजीयों का उपयोग करने का प्रयास करें,
4. यदि किसी गंतव्य से सफलतापूर्वक कनेक्ट किया जाता है, तो पुनः #1 - #4 चरणों को पुनरावृत्ति करता है।
यह पूरी तरह से स्व-प्रतिलिपि और स्व-प्रसारी है - और पूरी तरह से फाइल रहित है।
## कॉन्फ़िग मिसकॉन्फ़िगरेशन
### रूट लॉगिन
SSH सर्वरों के लिए डिफ़ॉल्ट रूप से रूट उपयोगकर्ता लॉगिन की अनुमति देना सामान्य है, जो एक महत्वपूर्ण सुरक्षा जोखिम पैदा करता है। **रूट लॉगिन को अक्षम करना** सर्वर को सुरक्षित करने का एक महत्वपूर्ण कदम है। प्रशासनिक अधिकारों के अनधिकृत पहुंच और ब्रूट फोर्स हमलों को इस परिवर्तन करके कम किया जा सकता है।
**OpenSSH में रूट लॉगिन को अक्षम करने के लिए:**
1. **SSH कॉन्फ़िग फ़ाइल को संपादित** करें: `sudoedit /etc/ssh/sshd_config`
2. **सेटिंग बदलें** `#PermitRootLogin yes` से **`PermitRootLogin no`** करें।
3. **कॉन्फ़िगरेशन को पुनः लोड** करें: `sudo systemctl daemon-reload`
4. परिवर्तन लागू करने के लिए **SSH सर्वर को पुनः आरंभ** करें: `sudo systemctl restart sshd`
### SFTP ब्रूट फोर्स
* [**SFTP ब्रूट फोर्स**](../generic-methodologies-and-resources/brute-force.md#sftp)
### SFTP कमांड निष्पादन
SFTP सेटअप के साथ एक सामान्य अवधारणा होती है, जहां प्रशासक उपयोगकर्ताओं को दूरस्थ शैली पहुंच सक्षम करने के लिए इच्छुक होते
```bash
ssh -v noraj@192.168.1.94 id
...
Password:
debug1: Authentication succeeded (keyboard-interactive).
Authenticated to 192.168.1.94 ([192.168.1.94]:22).
debug1: channel 0: new [client-session]
debug1: Requesting no-more-sessions@openssh.com
debug1: Entering interactive session.
debug1: pledge: network
debug1: client_input_global_request: rtype hostkeys-00@openssh.com want_reply 0
debug1: Sending command: id
debug1: client_input_channel_req: channel 0 rtype exit-status reply 0
debug1: client_input_channel_req: channel 0 rtype eow@openssh.com reply 0
uid=1000(noraj) gid=100(users) groups=100(users)
debug1: channel 0: free: client-session, nchannels 1
Transferred: sent 2412, received 2480 bytes, in 0.1 seconds
Bytes per second: sent 43133.4, received 44349.5
debug1: Exit status 0
$ ssh noraj@192.168.1.94 /bin/bash
```
यहाँ एक सुरक्षित SFTP कॉन्फ़िगरेशन का उदाहरण है (`/etc/ssh/sshd_config` - openSSH) उपयोगकर्ता `noraj` के लिए:
```
Match User noraj
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
PermitTunnel no
X11Forwarding no
PermitTTY no
```
### SFTP टनलिंग
यदि आपके पास एक SFTP सर्वर तक पहुंच है तो आप इसके माध्यम से अपना ट्रैफिक टनल कर सकते हैं, उदाहरण के लिए सामान्य पोर्ट फॉरवर्डिंग का उपयोग करके:
```bash
sudo ssh -L <local_port>:<remote_host>:<remote_port> -N -f <username>@<ip_compromised>
```
### SFTP सिंलिंक
**sftp** में "**symlink**" कमांड होता है। इसलिए, अगर आपके पास किसी फोल्डर में **writable rights** हैं, तो आप **other folders/files** के **symlinks** बना सकते हैं। आप शायद एक chroot के अंदर **trapped** हैं, इसलिए यह आपके लिए **specially useful** नहीं होगा, लेकिन, अगर आप निर्मित **symlink** को एक **no-chroot service** से **access** कर सकते हैं (उदाहरण के लिए, अगर आप वेब से symlink का उपयोग कर सकते हैं), तो आप **web** के माध्यम से **symlinked files** को **open** कर सकते हैं।
उदाहरण के लिए, एक नए फ़ाइल **"**_**froot**_**" से "**_**/**_**"** तक एक **symlink** बनाने के लिए:
```bash
sftp> symlink / froot
```
### प्रमाणीकरण विधियाँ
उच्च सुरक्षा वातावरण में केवल कुंजी-आधारित या दो घटक प्रमाणीकरण को सक्षम करना एक सामान्य अभ्यास है बजाय साधारण घटक पासवर्ड आधारित प्रमाणीकरण के। लेकिन अक्सर मजबूत प्रमाणीकरण विधियाँ सक्षम कर दी जाती हैं बिना कमजोर विध
```bash
ssh -v 192.168.1.94
OpenSSH_8.1p1, OpenSSL 1.1.1d 10 Sep 2019
...
debug1: Authentications that can continue: publickey,password,keyboard-interactive
```
उदाहरण के लिए यदि किसी प्रमाणीकरण विफलता सीमा सेट की गई है और आपको कभी पासवर्ड विधि तक पहुंचने का मौका नहीं मिलता, तो आप `PreferredAuthentications` विकल्प का उपयोग करके इस विधि का उपयोग करने के लिए बाध्य कर सकते हैं।
```bash
ssh -v 192.168.1.94 -o PreferredAuthentications=password
...
debug1: Next authentication method: password
```
एसएसएच सर्वर कॉन्फ़िगरेशन की समीक्षा करना आवश्यक है ताकि केवल अपेक्षित विधियाँ अधिकृत हों। ग्राहक पर वर्बोज मोड का उपयोग कॉन्फ़िगरेशन की प्रभावकारिता देखने में मदद कर सकता है।
### कॉन्फ़िग फ़ाइलें
```bash
ssh_config
sshd_config
authorized_keys
ssh_known_hosts
known_hosts
id_rsa
```
## Fuzzing
* [https://packetstormsecurity.com/files/download/71252/sshfuzz.txt](https://packetstormsecurity.com/files/download/71252/sshfuzz.txt)
* [https://www.rapid7.com/db/modules/auxiliary/fuzzers/ssh/ssh\_version\_2](https://www.rapid7.com/db/modules/auxiliary/fuzzers/ssh/ssh\_version\_2)
## References
* आप यहाँ [https://www.ssh-audit.com/hardening\_guides.html](https://www.ssh-audit.com/hardening\_guides.html) पर SSH को मजबूत करने के रोचक गाइड देख सकते हैं।
* [https://community.turgensec.com/ssh-hacking-guide](https://community.turgensec.com/ssh-hacking-guide)
<img src="../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
यदि आप **हैकिंग करियर** में रुचि रखते हैं और अनहैकेबल को हैक करना चाहते हैं - **हम भर्ती कर रहे हैं!** (_फ्लूएंट पोलिश लिखित और बोली जानी चाहिए_).
{% embed url="https://www.stmcyber.com/careers" %}
## HackTricks Automatic Commands
```
Protocol_Name: SSH
Port_Number: 22
Protocol_Description: Secure Shell Hardening
Entry_1:
Name: Hydra Brute Force
Description: Need Username
Command: hydra -v -V -u -l {Username} -P {Big_Passwordlist} -t 1 {IP} ssh
Entry_2:
Name: consolesless mfs enumeration
Description: SSH enumeration without the need to run msfconsole
Note: sourced from https://github.com/carlospolop/legion
Command: msfconsole -q -x 'use auxiliary/scanner/ssh/ssh_version; set RHOSTS {IP}; set RPORT 22; run; exit' && msfconsole -q -x 'use scanner/ssh/ssh_enumusers; set RHOSTS {IP}; set RPORT 22; run; exit' && msfconsole -q -x 'use auxiliary/scanner/ssh/juniper_backdoor; set RHOSTS {IP}; set RPORT 22; run; exit'
```
<details>
<summary><strong>जानें AWS हैकिंग को शून्य से हीरो तक</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
दूसरे तरीके HackTricks का समर्थन करने के लिए:
* अगर आप अपनी **कंपनी का विज्ञापन HackTricks में देखना चाहते हैं** या **HackTricks को PDF में डाउनलोड करना चाहते हैं** तो [**सब्सक्रिप्शन प्लान्स**](https://github.com/sponsors/carlospolop) देखें!
* [**आधिकारिक PEASS & HackTricks स्वैग**](https://peass.creator-spring.com) प्राप्त करें
* हमारे विशेष [**NFTs**](https://opensea.io/collection/the-peass-family) संग्रह **The PEASS Family** की खोज करें
* **शामिल हों** 💬 [**डिस्कॉर्ड समूह**](https://discord.gg/hRep4RUj7f) या [**टेलीग्राम समूह**](https://t.me/peass) या **मुझे** **ट्विटर** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)** पर फॉलो** करें।
* **अपने हैकिंग ट्रिक्स साझा करें** PRs के माध्यम से [**HackTricks**](https://github.com/carlospolop/hacktricks) और [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos में सबमिट करके।
</details>