Skip to content

Commit

Permalink
Fix syntax
Browse files Browse the repository at this point in the history
  • Loading branch information
adesnos committed Sep 14, 2015
1 parent 69fe3fe commit 376b990
Show file tree
Hide file tree
Showing 106 changed files with 30,763 additions and 13,351 deletions.
38 changes: 30 additions & 8 deletions androarsc.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,13 +27,32 @@
from androguard.core.bytecodes import apk
from androguard.util import read


option_0 = { 'name' : ('-i', '--input'), 'help' : 'filename input (APK or android resources(arsc))', 'nargs' : 1 }
option_1 = { 'name' : ('-p', '--package'), 'help' : 'select the package (optional)', 'nargs' : 1 }
option_2 = { 'name' : ('-l', '--locale'), 'help' : 'select the locale (optional)', 'nargs' : 1 }
option_3 = { 'name' : ('-t', '--type'), 'help' : 'select the type (string, interger, public, ...)', 'nargs' : 1 }
option_4 = { 'name' : ('-o', '--output'), 'help' : 'filename output', 'nargs' : 1 }
option_5 = { 'name' : ('-v', '--version'), 'help' : 'version of the API', 'action' : 'count' }
option_0 = {
'name': ('-i', '--input'),
'help': 'filename input (APK or android resources(arsc))',
'nargs': 1
}
option_1 = {
'name': ('-p', '--package'),
'help': 'select the package (optional)',
'nargs': 1
}
option_2 = {
'name': ('-l', '--locale'),
'help': 'select the locale (optional)',
'nargs': 1
}
option_3 = {
'name': ('-t', '--type'),
'help': 'select the type (string, interger, public, ...)',
'nargs': 1
}
option_4 = {'name': ('-o', '--output'), 'help': 'filename output', 'nargs': 1}
option_5 = {
'name': ('-v', '--version'),
'help': 'version of the API',
'action': 'count'
}
options = [option_0, option_1, option_2, option_3, option_4, option_5]


Expand Down Expand Up @@ -66,7 +85,9 @@ def main(options, arguments):
ttype = options.type or "public"
locale = options.locale or '\x00\x00'

buff = minidom.parseString(getattr(arscobj, "get_" + ttype + "_resources")(package, locale)).toprettyxml()
buff = minidom.parseString(getattr(
arscobj, "get_" + ttype + "_resources")(package,
locale)).toprettyxml()

if options.output != None:
fd = codecs.open(options.output, "w", "utf-8")
Expand All @@ -78,6 +99,7 @@ def main(options, arguments):
elif options.version != None:
print "Androarsc version %s" % androconf.ANDROGUARD_VERSION


if __name__ == "__main__":
parser = OptionParser()
for option in options:
Expand Down
41 changes: 25 additions & 16 deletions androauto.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,33 +24,42 @@
from androguard.core.analysis import auto
from androguard.core.androconf import set_debug

option_0 = {'name': ('-d', '--directory'), 'help': 'directory input', 'nargs': 1}
option_0 = {
'name': ('-d', '--directory'),
'help': 'directory input',
'nargs': 1
}
option_1 = {'name': ('-v', '--verbose'), 'help': 'add debug', 'action': 'count'}
options = [option_0, option_1]


class AndroLog(object):
def __init__(self, id_file, filename):
self.id_file = id_file
self.filename = filename

def __init__(self, id_file, filename):
self.id_file = id_file
self.filename = filename


class AndroTest(auto.DirectoryAndroAnalysis):

def analysis_app(self, log, apkobj, dexobj, adexobj):
print log.id_file, log.filename, apkobj, dexobj, adexobj


def main(options, arguments):
if options.verbose:
set_debug()

if options.directory:
settings = {
"my": AndroTest(options.directory),
"log": AndroLog,
"max_fetcher": 3,
}

aa = auto.AndroAuto(settings)
aa.go()
if options.verbose:
set_debug()

if options.directory:
settings = {
"my": AndroTest(options.directory),
"log": AndroLog,
"max_fetcher": 3,
}

aa = auto.AndroAuto(settings)
aa.go()


