Encrypting constant strings: 100%|████████████████████|[00:00<00:00, 420.48file/s]
Inserting "nop" instructions in smali files: 100%|████|[00:00<00:00, 321.92file/s]
Inserting "goto" instructions in smali files: 100%|███|[00:00<00:00, 576.21file/s]
Running obfuscators (Rebuild): 14%|█▊ |[00:13<01:23, 13.89s/obfuscator]21/05/2020 02:03:23> [ERROR][obfuscapk.tool.Apktool][build()] Error during build command: Picked up _JAVA_OPTIONS: -Dawt.useSystemAAFontSettings=on -Dswing.aatext=true
I: Using Apktool 2.2.3
I: Smaling smali folder into classes.dex...
I: Building resources...
Exception in thread "main" brut.androlib.AndrolibException: brut.androlib.AndrolibException: brut.common.BrutException: could not exec (exit code = 2): [aapt, p, --forced-package-id, 127, --min-sdk-version, 10, --target-sdk-version, 17, --version-code, 1, --version-name, 1.0, --no-version-vectors, -F, /tmp/APKTOOL4273073544497306388.tmp, -0, arsc, -I, /root/.local/share/apktool/framework/1.apk, -S, /root/Desktop/working-dir/olya/res, -M, /root/Desktop/working-dir/olya/AndroidManifest.xml]
at brut.androlib.Androlib.buildResourcesFull(Androlib.java:493)
at brut.androlib.Androlib.buildResources(Androlib.java:427)
at brut.androlib.Androlib.build(Androlib.java:326)
at brut.androlib.Androlib.build(Androlib.java:264)
at brut.apktool.Main.cmdBuild(Main.java:231)
at brut.apktool.Main.main(Main.java:84)
Caused by: brut.androlib.AndrolibException: brut.common.BrutException: could not exec (exit code = 2): [aapt, p, --forced-package-id, 127, --min-sdk-version, 10, --target-sdk-version, 17, --version-code, 1, --version-name, 1.0, --no-version-vectors, -F, /tmp/APKTOOL4273073544497306388.tmp, -0, arsc, -I, /root/.local/share/apktool/framework/1.apk, -S, /root/Desktop/working-dir/olya/res, -M, /root/Desktop/working-dir/olya/AndroidManifest.xml]
at brut.androlib.res.AndrolibResources.aaptPackage(AndrolibResources.java:441)
at brut.androlib.Androlib.buildResourcesFull(Androlib.java:479)
... 5 more
Caused by: brut.common.BrutException: could not exec (exit code = 2): [aapt, p, --forced-package-id, 127, --min-sdk-version, 10, --target-sdk-version, 17, --version-code, 1, --version-name, 1.0, --no-version-vectors, -F, /tmp/APKTOOL4273073544497306388.tmp, -0, arsc, -I, /root/.local/share/apktool/framework/1.apk, -S, /root/Desktop/working-dir/olya/res, -M, /root/Desktop/working-dir/olya/AndroidManifest.xml]
at brut.util.OS.exec(OS.java:95)
at brut.androlib.res.AndrolibResources.aaptPackage(AndrolibResources.java:435)
... 6 more
W: ERROR: Unknown option '--forced-package-id'
W: Android Asset Packaging Tool
W:
W: Usage:
W: aapt l[ist] [-v] [-a] file.{zip,jar,apk}
W: List contents of Zip-compatible archive.
W:
W: aapt d[ump] [--values] [--include-meta-data] WHAT file.{apk} [asset [asset ...]]
W: strings Print the contents of the resource table string pool in the APK.
W: badging Print the label and icon for the app declared in APK.
W: permissions Print the permissions from the APK.
W: resources Print the resource table from the APK.
W: configurations Print the configurations in the APK.
W: xmltree Print the compiled xmls in the given assets.
W: xmlstrings Print the strings of the given compiled xml assets.
W:
W: aapt p[ackage] [-d][-f][-m][-u][-v][-x][-z][-M AndroidManifest.xml] \
W: [-0 extension [-0 extension ...]] [-g tolerance] [-j jarfile] \
W: [--debug-mode] [--min-sdk-version VAL] [--target-sdk-version VAL] \
W: [--app-version VAL] [--app-version-name TEXT] [--custom-package VAL] \
W: [--rename-manifest-package PACKAGE] \
W: [--rename-instrumentation-target-package PACKAGE] \
W: [--utf16] [--auto-add-overlay] \
W: [--max-res-version VAL] \
W: [-I base-package [-I base-package ...]] \
W: [-A asset-source-dir] [-G class-list-file] [-P public-definitions-file] \
W: [-D main-dex-class-list-file] \
W: [-S resource-sources [-S resource-sources ...]] \
W: [-F apk-file] [-J R-file-dir] \
W: [--product product1,product2,...] \
W: [-c CONFIGS] [--preferred-density DENSITY] \
W: [--split CONFIGS [--split CONFIGS]] \
W: [--feature-of package [--feature-after package]] \
W: [raw-files-dir [raw-files-dir] ...] \
W: [--output-text-symbols DIR]
W:
W: Package the android resources. It will read assets and resources that are
W: supplied with the -M -A -S or raw-files-dir arguments. The -J -P -F and -R
W: options control which files are output.
W:
W: aapt r[emove] [-v] file.{zip,jar,apk} file1 [file2 ...]
W: Delete specified files from Zip-compatible archive.
W:
W: aapt a[dd] [-v] file.{zip,jar,apk} file1 [file2 ...]
W: Add specified files to Zip-compatible archive.
W:
W: aapt c[runch] [-v] -S resource-sources ... -C output-folder ...
W: Do PNG preprocessing on one or several resource folders
W: and store the results in the output folder.
W:
W: aapt s[ingleCrunch] [-v] -i input-file -o outputfile
W: Do PNG preprocessing on a single file.
W:
W: aapt v[ersion]
W: Print program version.
W:
W: Modifiers:
W: -a print Android-specific data (resources, manifest) when listing
W: -c specify which configurations to include. The default is all
W: configurations. The value of the parameter should be a comma
W: separated list of configuration values. Locales should be specified
W: as either a language or language-region pair. Some examples:
W: en
W: port,en
W: port,land,en_US
W: -d one or more device assets to include, separated by commas
W: -f force overwrite of existing files
W: -g specify a pixel tolerance to force images to grayscale, default 0
W: -j specify a jar or zip file containing classes to include
W: -k junk path of file(s) added
W: -m make package directories under location specified by -J
W: -u update existing packages (add new, replace older, remove deleted files)
W: -v verbose output
W: -x create extending (non-application) resource IDs
W: -z require localization of resource attributes marked with
W: localization="suggested"
W: -A additional directory in which to find raw asset files
W: -G A file to output proguard options into.
W: -D A file to output proguard options for the main dex into.
W: -F specify the apk file to output
W: -I add an existing package to base include set
W: -J specify where to output R.java resource constant definitions
W: -M specify full path to AndroidManifest.xml to include in zip
W: -P specify where to output public resource definitions
W: -S directory in which to find resources. Multiple directories will be scanned
W: and the first match found (left to right) will take precedence.
W: -0 specifies an additional extension for which such files will not
W: be stored compressed in the .apk. An empty string means to not
W: compress any files at all.
W: --debug-mode
W: inserts android:debuggable="true" in to the application node of the
W: manifest, making the application debuggable even on production devices.
W: --include-meta-data
W: when used with "dump badging" also includes meta-data tags.
W: --pseudo-localize
W: generate resources for pseudo-locales (en-XA and ar-XB).
W: --min-sdk-version
W: inserts android:minSdkVersion in to manifest. If the version is 7 or
W: higher, the default encoding for resources will be in UTF-8.
W: --target-sdk-version
W: inserts android:targetSdkVersion in to manifest.
W: --max-res-version
W: ignores versioned resource directories above the given value.
W: --values
W: when used with "dump resources" also includes resource values.
W: --version-code
W: inserts android:versionCode in to manifest.
W: --version-name
W: inserts android:versionName in to manifest.
W: --replace-version
W: If --version-code and/or --version-name are specified, these
W: values will replace any value already in the manifest. By
W: default, nothing is changed if the manifest already defines
W: these attributes.
W: --custom-package
W: generates R.java into a different package.
W: --extra-packages
W: generate R.java for libraries. Separate libraries with ':'.
W: --generate-dependencies
W: generate dependency files in the same directories for R.java and resource package
W: --auto-add-overlay
W: Automatically add resources that are only in overlays.
W: --preferred-density
W: Specifies a preference for a particular density. Resources that do not
W: match this density and have variants that are a closer match are removed.
W: --split
W: Builds a separate split APK for the configurations listed. This can
W: be loaded alongside the base APK at runtime.
W: --feature-of
W: Builds a split APK that is a feature of the apk specified here. Resources
W: in the base APK can be referenced from the the feature APK.
W: --feature-after
W: An app can have multiple Feature Split APKs which must be totally ordered.
W: If --feature-of is specified, this flag specifies which Feature Split APK
W: comes before this one. The first Feature Split APK should not define
W: anything here.
W: --rename-manifest-package
W: Rewrite the manifest so that its package name is the package name
W: given here. Relative class names (for example .Foo) will be
W: changed to absolute names with the old package so that the code
W: does not need to change.
W: --rename-instrumentation-target-package
W: Rewrite the manifest so that all of its instrumentation
W: components target the given package. Useful when used in
W: conjunction with --rename-manifest-package to fix tests against
W: a package that has been renamed.
W: --product
W: Specifies which variant to choose for strings that have
W: product variants
W: --utf16
W: changes default encoding for resources to UTF-16. Only useful when API
W: level is set to 7 or higher where the default encoding is UTF-8.
W: --non-constant-id
W: Make the resources ID non constant. This is required to make an R java class
W: that does not contain the final value but is used to make reusable compiled
W: libraries that need to access resources.
W: --shared-lib
W: Make a shared library resource package that can be loaded by an application
W: at runtime to access the libraries resources. Implies --non-constant-id.
W: --app-as-shared-lib
W: Make an app resource package that also can be loaded as shared library at runtime.
W: Implies --non-constant-id.
W: --error-on-failed-insert
W: Forces aapt to return an error if it fails to insert values into the manifest
W: with --debug-mode, --min-sdk-version, --target-sdk-version --version-code
W: and --version-name.
W: Insertion typically fails if the manifest already defines the attribute.
W: --error-on-missing-config-entry
W: Forces aapt to return an error if it fails to find an entry for a configuration.
W: --output-text-symbols
W: Generates a text file containing the resource symbols of the R class in the
W: specified folder.
W: --ignore-assets
W: Assets to be ignored. Default pattern is:
W: !.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~
W: --skip-symbols-without-default-localization
W: Prevents symbols from being generated for strings that do not have a default
W: localization
W: --no-version-vectors
W: Do not automatically generate versioned copies of vector XML resources.
W: --no-version-transitions
W: Do not automatically generate versioned copies of transition XML resources.
W: --private-symbols
W: Java package name to use when generating R.java for private resources.
21/05/2020 02:03:23> [ERROR][obfuscapk.obfuscation][build_obfuscated_apk()] Error during apk building: Command '['/usr/local/bin/apktool', 'b', '--force-all', '/root/Desktop/working-dir/olya', '-o', '/root/Desktop/obfuscated.apk']' returned non-zero exit status 1.
21/05/2020 02:03:23> [ERROR][yapsy_loaded_plugin_Rebuild_1.rebuild.Rebuild][obfuscate()] Error during execution of "Rebuild" obfuscator: Command '['/usr/local/bin/apktool', 'b', '--force-all', '/root/Desktop/working-dir/olya', '-o', '/root/Desktop/obfuscated.apk']' returned non-zero exit status 1.
21/05/2020 02:03:23> [CRITICAL][obfuscapk.main][perform_obfuscation()] Error during obfuscation: Command '['/usr/local/bin/apktool', 'b', '--force-all', '/root/Desktop/working-dir/olya', '-o', '/root/Desktop/obfuscated.apk']' returned non-zero exit status 1.
Traceback (most recent call last):
File "/root/Obfuscapk/src/obfuscapk/main.py", line 119, in perform_obfuscation
(obfuscator_name_to_function[obfuscator_name])(obfuscation)
File "/root/Obfuscapk/src/obfuscapk/obfuscators/rebuild/rebuild.py", line 20, in obfuscate
obfuscation_info.build_obfuscated_apk()
File "/root/Obfuscapk/src/obfuscapk/obfuscation.py", line 494, in build_obfuscated_apk
apktool.build(self._decoded_apk_path, self.obfuscated_apk_path)
File "/root/Obfuscapk/src/obfuscapk/tool.py", line 153, in build
output = subprocess.check_output(
File "/usr/lib/python3.8/subprocess.py", line 411, in check_output
return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
File "/usr/lib/python3.8/subprocess.py", line 512, in run
raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['/usr/local/bin/apktool', 'b', '--force-all', '/root/Desktop/working-dir/olya', '-o', '/root/Desktop/obfuscated.apk']' returned non-zero exit status 1.
Running obfuscators (Rebuild): 57%|███████▍ |[00:14<00:11, 3.74s/obfuscator]
Traceback (most recent call last):
File "/usr/lib/python3.8/runpy.py", line 193, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/usr/lib/python3.8/runpy.py", line 86, in _run_code
exec(code, run_globals)
File "/root/Obfuscapk/src/obfuscapk/cli.py", line 133, in <module>
main()
File "/root/Obfuscapk/src/obfuscapk/cli.py", line 121, in main
perform_obfuscation(
File "/root/Obfuscapk/src/obfuscapk/main.py", line 119, in perform_obfuscation
(obfuscator_name_to_function[obfuscator_name])(obfuscation)
File "/root/Obfuscapk/src/obfuscapk/obfuscators/rebuild/rebuild.py", line 20, in obfuscate
obfuscation_info.build_obfuscated_apk()
File "/root/Obfuscapk/src/obfuscapk/obfuscation.py", line 494, in build_obfuscated_apk
apktool.build(self._decoded_apk_path, self.obfuscated_apk_path)
File "/root/Obfuscapk/src/obfuscapk/tool.py", line 153, in build
output = subprocess.check_output(
File "/usr/lib/python3.8/subprocess.py", line 411, in check_output
return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
File "/usr/lib/python3.8/subprocess.py", line 512, in run
raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['/usr/local/bin/apktool', 'b', '--force-all', '/root/Desktop/working-dir/olya', '-o', '/root/Desktop/obfuscated.apk']' returned non-zero exit status 1.
I'm using Kali Linux 2019.4, running obfuscapk in a virtual environment.