Zasubskrybuj RSS

Naprawdę wolałbym, żebyś nie… odc. 1.

Marzec 30th, 2010 | Komentarze są wyłączone | Kategoria: Uncategorized

Dzisiaj zapoczątkuję nową świecką tradycję, którą pozwolę sobie nazwać „naprawdę wolałbym, żebyś nie…”. Seria będzie opowiadać o żenujących przypadkach olania sobie jakichkolwiek zasad konstruowania stron internetowych, co wzbudzi uśmiech politowania nie tylko w supertechnicznym człowieku, lecz i zwykłej, zdrowej na umyśle istocie.

Kompasja jest pewną firmą, która ma stronę internetową i portfolio on-line. Nazwa firmy podejrzewam wzięła się z angielskiego compassion, co można przetłumaczyć jako współczucie, litość, miłosierdzie lub politowanie. kompasja - tak, współczujemy

(kliknij obrazek, aby powiększyć)

Zrzut ekranu zrobiłem dla potomnych, strona dostępna jest pod adresem http://www.kompasja.pl/portfolio.html. Tak, moi drodzy webdeveloperzy, coś trzeba napisać jak się treść wstawia. A już najcudowniej by było, gdybyście coś napisali przed publikacją.

Wyobraź sobie, że jedziesz Ferrari 250 km/h, wciskasz pedał hamulca, a na desce rozdzielczej pojawia się napis „coś trzeba zrobić, by samochód zwolnił”. Ładnie tak?

Tagi: , ,

Harmony reloaded (aktualizacja)

Marzec 11th, 2010 | 1 Komentarz | Kategoria: Uncategorized

Dzięki blipowi poznałem narzędzie Harmony, wykorzystujące możliwości elementu canvas w html5.

Znaczy się, no. Rysowanie po ekranie. Łatwy eksport do png. Fajne efekty wyłącznie przy użyciu css i javascriptu. Oryginalny projekt Harmony : http://mrdoob.com/blog/post/689.

Paru rzeczy mi brakowało – a to gumki albo możliwości cofania, a to kolorków, a to diabli wiedzą czego. Dlatego narodził się Harmony Reloaded – projekt będący rozbudowaniem Harmony.

Co już jest?

- kolorowanie (sensowniejsze niż w pierwotnej wersji)

- przesuwanie menu

- gumka (pod menu wyboru „pędzla” – eraser)

Changelog:

10 marca:

20:52 dowiaduję się o harmony.

20:54 zaczynam się bawić. wszyscy rysują, ja dłubię w kodzie.

23:53 pojawia się najpierwsza wersja harmony reloaded, a mój łeb jest pełen pomysłów.

11 marca:

16:20 poprawiam kolorowanie pędzla chrome i odrobinkę cywilizuję wybór koloru.

19:20 dalej cywilizuję wybór koloru. nigdzie nie trzeba klikać – wybierasz kolor i śmigasz.

Co dalej?

Na pewno poprawię color pickera – jest brzydki i duży. Potem, zobaczymy.

Sugestie, pytania, komentarze mile widziane – pod tym postem :)

I żeby nie było – strona projektu: http://harmony.zgwinta.info/

Edit: do korzystania z Harmony (i Harmony Reloaded) wymagana jest nowoczesna przeglądarka, najlepiej na webkicie. Sam korzystam z Chrome (5 unstable, choć na każdym powinno ruszyć), Safari też da radę. Najnowsza Opera i najnowszy Firefox też da radę. Internet Explorer, jak to z nim bywa, nie ruszy.

Kolejny edit: kolejna poprawka koloru plus możliwość dokładania tła. Do tego parę ikonek. Jak działa tło? Wystarczy wkleić adres obrazka we właściwe pole i wcisnąć enter. Usuwamy ikonką z krzyżykiem. Ikonka z łapką ukrywa płótno i pozwala przesunąć obraz tła. Bawiąc się z tłem pamiętaj, że płótno na tle jest w 30% przezroczyste, więc końcowy rysunek będzie intensywniejszy.

Tagi: , ,

ToiToi Hacking

Marzec 7th, 2010 | Komentarze są wyłączone | Kategoria: Uncategorized

Czy jeśli udało mi się otworzyć klapę w toi-toiu bez upaprania się podejrzanymi wydzielinami, to jestem już hakerem?

Zakładając,  że „haking” to otwieranie rzeczy, których normalni ludzie nie otwierają, to tak, zdecydowanie tak. Ale dlaczego klapa w toi-toiu?

Lata temu w pewnej książce sci-fi natknąłem się na homeryckie porównanie „zamek ten łatwiej było otworzyć niż klapę w sraczu” (cytuję z pamięci, jeśli ktoś zna źródło to proszę o kontakt). Klapa w sraczu zasadniczo zamków nie ma, toteż nie stanowi praktycznie żadnego wyzwania dla wprawionego użytkownika.

Przenieśmy się teraz bardziej na grunt IT, więc normalni ludzie powinni przestać czytać ten wpis dokładnie w tym miejscu.

Każda aplikacja webowa musi mieć zapisaną konfigurację bazy danych. Musi w niej posiadać adres serwera, login i hasło – przynajmniej tyle. Konfiguracji tej należy strzec jak własnego przyrodzenia, bowiem jak ktoś się do bazy dobierze, to… jeśli nie wiesz, co może zrobić, nie zajmuj się webdeweloperką.

Wyobraźmy sobie zatem, że wystawiamy projekt, w którym config ten jest publicznie dostępny… Nawet lepiej: publicznie dostępny i zaindeksowany w google.

Kilkanaście sekund zajęło mi skonstruowanie zapytania, które wyszukiwało pliku databases.yml przechowującego config bazy danych w symfony. I tak, znalazłem aplikacje już działające, i tak, udało mi się dobić do serwera z zewnątrz. Tak, hasła do baz były skomplikowane. Tylko po co, jeśli dostałem je na talerzu?

Robiąc projekt w Symfony, końcowa wersja nie może udostępniać niczego poza katalogiem web/. Nigdy. Zapamiętać to.

Dlaczego wujek google to zindeksował? Zapewne w fazie produkcyjnej dostępny był listing plików i katalogów. Wujek przyszedł, zapisał, poszedł. Od tego są robots.txt. Zapamiętać to.

Ale załóżmy, że wujek nie zindeksował. Co też wymyślę wtedy? Poszukam jakiegoś charakterystycznego dla symfony URLa. Znajdę, i jeśli będzie się zaczynał od web/, to ktoś ostro dał ciała. I zastąpię „web/index.php” przez „config/databases.yml” i będę się cieszył hasłem do bazy.

W ciągu dwudziestu minut googlania zdobyłem i przetestowałem parametry logowania do dziesięciu różnych polskich witryn.

Wnioski? Zabezpieczenia są systemem, muszą działać jak dobrze naoliwiony mechanizm. Jeżeli jeden z fragmentów układanki zawiedzie, możecie hasło admina wypisać jawnym tekstem na stronie głównej. Albo robicie wszystko dobrze, albo wszystko macie spaprane.

Dziękuję państwu, dobranoc. Koniec imprezy. Nie ma takiego kodzenia.

Tagi: , , ,