Narzędzia do uszkadzania plików kodu i danych
Formaty tekstowe nie mają nagłówka do zniszczenia, więc mieszanie znaków daje tylko inny tekst. Te narzędzia wstrzykują sekwencje bajtów, które w ogóle nie są poprawnym UTF-8, dzięki czemu plik przestaje być dekodowalny, a nie tylko czyta się jak bełkot, i to właśnie sprawia, że analizator zawodzi tak jak przy prawdziwym uszkodzeniu.
Każde narzędzie w skrócie
- Uszkadzanie JSON .json, .jsonl, .geojson
Znaki strukturalne. Nawiasy klamrowe, kwadratowe, przecinki i cudzysłowy zostają nadpisane, więc dokumentu nie da się już zbalansować. - Uszkadzanie XML .xml, .xsd, .rss, .plist
Deklaracja XML. Otwierająca instrukcja przetwarzania<?xml version…?>zostaje zniszczona, więc kodowania i wersji nie da się ustalić. - Uszkadzanie HTML .html, .htm, .xhtml
Kodowanie znaków. Wstrzykiwane są nieprawidłowe sekwencje UTF-8, więc dekoder przeglądarki produkuje znaki zastępcze w całym dokumencie. - Uszkadzanie CSV .csv, .tsv
Struktura separatorów. Przecinki i znaki końca wiersza zostają nadpisane, więc wiersze nie dzielą się już na spójną liczbę kolumn. - Uszkadzanie zrzutów SQL .sql, .dump
Znaki kończące instrukcje. Średniki i znaki końca wiersza zostają nadpisane, więc instrukcje zlewają się w nieanalizowalne wejście. - Uszkadzanie YAML .yaml, .yml
Wcięcia. Początkowe białe znaki zostają nadpisane, przez co zapada się zagnieżdżenie nadające YAML-owi strukturę. - Uszkadzanie Markdown .md, .markdown, .mdx
Kodowanie znaków. W całym pliku wstrzykiwane są nieprawidłowe sekwencje UTF-8, więc dekodowanie jako tekstu zawodzi.
O tych narzędziach z kategorii kod i dane
Wszystkie wymienione tu narzędzia korzystają z tego samego silnika. Osobne strony istnieją, bo każdy format zawodzi inaczej i warto wiedzieć, czego się spodziewać: która aplikacja pokaże który błąd, czy funkcja naprawy uratuje plik i co przetrwa na każdym poziomie uszkodzenia.
Co je łączy
- Nic nie jest wysyłane. Każdy bajt jest przetwarzany w Twojej przeglądarce.
- Bez limitu rozmiaru. Pliki są obsługiwane porcjami po 8 MB.
- Wynik wygląda normalnie. Ta sama nazwa pliku, długość w bajtach i typ MIME.
- Cztery poziomy uszkodzenia. Od uszkodzenia częściowego po szum kryptograficzny.