TanodTools
PL

Wykrywacz niewidocznych znaków i dekoder ASCII smuggling

Wklej tekst, aby znaleźć znaki, których nie widać, i odczytać tekst ukryty w niewidocznych znakach tagów Unicode: spacje o zerowej szerokości, znaki kierunku tekstu, ukryte znaki tagów Unicode oraz słowa łączące litery łacińskie z podobnymi cyrylickimi lub greckimi.

Działa w przeglądarce; nic, co wpiszesz, nie opuszcza Twojego urządzenia

Wklej tekst, aby go sprawdzić.

Znaki o zerowej szerokości
0
Znaki kierunku tekstu
0
Znaki tagów Unicode
0
Znaki sterujące
0
Inne niewidoczne znaki
0
Nietypowe spacje
0
Słowa z mieszanych alfabetów
0

Tekst do kilku milionów znaków. Sprawdzanie obejmuje punkty kodowe Unicode: znajduje ukryte znaki, ale nie wie, czy dany znak jest nieszkodliwy w Twoim tekście. Prawdziwe sekwencje emoji, takie jak flagi i emoji rodzin, nie są oznaczane.

Jak znaleźć niewidoczne znaki

  1. Wklej tekst do sprawdzenia albo wybierz Wczytaj przykład, aby zobaczyć, co znajduje narzędzie.
  2. Przeczytaj liczby dla każdego rodzaju znaków, wyróżniony tekst i tabelę z wierszem, kolumną i punktem kodowym każdego wyniku.
  3. Wybierz Kopiuj oczyszczony tekst, aby dostać tekst bez niewidocznych znaków.

Jak znajdowane są ukryte znaki

Unicode definiuje wiele znaków, które niczego nie drukują: spacje i łączniki o zerowej szerokości, znaczniki odwracające kierunek tekstu, miękkie łączniki, spacje o nietypowej szerokości oraz znaki tagów odwzorowujące ASCII. We właściwym miejscu są przydatne, w niewłaściwym stają się utrapieniem albo bronią. Narzędzie czyta tekst punkt kodowy po punkcie kodowym i przypisuje każdy wynik do rodzaju, abyś zobaczył, co tam jest, zanim zdecydujesz, co z tym zrobić.

Raportowanych jest siedem rodzajów. Znaki o zerowej szerokości to m.in. spacja o zerowej szerokości, łączniki i znacznik kolejności bajtów. Znaki kierunku tekstu to osadzenia, wymuszenia, izolacje i znaczniki używane w atakach Trojan Source na kod źródłowy. Znaki tagów Unicode to blok U+E0000, służący do przemycania niewidocznych poleceń w tekście dla asystentów AI; każdy ciąg jest dekodowany, więc możesz przeczytać ASCII, który układa. Znaki sterujące to kody C0 i C1 poza tabulatorem i podziałami wiersza. Inne niewidoczne znaki obejmują miękki łącznik, niewidoczne operatory matematyczne, znaki wypełniające i selektory wariantów, a nietypowe spacje to spacja niełamliwa, spacje em i en oraz spacja ideograficzna. Wreszcie słowa z mieszanych alfabetów to słowa łączące litery łacińskie z cyrylickimi, greckimi lub ormiańskimi, czyli typowy sposób podrabiania nazwy domeny albo nazwy użytkownika.

Spacje o zerowej szerokości pojawiają się też w tekście wygenerowanym przez AI. Asystenci czatu i potoki przetwarzania tekstu czasem zostawiają w wyniku spacje lub łączniki o zerowej szerokości, a te same znaki mogą służyć jako niewidoczny znak wodny, więc wklejona odpowiedź może zawierać więcej, niż widać. Sprawdzenie tekstu tym narzędziem pokazuje dokładnie, co jest w nim ukryte.

Niektóre z tych znaków mają swoje miejsce w prawdziwym tekście, więc narzędzie zostawia je w spokoju tam, gdzie są normalne. Kompletna flaga Anglii, Szkocji lub Walii (czarna flaga, a po niej kilka liter tagów i tag anulujący), łącznik o zerowej szerokości między dwoma emoji oraz selektor prezentacji emoji po emoji są w porządku. Łącznik lub rozdzielacz wewnątrz słów perskich, w hindi czy arabskich również jest normalny, ale zostaje zgłoszony, bo narzędzie nie zna języka Twojego tekstu.

Oczyszczona kopia usuwa znaki o zerowej szerokości, kierunku, tagów, sterujące i inne niewidoczne. Nigdy nie zmienia słów z mieszanych alfabetów, bo zamiana litery zmieniłaby tekst; popraw je ręcznie po sprawdzeniu wyróżnionego słowa.

Wskazówki

Najczęstsze pytania

Czym są znaki o zerowej szerokości?

To znaki, które nie zajmują miejsca na ekranie, takie jak spacja o zerowej szerokości (U+200B), rozdzielacz o zerowej szerokości (U+200C), łącznik słów (U+2060) i znacznik kolejności bajtów (U+FEFF). Wkradają się do tekstu kopiowanego ze stron internetowych i komunikatorów i bez żadnego widocznego śladu potrafią psuć wyszukiwanie, hasła, kod i nazwy plików. Łącznik i rozdzielacz bywają też używane celowo w niektórych pismach, np. perskim i w hindi, więc sprawdź, zanim je usuniesz.

Czym jest atak Trojan Source?

Unicode ma znaki sterujące, które zmieniają kierunek wyświetlania tekstu, np. wymuszenie kierunku od prawej do lewej (U+202E). W kodzie źródłowym mogą sprawić, że wiersz wygląda inaczej, niż czyta go kompilator, więc z pozoru niewinny komentarz może ukrywać prawdziwy kod. Narzędzie wypisuje każdy dwukierunkowy znak sterujący, abyś mógł je zobaczyć.

Czym są znaki tagów Unicode i dlaczego mają znaczenie?

Znaki tagów (od U+E0000 do U+E007F) odwzorowują ASCII, ale nic nie wyświetlają. Tekst zapisany nimi jest niewidoczny dla czytelnika, lecz może go odczytać oprogramowanie, także asystenci AI, co pozwala przemycić ukryte polecenia do promptu lub dokumentu. Narzędzie dekoduje każdy ciąg znaków tagów z powrotem do tekstu ASCII, który układa, i pokazuje go w widocznym miejscu. Nazywa się to ASCII smuggling. Flaga Anglii, Szkocji lub Walii jest celowo zbudowana z kilku znaków tagów, więc kompletna sekwencja flagi nie jest oznaczana.

Dlaczego słowo jest oznaczone jako z mieszanych alfabetów?

Cyrylica i greka mają litery wyglądające tak samo jak łacińskie, np. cyrylickie а i łacińskie a. Słowo, które je miesza, jak pаypal z cyrylickim а, może uchodzić za prawdziwą nazwę, a prowadzić gdzie indziej. Narzędzie wypisuje każde słowo łączące litery łacińskie z cyrylickimi, greckimi lub ormiańskimi i pokazuje, które litery do niego nie pasują.

Czy oznacza emoji?

Nie. Łącznik o zerowej szerokości między dwoma emoji, jak w emoji rodzin lub zawodów, oraz selektor wariantu po emoji są częścią budowy emoji, więc zostają pominięte. Te same znaki w innych miejscach, np. między dwiema literami, są zgłaszane.

Czy mój tekst jest przesyłany?

Nie. Tekst jest sprawdzany w Twojej przeglądarce i nigdy nie opuszcza Twojego urządzenia.