čtvrtek 24. července 2008

Bezpečnost SMS klíče při Internetbankingu s Vodafone předplacenou kartou

Nedávno bylo opět v tisku rozvířeno téma bezpečnosti Internetbankingu, viz třeba tento článek. Mnoho z nás se spoléhá na (geniálně jednoduchý způsob) zabezpečení transakcí SMS klíčem. To ovšem předpokládá, že i naše mobilní číslo nám nemůže někdo zcizit. Teď pominu fyzickou krádež SIM karty, ale zaměřím se na služby Vodafone přeplacené karty, jejíž jsem (ne)šťastný majitel.

Vodafone má totiž skvělou službu. Vydání ztracené nebo zcizené SIM karty zdarma. SIM karta je vydána člověku, jehož údaje v občance se shodují s kontaktními údaji ve Vodafone samoobsluze. Jestliže internetový zloděj je schopen (jakkoliv) odchytit heslo do Internetového bankovnictví, tak pro něj jistě nebude problém ani odchytit heslo do Vodafone samoobsluhy. Tam lehce změní kontaktní údaje jak je libo (oběti se pošle SMS s upozorněním, viz dále). Zloděj si následně dojde si do pobočky Vodafone, nahlásí ztrátu SIM karty a dostane novou, s číslem oběti. Tato SIM karta je nejpozději do 24 hodin aktivována, ale většinou je to mnohem dříve. Po aktivaci nové SIM může zloděj vyluxovat konto nešťastné oběti.

Celá postup má pro zloděje dva menší zádrhele. 1. Vodafone samobosluha posílá po změně údajů oznamující SMS "Informace o Vasem uctu jsme uspesne aktualizovali". Z tohoto sdělení málokdo pozná, že mu někdo cizí mění důležité údaje v samoobsluze. Navíc tato SMS nezřídka přichází až hodinu i více po odeslání změn v samoobsluze. 2. Po té, co zloděj nahlásí ztrátu SIM karty, tak je původní SIM karta zablokována. Oběť tedy může sama zajít na pobočku Vodafone a přesvědčit obsluhu, že je obětí, a ne zlodějem. Moc šancí bych jí nedával.

Řešení: Stačí, aby Vodafone samoobsluha vyžadovala potvrzení důležitých změn SMS klíčem. Asi málokdo ztratí SIM kartu a změní údaje v občance najednou.

Celý postup jsem nezkoušel, mám pouze zkušenosti se ztrátou SIM a změnou údajů v Samoobsluze. Vodafone jsem již na problém upozornil emailem, na odpověď čekám. Jak jsou na tom ostaní operátoři? A co pevné tarify, jak tam jdou změnit údaje?

středa 16. července 2008

.NET OnSizeChanged & OnResize

Narazil jsem na stejný problém jako Alan Kleymeyer (a řada dalších). Kterou událost mám použít, OnSizeChanged, nebo OnResize? Alan píše:
"From a user's point of view, they're the same thing. OnResize will be called whenever OnSizeChanged is called. The reason we have both is that OnSizeChanged is used for databinding and we had OnResize first. The user can override either one and see the same behavior."
Haló, programátoři Microsoftu, což takhle jednu z nich označit "obsolete", jab bývá zvykem ve staré dobré Javě? Nebo ti aspoň zmínit v MSDN dokumentaci? Postupně začínám trávit více času s Googlem, než s MSDN nápovědou (F1), když hledám východiska ze spletitostí .NET.

.NET: Nepořádek v pořadí argumentů

Občas používám výjimky ArgumentException nebo ArgumentNullException (a pár dalších, které se váží k chybám argumentů metod). Tyto výjimky umožňují v konstruktoru zadat dva řetězce: název chybného argumentu paramName a chybové hlášení message. Ovšem pořadí těchto arumentů není pokaždé stejné, viz definice:
public ArgumentException (string message, string paramName);
public ArgumentNullException (string paramName, string message);
Že by marketingový tah na propagaci IntelliSense technologie dolňování? V takov0m nepořádku to bez ní opravdu nejde.