Tipy | Javascript

Tip: Javascriptový hack schránky. Aneb když na webu zkopírujete něco úplně jiného

Tip: Javascriptový hack schránky. Aneb když na webu zkopírujete něco úplně jiného

Každé malé dítě ví, že když na webu něco zkopíruje do systémové schránky, tak to tam prostě je a může to kdykoliv a kamkoliv zase vložit. Skutečnost je ale mnohem složitější, protože tu máme Javascript a potenciální záškodníky, kteří mohou obsah schránky pozměnit.

Podívejte se třeba na tento výrok níže. Vypadá zcela neškodně, že? Zkuste jej ale ručně zkopírovat a někam vložit:

Bobík s Pinďou vaří guláš.

Nejspíše uvidíte úplně jiný text. Pokud tedy nepoužíváte nějaký starý (třeba IE) nebo speciální prohlížeč s omezenou podporou moderního Javascriptu.

Podívejte se na video:

Falešná kočička

Podobně si můžeme pohrát i s dalšími typy dat. Takže když odstavec textu nahradím obrázkem a o něco delším kódem, docílím efektu jako ve videu níže, ve kterém z webové stránky namísto fotky hezké kočičky zkopíruji ošklivého Kubu.

Nebezpečný vtípek s příkazovou řádkou

Toto byly ještě neškodné vtípky, dejme ale tomu, že na webu hledáte návod, jak udělat něco složitějšího na počítači, přičemž součástí manuálu bude nějaký příkaz, který máte vložit do příkazové řádky.

Třeba by to mohl být neškodný příkaz pro výpis obsahu adresáře na Windows:

dir

Jelikož ho nechcete ručně opisovat, abyste si ušetřili čas, zkopírujete jej a rovnou vložíte do příkazové řádky. A opět, pokud používáte současný webový prohlížeč bez dalších úprav a stejně tak prehistorickou Příkazovou řádku, vloží se do ní úplně jiný příkaz, který třeba může začít mazat soubory, instalovat malware a tak podobně.

Podívejte se na video:

Ke všemu, a to je zdaleka nejhorší, příkaz se rovnou i zpracuje bez potřeby klepnutí na ENTER, jeho součástí je totiž na konci i znak pro zalomení řádku.

Starou Příkazovou řádku už nepoužívejte!

O důvod více, pro používat PowerShell anebo v případě Windows 11 jeho nový Terminal. Zatímco PowerShell počká i tak na ENTER, Terminal u víceřádkového textu zobrazí varování s náhledem a zeptá se, jestli chcete obsah schránky opravdu vložit.

Klepněte pro větší obrázek
Pokus o vložení víceřádkového textu v novém Windows Terminalu

Jak jsme to udělali? Stačil jeden řádek kódu

Podobná srandička přitom není žádný sofistikovaný hacking, ale naprosto standardní práce s rozhraním Javascriptu Clipboard API. Napoví primitivní kódy níže.

První ukázka:

<p oncopy="navigator.clipboard.writeText('Už máte Živě.cz Premium?')">
    Bobík s Pinďou vaří guláš.
</p>

Druhá ukázka:

<p oncopy="navigator.clipboard.writeText('ping google.com\n')">
    dir
</p>

Jednoduše jsem u jednotlivých HTML objektů nastavil, co se má stát po události oncopy, tedy po vyvolání požadavku na zkopírování objektu (v tomto případě jeho textu). Byla to instrukce navigator.cliboard.writeText, kdy jsem pomocí Javascriptu do schránky vložil úplně jiný obsah, než si myslí návštěvník stránky.

U příkladu se zdrojovým kódem jsem pak alternativní text příkazu zakončil zástupným znakem zalomení řádku \n.

Pokud tedy často kopírujete různé příkazy z webových manuálů, pro klid v duši používejte takové textové terminály, které nabízejí alespoň elementární ochranu při vkládání textu ze systémové schránky.

Diskuze (17) Další článek: JWST život ve vesmíru nenajde. Jeho nástupce možná

Témata článku: Google, Windows, Prohlížeče, Bezpečnost, Programování, Pojďme programovat elektroniku, Tipy, API, Javascript, Kód, Obsah, Příkazová řádka, HTML, PowerShell, Windows Terminal, Hack, Terminal, Jáva, Text, Bobík, Schránka, Kuba, Příkaz



Recenze distribuovaného úložiště Cubbit Cell. Cloud a NAS v jednom

Recenze distribuovaného úložiště Cubbit Cell. Cloud a NAS v jednom

Díky inovativnímu konceptu k přístupu k ukládání dat slibuje Cubbit takřka stoprocentní ochranu dat se zachováním soukromí. Protože je ale v rané fázi vývoje, s tradičními řešeními se prozatím nemůže měřit.

Stanislav Janů
NASCloud
České televize se tak moc bojí videoher, až je to směšné (komentář)

České televize se tak moc bojí videoher, až je to směšné (komentář)

** Jeden z největších obchodů historie se nedostal do hlavních zpráv ** Videohry televizím slouží jen k honění senzací, není to seriózní byznys ** České videohry jsou přitom úspěšnější než jiná kulturní díla

Lukáš Václavík
HryKomentářByznys
Podvodníci v Call of Duty Warzone mají novou zábavu. Létají v autech

Podvodníci v Call of Duty Warzone mají novou zábavu. Létají v autech

Stejně aktivně, jako Activision vymýšlí obranu proti hackerům vymýšlí i hackeři nové způsoby, jak zatopit normálním hráčům.

Michal Maliarov
Call of Duty: WarzoneBattle Royale
QR kódy jsou skvělý pomocník, ale i zlý pán. Tohle jsou nejčastější podvody, které vás mohou připravit o peníze

QR kódy jsou skvělý pomocník, ale i zlý pán. Tohle jsou nejčastější podvody, které vás mohou připravit o peníze

** Čtvercový grafický kód usnadňuje život už mnoho let ** S rostoucí oblibou a využitím přibývá i podvodů ** Nejčastěji jsou podvody zaměřeny na podstrčení falešného kódu

Martin Miksa
PodvodQR kódBezpečnost
Tady to půjde snadno. Opravy Samsungu Galaxy S21 FE nebudou nijak časově náročnou operací

Tady to půjde snadno. Opravy Samsungu Galaxy S21 FE nebudou nijak časově náročnou operací

** Na světě je první rozborka Samsungu Galaxy S21 FE ** Opravy telefonu by měly být velmi jednoduchou záležitostí ** Čipset kryje grafit a v těle najdeme i vypařovací komoru

Martin Chroust
GalaxyRozborka
Nejlepší filmy na Netflixu v roce 2021. Všechny mají český dabing nebo titulky

Nejlepší filmy na Netflixu v roce 2021. Všechny mají český dabing nebo titulky

Tyto filmy byly v roce 2021 na českém Netflixu nejoblíbenější. Nerozlišujeme žánr, stáří ani hodnocení na filmových webech. Jde o oblíbenost, kterou sleduje web FlixPatrol a počítá z ní souhrnné žebříčky.

Ondřej Králík
Netflix
Izrael díky speciální kamufláži zařídil pro své vojáky „neviditelnost“

Izrael díky speciální kamufláži zařídil pro své vojáky „neviditelnost“

** Materiál „Kit 300“ představuje vizuální i termální kamufláž ** Dokáže zablokovat tepelné vyzařování maskovaného vojáka či třeba stroje ** Velký kus materiálu Kit 300 může ukrýt vozidlo až do velikosti Hummeru

Stanislav Mihulka
IzraelMateriálArmáda