Translated ['src/pentesting-web/clickjacking.md'] to pl

This commit is contained in:
Translator 2025-01-06 10:28:31 +00:00
parent c1ff58c973
commit bad86d27f3

View File

@ -15,7 +15,7 @@ Czasami możliwe jest **wypełnienie wartości pól formularza za pomocą parame
Jeśli potrzebujesz, aby użytkownik **wypełnił formularz**, ale nie chcesz bezpośrednio prosić go o wpisanie jakichś konkretnych informacji (jak e-mail czy konkretne hasło, które znasz), możesz po prostu poprosić go o **Drag\&Drop** coś, co zapisze twoje kontrolowane dane, jak w [**tym przykładzie**](https://lutfumertceylan.com.tr/posts/clickjacking-acc-takeover-drag-drop/).
### Podstawowy ładunek
```markup
```css
<style>
iframe {
position:relative;
@ -34,8 +34,8 @@ z-index: 1;
<div>Click me</div>
<iframe src="https://vulnerable.com/email?email=asd@asd.asd"></iframe>
```
### Multistep Payload
```markup
### Wieloetapowy ładunek
```css
<style>
iframe {
position:relative;
@ -59,7 +59,7 @@ left:210px;
<iframe src="https://vulnerable.net/account"></iframe>
```
### Drag\&Drop + Click ładunek
```markup
```css
<html>
<head>
<style>
@ -91,8 +91,17 @@ background: #F00;
Jeśli zidentyfikowałeś **atak XSS, który wymaga, aby użytkownik kliknął** na jakiś element, aby **wywołać** XSS, a strona jest **vulnerable to clickjacking**, możesz to wykorzystać, aby oszukać użytkownika do kliknięcia przycisku/linku.\
Przykład:\
Znalazłeś **self XSS** w niektórych prywatnych szczegółach konta (szczegóły, które **tylko ty możesz ustawić i odczytać**). Strona z **formularzem** do ustawienia tych szczegółów jest **vulnerable** na **Clickjacking** i możesz **prepopulate** **formularz** parametrami GET.\
Napastnik mógłby przygotować atak **Clickjacking** na tę stronę **prepopulate** **formularz** ładunkiem **XSS** i **oszukać** **użytkownika** do **przesłania** formularza. Tak więc, **gdy formularz zostanie przesłany** i wartości zostaną zmodyfikowane, **użytkownik wykona XSS**.
Znalazłeś **self XSS** w niektórych prywatnych danych konta (dane, które **tylko ty możesz ustawić i odczytać**). Strona z **formularzem** do ustawienia tych danych jest **vulnerable** na **Clickjacking** i możesz **prepopulate** **formularz** parametrami GET.\
Napastnik mógłby przygotować atak **Clickjacking** na tę stronę, **prepopulate** **formularz** ładunkiem **XSS** i **oszukać** **użytkownika** do **przesłania** formularza. Tak więc, **gdy formularz zostanie przesłany** i wartości zostaną zmodyfikowane, **użytkownik wykona XSS**.
### DoubleClickjacking
Po raz pierwszy [wyjaśnione w tym poście](https://securityaffairs.com/172572/hacking/doubleclickjacking-clickjacking-on-major-websites.html), ta technika wymagałaby od ofiary podwójnego kliknięcia na przycisk na niestandardowej stronie umieszczonej w określonym miejscu i wykorzystania różnic czasowych między zdarzeniami mousedown a onclick, aby załadować stronę ofiary podczas podwójnego kliknięcia, tak aby **ofiara faktycznie kliknęła na legitny przycisk na stronie ofiary**.
Przykład można zobaczyć w tym filmie: [https://www.youtube.com/watch?v=4rGvRRMrD18](https://www.youtube.com/watch?v=4rGvRRMrD18)
> [!WARNING]
> Ta technika pozwala oszukać użytkownika, aby kliknął w 1 miejsce na stronie ofiary, omijając wszelkie zabezpieczenia przeciwko clickjacking. Dlatego napastnik musi znaleźć **wrażliwe akcje, które można wykonać za pomocą tylko 1 kliknięcia, takie jak monity OAuth akceptujące uprawnienia**.
## Strategie łagodzenia Clickjacking
@ -105,10 +114,10 @@ Skrypty wykonywane po stronie klienta mogą podejmować działania, aby zapobiec
- Zapobieganie kliknięciom w niewidoczne ramki.
- Wykrywanie i informowanie użytkowników o potencjalnych próbach Clickjacking.
Jednak te skrypty do łamania ramek mogą być obejście:
Jednak te skrypty frame-busting mogą być obejście:
- **Ustawienia zabezpieczeń przeglądarek:** Niektóre przeglądarki mogą blokować te skrypty w zależności od ich ustawień zabezpieczeń lub braku wsparcia dla JavaScript.
- **Atrybut `sandbox` HTML5 iframe:** Napastnik może zneutralizować skrypty do łamania ramek, ustawiając atrybut `sandbox` z wartościami `allow-forms` lub `allow-scripts` bez `allow-top-navigation`. To uniemożliwia iframe weryfikację, czy jest górnym oknem, np.,
- **Atrybut `sandbox` iframe HTML5:** Napastnik może zneutralizować skrypty frame buster, ustawiając atrybut `sandbox` z wartościami `allow-forms` lub `allow-scripts` bez `allow-top-navigation`. To uniemożliwia iframe weryfikację, czy jest górnym oknem, np.,
```html
<iframe
id="victim_website"
@ -128,7 +137,7 @@ Nagłówek odpowiedzi HTTP **`X-Frame-Options`** informuje przeglądarki o legal
- `X-Frame-Options: allow-from https://trusted.com` - Tylko określony 'uri' może osadzić stronę.
- Zauważ ograniczenia: jeśli przeglądarka nie obsługuje tej dyrektywy, może nie działać. Niektóre przeglądarki preferują dyrektywę CSP frame-ancestors.
#### Dyrektywa frame-ancestors w Polityce Bezpieczeństwa Treści (CSP)
#### Dyrektywa frame-ancestors w polityce bezpieczeństwa treści (CSP)
Dyrektywa **`frame-ancestors` w CSP** jest zalecaną metodą ochrony przed Clickjacking:
@ -140,11 +149,11 @@ Na przykład, poniższa CSP zezwala tylko na osadzanie z tej samej domeny:
`Content-Security-Policy: frame-ancestors 'self';`
Dalsze szczegóły i złożone przykłady można znaleźć w [dokumentacji frame-ancestors CSP](https://w3c.github.io/webappsec-csp/document/#directive-frame-ancestors) oraz [dokumentacji frame-ancestors CSP Mozilli](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/frame-ancestors).
Dalsze szczegóły i złożone przykłady można znaleźć w [dokumentacji frame-ancestors CSP](https://w3c.github.io/webappsec-csp/document/#directive-frame-ancestors) oraz [dokumentacji frame-ancestors Mozilli](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/frame-ancestors).
### Polityka Bezpieczeństwa Treści (CSP) z `child-src` i `frame-src`
### Polityka bezpieczeństwa treści (CSP) z `child-src` i `frame-src`
**Polityka Bezpieczeństwa Treści (CSP)** to środek bezpieczeństwa, który pomaga w zapobieganiu Clickjacking i innym atakom wstrzykiwania kodu, określając, które źródła przeglądarka powinna zezwolić na ładowanie treści.
**Polityka bezpieczeństwa treści (CSP)** to środek bezpieczeństwa, który pomaga w zapobieganiu Clickjacking i innym atakom wstrzykiwania kodu, określając, które źródła przeglądarka powinna zezwolić na ładowanie treści.
#### Dyrektywa `frame-src`
@ -180,7 +189,7 @@ top.location = self.location
```
#### Wykorzystanie tokenów Anti-CSRF
- **Walidacja tokenów:** Użyj tokenów anti-CSRF w aplikacjach webowych, aby zapewnić, że żądania zmieniające stan są wykonywane celowo przez użytkownika, a nie przez stronę Clickjacked.
- **Walidacja tokenów:** Użyj tokenów anti-CSRF w aplikacjach internetowych, aby zapewnić, że żądania zmieniające stan są wykonywane celowo przez użytkownika, a nie przez stronę Clickjacked.
## References