hacktricks/pentesting-web/dependency-confusion.md

36 lines
5.9 KiB
Markdown
Raw Normal View History

2023-11-06 08:38:02 +00:00
# डिपेंडेंसी कन्फ्यूजन
2022-11-29 16:54:14 +00:00
<details>
2023-11-06 08:38:02 +00:00
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ हैकट्रिक्स क्लाउड ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 ट्विटर 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ ट्विच 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 यूट्यूब 🎥</strong></a></summary>
2022-11-29 16:54:14 +00:00
2023-11-06 08:38:02 +00:00
* क्या आप किसी **साइबर सुरक्षा कंपनी** में काम करते हैं? क्या आप अपनी कंपनी को **हैकट्रिक्स में विज्ञापित** देखना चाहते हैं? या क्या आपको **PEASS की नवीनतम संस्करण या HackTricks को PDF में डाउनलोड** करने की आवश्यकता है? [**सदस्यता योजनाएं**](https://github.com/sponsors/carlospolop) की जांच करें!
* [**द पीएस फैमिली**](https://opensea.io/collection/the-peass-family) की खोज करें, हमारा एकल [**NFT संग्रह**](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)**.**
* **हैकिंग ट्रिक्स साझा करें** हैकट्रिक्स रेपो (https://github.com/carlospolop/hacktricks) और [हैकट्रिक्स-क्लाउड रेपो](https://github.com/carlospolop/hacktricks-cloud) में पीआर जमा करके।
2022-11-29 16:54:14 +00:00
</details>
2023-11-06 08:38:02 +00:00
## मूलभूत जानकारी
2022-11-29 16:54:14 +00:00
2023-11-06 08:38:02 +00:00
संक्षेप में, डिपेंडेंसी कन्फ्यूजन संकट उत्पन्न होता है जब एक परियोजना एक पुस्तकालय का उपयोग कर रही होती है जिसका **गलत वर्तनी वाला नाम**, **अस्तित्व नहीं** होता है या एक **निर्दिष्ट संस्करण** के साथ और उपयोग की जाने वाली डिपेंडेंसी रिपॉजिटरी **सार्वजनिक** रिपॉजिटरी से **नवीनतम संस्करणों को इकट्ठा करने** की अनुमति देती है।
2022-11-29 16:54:14 +00:00
2023-11-06 08:38:02 +00:00
* **गलत वर्तनी वाला**: `requests` की जगह पर **`reqests`** को आयात करें
* **अस्तित्व नहीं**: `कंपनी-लॉगिंग` को आयात करें, एक आंतरिक पुस्तकालय जो **अब मौजूद नहीं है**
* **निर्दिष्ट संस्करण**: इस उदाहरण में `requests-company` जैसी **आंतरिक** **मौजूद** पुस्तकालय को आयात करें, लेकिन रिपॉजिटरी **सार्वजनिक रिपॉजिटरियों** की जांच करती है कि क्या **बड़े संस्करण** हैं।
2022-11-29 16:54:14 +00:00
2023-11-06 08:38:02 +00:00
## शोषण
2022-11-29 16:54:14 +00:00
{% hint style="warning" %}
2023-11-06 08:38:02 +00:00
सभी मामलों में हमलावर को केवल एक **हानिकारक पैकेज जारी करने की आवश्यकता** होती है जिसका नाम शिकार कंपनी द्वारा उपयोग की जाने वाली पुस्तकालयों का होता है।
2022-11-29 16:54:14 +00:00
{% endhint %}
2023-11-06 08:38:02 +00:00
### गलत वर्तनी वाला और अस्तित्व नहीं
2022-11-29 16:54:14 +00:00
2023-11-06 08:38:02 +00:00
यदि आपकी कंपनी कोई **आंतरिक पुस्तकालय नहीं आयात करने की कोशिश कर रही है**, तो बहुत संभावना है कि पुस्तकालयों का रिपॉजिटरी उसे **सार्वजनिक रिपॉजिटरियों** में खोजने की कोशिश करेगा। यदि किसी हमलावर ने इसे बनाया है, तो आपका कोड और मशीन जो चल रही है, बहुत संभावना है कि संक्रमित हो जाएगा।
2022-11-29 16:54:14 +00:00
2023-11-06 08:38:02 +00:00
### निर्दिष्ट संस्करण
2022-11-29 16:54:14 +00:00
2023-11-06 08:38:02 +00:00
डेवलपर्स के लिए बहुत सामान्य है कि वे पुस्तकालय के किसी भी संस्करण को **निर्दिष्ट नहीं** करें, या केवल एक **महत्त्वपूर्ण संस्करण** को निर्दिष्ट करें। फिर, इंटरप्रेटर नवीनतम संस्करण को डाउनलोड करने की कोशिश करेगा जो उन आवश्यकताओं को पूर