[Metalab] Ask Metalab: Please help decoding this web-request! (more context & data)
Chris Hager
chris at linuxuser.at
Mon Aug 3 21:49:12 CEST 2009
Hey again!
I've captured more requests and have them grouped a little bit:
The requests are from my G1, the Android market software polling the G*
servers for new games. By scrolling down the list the software kept
requesting new entries, as the list of the apps keeps growing. The
requests are sent with the http method "POST" and have this header:
"Content-Type=application/x-www-form-urlencoded"
The data posted in the requests is "request=OUR_KEYS" (OUR_KEYS look a
little like a base64 variant). To see them in plain text would be great!
Here I have collected and grouped and couple ofrequests:
- Category: Games - Casino - By Popular + By Date (~ 20 request strings
for getting more items and the icons)
File: http://www.4feets.com/x/requests_casino_more.txt
- Category: Games - Arcade - By Popular + By Date (again ~ 20 requests
each for getting more items and icons)
File: http://www.4feets.com/x/requests_arcade_more.txt
If you look at the requests encoded, the with > 200 chars longer ones
are receiving the png images bundle, and the shorter ones (usually
around 450 chars) poll the listing of the apps and games.
Looking just at the encoded keys for getting the listings, they differ
by 2 bytes for each "next page", and by 1 byte for "by popular" and "by
date". The interesting ones are usually at the very end of each line,
the first ~200 characters are the same (only for each category).
Here is a small tool I wrote that compares the characters of as many
lines as you put in a file: http://www.4feets.com/x/checkstrings.py.txt
Thanks in advance!
Best,
- Chris
Chris Hager wrote:
> Hey Guys!
>
> I was checking out what data my G1 is sending to Google via HTTP POST
> requests, which is somehow encoded. First, here is the request-string
> which would be nice to see decoded:
>
> ?request=CsQCCuABRFFBQUFKd0FBQURCdU5DbG04UEF5NUhyMzkzT1pTSThEcmdsWExNVGdWTTVobjBnbEdhVFk0WGo3bExHTl92MURnVUR5U2lVV281UElUT21KVTdDZEVoWHpwSHI5czQwT01HTkRkSHhvUG1nY2szREJNQ2NkNTNyV0ppTlcweHBhcjUtREljbXVFaWtQaUJURC1SNEJBMTQzSk90bDduVVNrbWNIZjJheG55UVFZTFBuY1RERUZzUnNoN0xfalNJcVpDQXlSajI3Q3g0QkJoLVR5WFNsaWVUR0VwU1hOZTAQABjqByIQMjAwMTQ1ZGE5MGM4NmU1ZioHZHJlYW06MzICZW46AkdCQhBULU1vYmlsZSBBdXN0cmlhSgBSBTIzMjAzWgUyMzIwM2IVYW0tYW5kcm9pZC10bW9iaWxlLWF0EyIKCAQ4AUAASApQABQ
>
> I found out that i can partly decode the key (starting at 'CsQCC...')
> with base64 and see parts of the original string, but still don't get a
> totally decoded result. (To decode with base64, you have to append "="
> at the end of the key).
>
> > import base64
> > base64.decode64(REQUEST_KEY + "=")
>
> Output (with repr):
> '\n\xc4\x02\n\xe0\x01DQAAAJwAAADBuNClm8PAy5Hr393OZSI8DrglXLMTgVM5hn0glGaTY4Xj7lLGN_v1DgUDySiUWo5PITOmJU7CdEhXzpHr9s40OMGNDdHxoPmgck3DBMCcd53rWJiNW0xpar5-DIcmuEikPiBTD-R4BA143JOtl7nUSkmcHf2axnyQQYLPncTDEFsRsh7L_jSIqZCAyRj27Cx4BBh-TyXSlieTGEpSXNe0\x10\x00\x18\xea\x07"\x10200145da90c86e5f*\x07dream:32\x02en:\x02GBB\x10T-Mobile
> AustriaJ\x00R\x0523203Z\x0523203b\x15am-android-tmobile-at\x13"\n\x08\x048\x01@\x00H\nP\x00\x14'
>
> So these are a lot of hex characters which are not inside the ascii
> character map. I don't know if this is the right trail, but here is
> where I don't know how to proceed on myself. It would be very
> interesting to see how the G1's communicate with Google!
>
> Please have a look at it -- perhaps we can solve this puzzle with joined
> forces!
>
> - Chris
>
> Jabber: metachris at jabber.metalab.at
>
> _______________________________________________
> Metalab mailing list
> Metalab at lists.metalab.at
> http://lists.metalab.at/mailman/listinfo/metalab
>
>
More information about the Metalab
mailing list