<summary><strong>Naučite hakovanje AWS-a od nule do heroja sa</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Ako želite da vidite **vašu kompaniju oglašenu u HackTricks-u** ili **preuzmete HackTricks u PDF formatu** proverite [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* **Pridružite se** 💬 [**Discord grupi**](https://discord.gg/hRep4RUj7f) ili [**telegram grupi**](https://t.me/peass) ili nas **pratite** na **Twitter-u** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Podelite svoje hakovanje trikove slanjem PR-ova na** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repozitorijume.
Ako veb stranica kreira PDF koristeći korisnički kontrolisani unos, možete pokušati da **prevarite robota** koji kreira PDF da **izvrši proizvoljni JS kod**.\
Dakle, ako **PDF kreator robot pronađe** neke vrste **HTML****tagova**, on će ih **interpretirati**, a vi možete **zloupotrebiti** ovaj ponašanje da izazovete **Server XSS**.
Molim vas, obratite pažnju da `<script></script>` tagovi ne rade uvek, pa će vam biti potrebna druga metoda za izvršavanje JS koda (na primer, zloupotreba `<img` ).\
Takođe, imajte na umu da ćete u redovnom iskorišćavanju biti **u mogućnosti da vidite/preuzmete kreirani PDF**, pa ćete moći da vidite sve što **pišete putem JS-a** (koristeći `document.write()` na primer). Ali, ako **ne možete videti** kreirani PDF, verovatno ćete morati **izvući informacije praveći web zahtev ka sebi** (Slepi).
- **wkhtmltopdf** je poznat po svojoj sposobnosti da konvertuje HTML i CSS u PDF dokumente, koristeći WebKit render mašinu. Ovaj alat je dostupan kao open-source komandna linija, što ga čini dostupnim za širok spektar aplikacija.
- **TCPDF** nudi robustno rešenje unutar PHP ekosistema za generisanje PDF-a. On je sposoban za rukovanje slikama, grafikama i enkripcijom, što pokazuje njegovu sposobnost za kreiranje složenih dokumenata.
- Za one koji rade u Node.js okruženju, **PDFKit** predstavlja prihvatljivu opciju. Omogućava generisanje PDF dokumenata direktno iz HTML-a i CSS-a, pružajući most između web sadržaja i formata za štampanje.
- Java programeri mogu preferirati **iText**, biblioteku koja ne samo da olakšava kreiranje PDF-a, već podržava i napredne funkcionalnosti poput digitalnih potpisa i popunjavanja formulara. Njegov obuhvatan skup funkcionalnosti čini ga pogodnim za generisanje sigurnih i interaktivnih dokumenata.
- **FPDF** je još jedna PHP biblioteka, koja se ističe svojom jednostavnošću i lakoćom korišćenja. Namijenjena je programerima koji traže jednostavan pristup generisanju PDF-a, bez potrebe za naprednim funkcionalnostima.
Bilo koji od prethodnih ili sledećih payloada može se koristiti unutar ovog SVG payloada. Jedan iframe koji pristupa Burpcollab poddomenu i još jedan koji pristupa metadata endpointu su dati kao primeri.
Najbolji način za iskorišćavanje ove ranjivosti je zloupotreba ranjivosti kako bi se naterao bot da učita skriptu kojom vi upravljate lokalno. Zatim ćete moći da lokalno promenite payload i naterate bota da ga učita sa istim kodom svaki put.
Ako je SSRF dozvoljen, ali **ne možete da pristupite** zanimljivom domenu ili IP adresi, [proverite ovu stranicu za potencijalne zaobilaženja](../ssrf-server-side-request-forgery/url-format-bypass.md).
U nekim situacijama, prilikom izvođenja napada, može biti korisno dodati kašnjenje između svake iteracije kako bi se izbeglo otkrivanje i sprečilo blokiranje od strane ciljnog servera. Ovo se naziva "bot delay" ili kašnjenje robota.
Da biste implementirali kašnjenje robota, možete koristiti funkciju `sleep()` ili slične metode u programskom jeziku koji koristite za izvršavanje napada. Ova funkcija će privremeno zaustaviti izvršavanje programa na određeno vreme pre nego što nastavi sa sledećom iteracijom.
Na primer, u Pythonu možete koristiti biblioteku `time` i funkciju `sleep()` kako biste postavili kašnjenje između iteracija. Evo kako to možete uraditi:
```python
import time
# Postavite kašnjenje od 1 sekunde između iteracija
time.sleep(1)
```
Ovo će zaustaviti izvršavanje programa na 1 sekundu pre nego što nastavi sa sledećom iteracijom. Možete prilagoditi vreme kašnjenja prema potrebama i zahtevima napada.
Važno je napomenuti da kašnjenje robota može biti korisno u određenim situacijama, ali nije uvek neophodno ili efikasno. Treba pažljivo proceniti kada je potrebno koristiti kašnjenje robota kako bi se postigao optimalan rezultat napada.
Port skeniranje je proces koji se koristi za identifikaciju otvorenih portova na ciljnom računaru ili mreži. Ova tehnika omogućava hakerima da otkriju ranjive tačke ulaza i izlaza, kao i da identifikuju servise koji su dostupni na ciljnom sistemu.
Da biste izvršili port skeniranje, možete koristiti različite alate kao što su Nmap, Masscan ili Zmap. Ovi alati šalju mrežne zahteve na određene portove i analiziraju odgovore kako bi utvrdili da li su portovi otvoreni, zatvoreni ili filtrirani.
Port skeniranje može biti korisno u procesu testiranja penetracije, jer omogućava identifikaciju potencijalnih ranjivosti i slabosti u mrežnoj infrastrukturi. Međutim, važno je napomenuti da port skeniranje može biti nezakonito ako se izvodi bez dozvole vlasnika sistema ili mreže.
Kada izvršavate port skeniranje, važno je biti pažljiv i poštovati zakonske propise. Uvek se preporučuje da imate pisanu dozvolu od vlasnika sistema ili mreže pre nego što izvršite bilo kakvo skeniranje portova.
Ova ranjivost se može vrlo lako transformisati u SSRF (jer možete učitati spoljne resurse pomoću skripte). Pokušajte je iskoristiti (pročitajte neke metapodatke?).
Postoje neki HTML 2 PDF engine-i koji omogućavaju **specificiranje priloga za PDF**, kao što je **PD4ML**. Možete zloupotrebiti ovu funkcionalnost da **priložite bilo koji lokalni fajl** PDF-u.\
Da biste otvorili prilog, otvorio sam fajl sa **Firefox-om i dvaput kliknuo na simbol spajalice** da bih **sačuvao prilog** kao novi fajl.\
Snimanje **PDF odgovora** sa Burp-om takođe bi trebalo da **prikaže prilog u čistom tekstu** unutar PDF-a.
<summary><strong>Naučite hakovanje AWS-a od nule do heroja sa</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Ako želite da vidite **vašu kompaniju oglašenu u HackTricks-u** ili **preuzmete HackTricks u PDF formatu** proverite [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* **Pridružite se** 💬 [**Discord grupi**](https://discord.gg/hRep4RUj7f) ili [**telegram grupi**](https://t.me/peass) ili nas **pratite** na **Twitter-u** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Podelite svoje hakovanje trikove slanjem PR-ova na** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repozitorijume.