hacktricks/src/network-services-pentesting/pentesting-631-internet-printing-protocol-ipp.md

24 lines
1.6 KiB
Markdown

{{#include ../banners/hacktricks-training.md}}
# Internet Printing Protocol \(IPP\)
Die **Internet Printing Protocol (IPP)**, soos gespesifiseer in **RFC2910** en **RFC2911**, dien as 'n grondslag vir druk oor die internet. Die vermoë om uitgebrei te word, word getoon deur ontwikkelings soos **IPP Everywhere**, wat daarop gemik is om mobiele en wolkdruk te standaardiseer, en die bekendstelling van uitbreidings vir **3D druk**.
Deur die gebruik van die **HTTP** protokol, voordeel IPP uit gevestigde sekuriteitspraktyke insluitend **basic/digest authentication** en **SSL/TLS encryption**. Aksies soos die indien van 'n druktaak of die navraag van drukkerstatus word uitgevoer deur middel van **HTTP POST requests** wat gerig is op die IPP bediener, wat op **port 631/tcp** werk.
'n Bekende implementering van IPP is **CUPS**, 'n oopbron-druksisteem wat algemeen voorkom in verskeie Linux verspreidings en OS X. Ten spyte van sy nut, kan IPP, soortgelyk aan LPD, uitgebuit word om kwaadwillige inhoud deur **PostScript** of **PJL files** oor te dra, wat 'n potensiële sekuriteitsrisiko beklemtoon.
```python
# Example of sending an IPP request using Python
import requests
url = "http://printer.example.com:631/ipp/print"
headers = {"Content-Type": "application/ipp"}
data = b"..." # IPP request data goes here
response = requests.post(url, headers=headers, data=data, verify=True)
print(response.status_code)
```
As jy meer wil leer oor [**hacking printers lees hierdie bladsy**](http://hacking-printers.net/wiki/index.php/Main_Page).
{{#include ../banners/hacktricks-training.md}}