Facebook címkéhez tartozó bejegyzések

Helyes névsorrend a Facebookon

Azt mondja a Facebook, hogy:

facebook-rudi-turo

Tévedés. Én Rudi Túrót nem ismerek, csakis kizárólag Túró Rudit. Hungaricum az istenadta.

Szerencsére a Facebookon át lehet állítani a vezetéknév és a keresztnév sorrendjét. Irány az Account Settings oldal:

facebook-account1

Majd a név melletti Edit link:

facebook-account2

Miután kinyílt a Name rovat, a Display as sorban tudjuk beállítani, hogy milyen sorrendben szeretnénk látni nevünk darabjait:

facebook-account3

Végül kattintás a Save changes gombra és már készen is vagyunk.

 

Technorati-címkék:
Reklámok

Unable to find assembly Microsoft.IdentityModel

Dávid Zoli barátommal épp egy HTML 5-ös, MVC-s, Azure-os, Facebook és Live loginos projekten dolgozunk, ahol a bejelentkezést a Windows Azure AppFabric Access Control Service (a marketingesek úgy látszik karakterszám alapján kapják a fizetést) segítségével oldottuk meg. Mivel ez lényegében Windows Identity Foundation az alkalmazás szempontjából, ezért a WIF telepítését megúsztuk annyival, hogy a Microsoft.IdentityModel.dll-t szépen bemásoltuk a website bin mappájába. Éljen a bin deployment!

Ez szépen is működött, ám amint elkezdtük használni a blog storage-ot, az alábbi hibaüzenet fogadott:

Unable to find assembly ‘Microsoft.IdentityModel, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35’.

Hasonló néha előfordul, de ez a hibaüzenet két ok miatt furcsa:

  1. Semmi nem változott, továbbra is ott csücsül pont ez a DLL a bin-ben.
  2. A hibaüzenet nem egy authentikációval vagy authorizációval kapcsolatos kódrészletnél jött, hanem egy Azure blobos RoleEnvironment.IsAvailable hívásnál.

A Windows Azure hibaelhárítási tippek között szerepel egy idevonatkozó is, miszerint telepítsem újra a WIF-et. Csakhogy én soha nem telepítettem és nem is szeretném!

Végül a megoldás az lett, hogy gacutil /i-vel bedobtuk a DLL-t a GAC-ba, ami a fejlesztői gépen megoldotta a hibát, de az éles környezetbe történő telepítésnél sajnos le kell mondanunk bin deploymentről Szomorú arc

 

Facebook Like button XSS

A Facebook Like gombjának egy csomó előnye van. Az egyik például az, hogy mivel előbb-utóbb ott lesz minden weboldalon, ha esetleg valamilyen security bug van benne, akkor az szinte a teljes internetet érinteni fogja. Mint ahogyan érinti is.

Lássuk csak, hogyan készül egy Like button!

Kezdetben vala a gombra vágyó felhasználó (szándékosan nem fejlesztőt írtam), aki elvándorol a Facebook ide vonatkozó oldalára és varázsol magának egy iframe darabkát, amit beilleszt az oldalába. Ezzel még nincs is gond. A probléma ott jön elő, amikor emberünk rájön, hogy “de jó lenne ez a gomb az összes oldalamra!”, és elkezdi anatómiailag elemezni a bemásolt kódrészletet, például:

  <iframe src="http://www.facebook.com/plugins/like.php?
href=http%253A%252F%252Fbalassy.spaces.live.com
&amp;layout=standard
&amp;show_faces=false
&amp;width=450
&amp;action=like
&amp;font
&amp;colorscheme=light
&amp;height=35" scrolling="no" frameborder="0"
style="border:none; overflow:hidden; width:350px; height:22px;"
allowTransparency="true">
</iframe>

Nem kell atomfizikusnak lennie, hogy rájöjjön, a href után az aktuális oldal URL-jét kell bemásolni. Hogy is szoktuk azt csinálni? “Hát ASP.NET-ben például azt írjuk oda, hogy <%= this.Request.Url %>, Javascriptben meg azt, hogy document.URL, és biztos PHP-ben is van hasonló.” Az sem gond, ha elsőre nem működik, hiszen a Google mindenre tudja a választ, hamar lehet működő kódrészletet vagy plugint találni. Nem is kell hozzá programozónak lenni, elég hozzá olvasni és kopipésztelni tudni.

Mivel főhősünk nem programozó, észre sem fogja venni, hogy a neten terjedő kódrészletek igen jelentős hányada ész nélkül másolja be a kapott URL-t a weboldal forráskódjába. Tipikus cross-site scripting melegágy, nem is kell hozzá atomfizikusnak lenni, hogy találjunk egy olyan inputot, ami kihasználja, például:

  http://example.com/oldal.kiterjesztes?" onload="javascript:alert('XSS')" nincsilyen="

Nyilván környezettől és böngészőtől függ, hogy pontosan hogyan és meddig lehet eljutni, de a lényeg, hogy sebesen terjednek a kihasználható kódrészletek, ráadásul szerencsétlen felhasználók észre sem veszik, ha ilyen oldalba futnak.

Még az is lehet, hogy meglájkolják.

 

Technorati-címkék: ,,,