if __name__ == "__main__":
parser = OptionParser()
Expand Down
25 changes: 19 additions & 6 deletions androaxml.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,10 +27,21 @@
from androguard.core.bytecodes import apk
from androguard.util import read


option_0 = { 'name' : ('-i', '--input'), 'help' : 'filename input (APK or android\'s binary xml)', 'nargs' : 1 }
option_1 = { 'name' : ('-o', '--output'), 'help' : 'filename output of the xml', 'nargs' : 1 }
option_2 = { 'name' : ('-v', '--version'), 'help' : 'version of the API', 'action' : 'count' }
option_0 = {
'name': ('-i', '--input'),
'help': 'filename input (APK or android\'s binary xml)',
'nargs': 1
}
option_1 = {
'name': ('-o', '--output'),
'help': 'filename output of the xml',
'nargs': 1
}
option_2 = {
'name': ('-v', '--version'),
'help': 'version of the API',
'action': 'count'
}
options = [option_0, option_1, option_2]


Expand All @@ -44,21 +55,23 @@ def main(options, arguments):
buff = a.get_android_manifest_xml().toprettyxml(encoding="utf-8")
elif ".xml" in options.input:
ap = apk.AXMLPrinter(read(options.input))
buff = minidom.parseString(ap.get_buff()).toprettyxml(encoding="utf-8")
buff = minidom.parseString(ap.get_buff()).toprettyxml(
encoding="utf-8")
else:
print "Unknown file type"
return

if options.output != None:
fd = codecs.open(options.output, "w", "utf-8")
fd.write( buff )
fd.write(buff)
fd.close()
else:
print buff

elif options.version != None:
print "Androaxml version %s" % androconf.ANDROGUARD_VERSION


if __name__ == "__main__":
parser = OptionParser()
for option in options:
Expand Down
44 changes: 33 additions & 11 deletions androcsign.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,34 +28,56 @@

from optparse import OptionParser

option_0 = { 'name' : ('-i', '--input'), 'help' : 'file : use this filename', 'nargs' : 1 }
option_1 = { 'name' : ('-r', '--remove'), 'help' : 'remote the signature', 'nargs' : 1 }
option_2 = { 'name' : ('-o', '--output'), 'help' : 'output database', 'nargs' : 1 }
option_3 = { 'name' : ('-l', '--list'), 'help' : 'list signatures in database', 'nargs' : 1 }
option_4 = { 'name' : ('-c', '--check'), 'help' : 'check signatures in database', 'nargs' : 1 }
option_5 = { 'name' : ('-v', '--version'), 'help' : 'version of the API', 'action' : 'count' }
option_0 = {
'name': ('-i', '--input'),
'help': 'file : use this filename',
'nargs': 1
}
option_1 = {
'name': ('-r', '--remove'),
'help': 'remote the signature',
'nargs': 1
}
option_2 = {'name': ('-o', '--output'), 'help': 'output database', 'nargs': 1}
option_3 = {
'name': ('-l', '--list'),
'help': 'list signatures in database',
'nargs': 1
}
option_4 = {
'name': ('-c', '--check'),
'help': 'check signatures in database',
'nargs': 1
}
option_5 = {
'name': ('-v', '--version'),
'help': 'version of the API',
'action': 'count'
}

options = [option_0, option_1, option_2, option_3, option_4, option_5]


def main(options, arguments):
s = dalvik_elsign.CSignature(pcs=dalvik_elsign.PublicCSignature)
if options.input != None:
ret = s.add_file( read( options.input) )
ret = s.add_file(read(options.input))
if ret != None and options.output != None:
s.add_indb( ret, options.output )
s.add_indb(ret, options.output)

elif options.list != None:
s.list_indb( options.list )
s.list_indb(options.list)

elif options.remove != None:
s.remove_indb( options.remove, options.output )
s.remove_indb(options.remove, options.output)

elif options.check != None:
s.check_db( options.check )
s.check_db(options.check)

elif options.version != None:
print "Androcsign version %s" % androconf.ANDROGUARD_VERSION


if __name__ == "__main__":
parser = OptionParser()
for option in options:
Expand Down
Loading

0 comments on commit 376b990

Please sign in to comment.