
costy's Image(?) and Serial
Download crack.zip, 6 kb (password: crackmes.de) Browse contents of crack.zip KeyGen Me - Image and Serial
Difficulty: 3 - Getting harder | RatingWaiting for at least 3 votes View profile of costy » |
Solutions
Solution by MACH4, published 03. mar, 2014; download (381 kb), password: crackmes.de or browse.
MACH4 has not rated this crackme yet.
Discussion and comments
T.0.R.N.A.D.0. 04. Mar 2010 | Your crack-me accepts a "BLANK SERIAL" for some cases (when the whole image is composed of a single color) ! Fishing a serial was too easy .. trying to make a keygen now :) |
---|---|
costy Author 04. Mar 2010 | Yes! fishing a serial is really really easy but the task is to keygen it. Some image have a "BLANK SERIAL": it's normal! It's not bugged!!! |
obnoxious 05. Mar 2010 | Hola costy buddy u are online? |
T.0.R.N.A.D.0. 05. Mar 2010 | I think that's a bug .. When you compare the entered serial (which is a string) with a floating point, vb will stop at the first non-numeric char in the serial. The blank serials are accepted because of this : when vb gets a blank string "" the equivalent numeric expression is "0.0". So, even if you enter "costy" or "T0RNAD0" "000xyz", they would be accepted !! In general, any serial starting with a non-numeric char (or "0" followed by non-numeric chars ) will be accepted ! (isn't that a bug) ?? Where as keys like "123" or "1T0RNAD0" etc will be rejected. Try this .. make an image out of a single color and enter the above serials. |
costy Author 07. Mar 2010 | @obnoxious: I'm back. ;) in Italy we say: chi non muore si rivede! About no see! @T.0.R.N.A.D.O That's not a bug! Some image have 0 as serial. When you type a serial VB try to convert it as a number. The conversion is made with val val(text1) If you enter "tornado" as serial the crackme executes serialtyped = val(tornado) tornado is not a number so VB put seraltyped = 0. Some image for example images with only one pixel have 0 as right serial. So "tornato" could be a valid serial. "House", "car", "computer" can be ok too. These words are converted to 0. "1T0RNADO" is converted to 1. "123star" is converted to 123. "&h11&" is converted to 17. VB thinks you typed an hexdecimal. An empty string is converted to 0. Infact you wrote 'your crack-me accepts a "BLANK SERIAL" for some cases'. There is no bug. |
T.0.R.N.A.D.0. 08. Mar 2010 | Yeah, i know what happens with val(), so i thought it's a bug (I thought you forgot 2 put a check after val()) .. Sorry ! :) |
costy Author 08. Mar 2010 | @T.0.R.N.A.D.0. I'm courious... have you got any idea about how the crackme works? |
Xspider 08. Mar 2010 | hi nice to see you are back costy :D |
T.0.R.N.A.D.0. 09. Mar 2010 | Yeah .. it reads the bitmap pixels and works with them. It then reads 2 bits from each RBG byte (except the last byte) and does something like : Serial += bit1 - bit2. I can manually crack the serial by reading the bits of a bitmap file ... but i find some problem in coding it .. the bit sequence doesn't appear as expected. :( |
costy Author 09. Mar 2010 | .. the bit sequence doesn't appear as expected. :(?? What do you mean? |
T.0.R.N.A.D.0. 10. Mar 2010 | I mean abt my keygen .. I get some problem reading the bits ... they don't appear the same as in the program dump. |
Trevil 20. Mar 2010 | Yeah, cracking it wasnt that bad, but my asm is, keep getting a message about my bmp files not containing any resource section.. (?) Nice work on the crackme tho, was different :)) |
Trevil 20. Mar 2010 | @T.0.R.N.A.D.0. You keep getting 24bit sequneces? |
costy Author 20. Mar 2010 | The difficulty of this crackmes isn't to understand the code, the difficult part is to write a keygen. |
T.0.R.N.A.D.0. 21. Mar 2010 | @Trevil : Are you talking abt the image ? I read the image and get 4bits per pixel of the image : RGB + 1 reserved. Then I tried to do : Serial = SumOf(Bbits) - SumOf(Gbits). I am going wrong there ... @ Trevil : If you have solved it, plz post a solution. I am going to trace through the crackme again .. Nice crackme :) |
costy Author 21. Mar 2010 | @T.0.R.N.A.D.0. What. Obviously you meant bytes (not bits). But my crackme uses only 3 bytes per pixel. Contact me privately if you don't understand. |
T.0.R.N.A.D.0. 22. Mar 2010 | Yeah sorry abt that, it's bytes (not bits). I know your Crackme uses 3 bpp, but the image may not always use 3 bpp. I was trying with a 24-bit bmp that I made with MSPaint. When I try to read the image, I can see 4 bpp (in Hex Viewers), but your crackme uses 3 bpp ! |
costy Author 22. Mar 2010 | @T.0.R.N.A.D.0. Yes T.0.R.N.A.D.0 "the image may not always use 3 bpp" but my crackmes uses 3 bytes. This is a difficulty of my crackme. It's strange that an image with 24 bit = 3 bytes has 4bpp. Anyway the bytes in a bitmap file are stored in a strange way. My crackme as you can see don't read the bytes directly from the file. It loads the bitmap and then with an API function ;) gets the bytes . In the bmp file the byte haven't a clear order. What language are you using to write the keygen? |
T.0.R.N.A.D.0. 22. Mar 2010 | Actually 24bit is 3bpp but probably the extra padding bytes were stored when I read the file. (I am using VB and I use GetBitmapBits). |
costy Author 22. Mar 2010 | @T.0.R.N.A.D.0. So you use GetBitmapBits Picture1.Picture, number_of_bit_to_read, the_array(0). The crackmes use the same. It must work!!!!! Send me the source of keygen, I'm curious. |
You may leave your comment, thoughts and discuss this crackme with other reversers here.
Acting childish will not be tolerated.
HTML and such will be left as-is, so don't try.