Exetools

Exetools (https://forum.exetools.com/index.php)
-   General Discussion (https://forum.exetools.com/forumdisplay.php?f=2)
-   -   C++ Console Application (https://forum.exetools.com/showthread.php?t=7352)

ReVeR 04-14-2005 09:24

C++ Console Application
 
Hello.
I was wondering how can i get password which is compeared as
passEntered[1]=='t'
OR something in that style.
There is no strcmp

How can i break on something like this, or find it in string references,.

etherlord 04-14-2005 14:35

Could be difficult as is, inside the apps would probably be
something like cmp reg,'t', which could be quite hard to
locate as long as you are not supposed to know the 't' part...

So, instead of focusing on what you can't locate easily, why not
starting your trace at the point where the program retrieve the
password ? (using functions such as getchar, or fget.. ?)

etherlord

Hero 04-14-2005 15:35

What you wrote,is not an strcmp,because one of operands is only a char.
This compare can be simply written in assembly like this:

lea al,byte ptr [passEntered + 1]
cmp al,74h
jne IsNotEqual

sincerely yours

NeOXOeN 04-15-2005 03:45

You cant break at all but you need to check HEX bytes in your disasmbler like IDA.I dont see anything hard about this

passEntered[0]=='???'
passEntered[1]=='t'
passEntered[..]=='???'


its all there just chech how long password is and which chars does it uses :)


Bye

ReVeR 04-16-2005 08:28

well tracing from the point of entrance....i know that it uses std::cin to enter the password, i am not sure how to find that in either IDA w3dasm or olly.
any ideas?

nuemga2000 04-16-2005 14:07

Maybe you should look for the ReadConsole call ...

Kerstin

ReVeR 04-16-2005 23:24

ReadConsole is not in IAT.
the inpute is done using std::cin function.
The IDE is devcpp 5.
does anyone know how i can locate the std::cin function?

FKMA 04-17-2005 03:05

Use IDA. It may recognize standart ?and C++ functions by signatures.
In Name window (after analizyng) you will see std::cin and will may look for
all calls to it.

taipan 04-20-2005 02:50

String equality is often checked with REP CMPSB (or more likely (len>>2) * CMPSD + (len & 3) *CMPSB), then JNZ @mismatch.

Maybe using hardware breakpoints on Read or Write Access could help.


All times are GMT +8. The time now is 15:03.

Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2026, vBulletin Solutions, Inc.
Always Your Best Friend: Aaron, JMI, ahmadmansoor, ZeNiX