-
Notifications
You must be signed in to change notification settings - Fork 86
Open
Description
classpath 'io.michaelrocks:paranoid-gradle-plugin:0.3.7'
I've noticed that the strings I was sure that this library obfuscate actually appear as they are, not obfuscated at all.
Steps:
- Either import the attached project, or use this:
@Obfuscate
object Keys {
//
const val SECRET_KEY = "HelloParanoid"
}class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
Toast.makeText(this, Keys.SECRET_KEY, Toast.LENGTH_LONG).show()
}
}- Create a release-version. You can use the keystore I've added here. Password and everything there is just "keystore".
- De-obfuscate using some tool. I used:
http://www.javadecompilers.com/apk
- Download the result (there is a button there of "Save"), and extract it.
- Search inside the extracted folder for the value of the obfuscated key. In this case search for "HelloParanoid".
The bug is that it's still there as it is, hard-coded:
...
Toast.makeText(this, "HelloParanoid", 1).show();
...
For a moment I thought this is because I use Kotlin, but it happens on Java too....
How could it be? I remember it worked fine in the past, no?
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels