Sunday 15 January 2012

android - Prevent/Make it difficult to patch Binary Assembly -


I'm not sure that the vocabulary is true that you use code practices to bypass binary / an inquiry for someone Assembly:

For example in the source code. Boot Verification Result = Verify (); If (results of verification) {allow_Something (); } And {prevent_Something (); }

If a person looks at the disassembly version of the above code, then permission to allow 'jump opcodes (?)', Even if the verification result is false.

Something similar has come here

Note: I am making binary in C ++ to use it through NDK on Android. As a general consensus, it is impossible to stop any hell, "cracking" yourself on

By doing so APK opacity technology will increase the complexity required to crack the "APK" once only after an enormous upload of the sites hosting the app for free, its "Noble-Est" from Android Nobbs A Google search is away.

In addition to this.

Regarding saving your APK from hacking, I will recommend the following article which discusses the current situation. The techniques described in you should be aware of common attacks - vectors that you need to protect against.

There is a good place to start.

Obfuscated APK, run it through the following tools and follow the de-compiled source. These are all free and open source devices which are very popular and will definitely be the first thing that any decent "cracker" will try: 1. 1. 2. 2. 2. 2. 3. 3.

Keep adding layers to obscure your code until you are satisfied that production of the above tools is quite complicated to make sense. (Again, Kaka, Pizza and can be completed at the end of one week, do not predict college-generation armedness).

Regarding the shared technology, I failed to see how .dex can be protected on Android and if If you implement the validation logic in a different .so then all "crackers" need to call to verify in their Java code () .so inside the function.

UPDATE:

To protect additional obfuscation steps .so .

1. Do not follow more or less linear paths.
Adding extra leap to the whole place works by flooding "cracker" with so many possible targets, which requires personally modified and patched and validation if security is bypassed.

Add 2 time checks This is mainly to stop the "cracker" by following different paths between the debug and actual run-time code. If the time spent between the two points is much higher than the normal, then there is a clear indication that your program is being debugged. So it's time to jump into that part of the junk code that calculates the number of piano in the world.

Type 3 self-modified codes
Fixed analysis of this vibrations again For example, if your jump is not present in the verification function, but as part of some init () function. In

.

No comments:

Post a Comment