SlideShare ist ein Scribd-Unternehmen logo
1 von 28
Downloaden Sie, um offline zu lesen
1
Nifty stuff that you can
still do with Android
Xavier 'xEU' Martin
HES 2013
May 2th 2013
2
Thank You!
 This presentation is a compilation of
original research done by the following
people:
 Tim Strazzere (Black Hat USA 2012)
 Patrick Schulz
3
Speaker's bio
 Bootstrapping Immunapp
Immunapp is a developer library and a SaaS dashboard
that helps Android app developers fight against rampant
malware which are repackaged versions of legitimate
apps.
 Past work
RE'ed Video game console : Dreamcast, PlayStation2.
Code & tools were used in Code Breaker (cheat device)
4
Outline
 Android architecture
 Dynamic DEX file loading
 Self modifying Dalvik bytecode
5
Android
 Applications are (mostly) written in Java
 Classes are merged onto a single file, suitable for
Dalvik virtual machine
 Deployed in APK file
– AndroidManifest.xml : describe application (package
name, components, required permissions,
compatibility level)
– Certificate, digests of files
– Assets : image, video, audio
– Native code : .so libraries
– Classes.dex : Dalvik virtual machine
6
classes.dex – Dalvik
EXecutable
 Application sourcecode : java
 Compiled onto regular .class files
 Android specific steps
 Merge multiple classes onto a single file
 Convert bytecode, from stack machines
(JVM) to register-based architecture
(Dalvik)
7
DexClassLoader
 Application wants to load another dex file
– Legitimate usage : in-app purchase
– Abuse : from Command&Control server
 API
– DexClassLoader(String dexPath, String
optimizedDirectory, String libraryPath,
ClassLoader parent)
– Needs dex file on disk
8
Under the hood
 Dalvik internals: dvm_dalvik_system_DexFile
const DalvikNativeMethod dvm_dalvik_system_DexFile[] = {
{ "openDexFile", "(Ljava/lang/String;Ljava/lang/String;I)I",
Dalvik_dalvik_system_DexFile_openDexFile },
{ "openDexFile", "([B)I",
Dalvik_dalvik_system_DexFile_openDexFile_bytearray },
{ "closeDexFile", "(I)V",
Dalvik_dalvik_system_DexFile_closeDexFile },
{ "defineClass", "(Ljava/lang/String;Ljava/lang/ClassLoader;I)Ljava/lang/Class;",
Dalvik_dalvik_system_DexFile_defineClass },
{ "getClassNameList", "(I)[Ljava/lang/String;",
Dalvik_dalvik_system_DexFile_getClassNameList },
{ "isDexOptNeeded", "(Ljava/lang/String;)Z",
Dalvik_dalvik_system_DexFile_isDexOptNeeded },
{ NULL, NULL, NULL },
};
9
dvm_dalvik_system_DexFile
 Application must use native code (JNI, .so
library)
 OnLoad method + dlsym
JNINativeMethod *dvm_dalvik_system_DexFile;
JNIEXPORT jint JNI_OnLoad(JavaVM* vm, void* reserved) {
void *ldvm = (void*)dlopen("libdvm.so", RTLD_LAZY);
dvm_dalvik_system_DexFile = (JNINativeMethod*)dlsym(ldvm, "dvm_dalvik_system_DexFile");
10
OpenDexFile
 From dvm_dalvik_system_DexFile
 Find matching name
 Check for correct signature ([B)I
 Get pointer
11
OpenDexFile
void (*openDexFile)(const u4* args, JValue* pResult);
lookup(openDexFile, "dvm_dalvik_system_DexFile", "([B)I", &openDexFile)
int lookup (JNINativeMethod *table, const char *name, const char *sig, void (**fnPtrout)
(u4 const *, union JValue *)) {
int i = 0;
while (table[i].name != NULL) {
if ( (strcmp(name, table[i].name) == 0) && (strcmp(sig, table[i].signature) == 0) ) {
*fnPtrout = table[i].fnPtr;
return 1;
}
i++;
}
return 0;
}
12
OpenDexFile
 Invoke
ArrayObject *ao; // header+dex content
u4 args[] = { (u4)ao };
JValue pResult ;
jint result ;
openDexFile(args, &pResult);
result = (jint)pResult.l;
return result;
13
Under the hood
 Dalvik internals: dvm_dalvik_system_DexFile
const DalvikNativeMethod dvm_dalvik_system_DexFile[] = {
{ "openDexFile", "(Ljava/lang/String;Ljava/lang/String;I)I",
Dalvik_dalvik_system_DexFile_openDexFile },
{ "openDexFile", "([B)I",
Dalvik_dalvik_system_DexFile_openDexFile_bytearray },
{ "closeDexFile", "(I)V",
Dalvik_dalvik_system_DexFile_closeDexFile },
{ "defineClass", "(Ljava/lang/String;Ljava/lang/ClassLoader;I)Ljava/lang/Class;",
Dalvik_dalvik_system_DexFile_defineClass },
{ "getClassNameList", "(I)[Ljava/lang/String;",
Dalvik_dalvik_system_DexFile_getClassNameList },
{ "isDexOptNeeded", "(Ljava/lang/String;)Z",
Dalvik_dalvik_system_DexFile_isDexOptNeeded },
{ NULL, NULL, NULL },
};
14
Dex Loading
 getClassNameList (I)[Ljava/lang/String;
– List of classes available from loaded
dex
 defineClass
(Ljava/lang/String;Ljava/lang/ClassLoader
;I)Ljava/lang/Class;
– Oddity : expect / as separator
(com.a.b.c.d => com/a/b/c/d)
15
Dex Loading
int cookie = openDexFile(...);
Class<?> cls = null;
String as[] = getClassNameList(cookie);
for(int z=0; z<as.length; z++) {
if(as[z].equals("com.immunapp.hes2013.MainActivity")) {
cls=defineClass(as[z].replace('.', '/'), context.getClassLoader(), cookie );
} else {
defineClass(as[z].replace('.', '/'), context.getClassLoader(), cookie );
}
}
if(cls!=null) {
Intent intent = new Intent(this, newcls);
startActivity(intent);
}
16
Self modifying Dalvik
Bytecode
 JNI again
 /proc/self/maps
49143000­49145000 r­­s 00003000 1f:01 1013       /data/app/com.immunapp.hes2013.bc­1.apk
49145000­49146000 r­­s 0003f000 1f:01 1013       /data/app/com.immunapp.hes2013.bc­1.apk
49146000­491b5000 r­­p 00000000 1f:01 857        
/data/dalvik­cache/data@app@com.immunapp.hes2013.bc­1.apk@classes.dex
491b5000­491be000 rw­p 00000000 00:07 14251      /dev/ashmem/dalvik­aux­structure (deleted)
491bf000­491c6000 r­xp 00000000 1f:01 837    
/data/app­lib/com.immunapp.hes2013.bc­1/libdextest.so
17
Self modifying Dalvik
Bytecode
 Search in memory : look for DEX
signature
dexn035
 It'll be aligned on _SC_PAGESIZE, at
offset 0x28
18
Self modifying Dalvik
Bytecode
 DEX is found : easy part
 Parse it
https://source.android.com/tech/dalvik
/dex-format.html
19
Self modifying Dalvik
Bytecode
 DEX header
– String table
– Method table
– Class Def table
20
Self modifying Dalvik
Bytecode
 DEX format
Variable-length quantity, ULEB128
127 0x7F
128 0x80 0x01
Strings : MUTF-8 (Modified UTF-8)
Encoding
21
Self modifying Dalvik
Bytecode
 Finding the right place
– 1st pass : search class
– 2nd pass : look for your method
 encoded_method
– code_off uleb128
– offset from the start of the file to the code structure
for this method, or 0 if this method is either abstract
or native.
– The offset should be to a location in the data section.
22
Self modifying Dalvik
Bytecode
 bytecode
– insns ushort[insns_size]
(offset 0x10)
– actual array of bytecode, described in
a document "Bytecode for the Dalvik
VM".
23
Self modifying Dalvik
Bytecode
 Unlock memory
Align address to closest _SC_PAGESIZE
mprotect((unsigned char*)aligned,
PROT_WRITE | PROT_READ, len);
 Insert your payload
memcpy((unsigned char*)code_off,
opcodes, len);
24
Self modifying Dalvik
Bytecode
 Unlock memory
Align address to closest _SC_PAGESIZE
mprotect((unsigned char*)aligned,
PROT_WRITE | PROT_READ, len);
 Insert your payload
memcpy((unsigned char*)code_off,
opcodes, len);
25
Self modifying Dalvik
Bytecode
 Sample
public static int dummyMethod() {
return 42;
// bytecode:
/*
13 00 2A 00 const/16 v0, 0x2A
0F 00 return v0
*/
}
26
Self modifying Dalvik
Bytecode
 sample
native static int searchDex();
native static int patchDex(int addr,
String methodName, byte[] opcode);
27
Self modifying Dalvik
Bytecode
 sample
int dexInMemory = searchDex();
patchDex(dexInMemory, "dummyMethod",
new byte[] { 0x13, 0x00, 0x55, 0x00,
0x0F, 0x00 });
int r = dummyMethod();
Log.d("dummy()", ""+r);
28
Self modifying Dalvik
Bytecode
I/bytecode( 9205): 49145000­49146000 r­­s 00034000 1f:01 1759       /data/app/com.example.sample4­1.apk
I/bytecode( 9205): 49146000­491b5000 r­­p 00000000 1f:01 1456       
/data/dalvik­cache/data@app@com.immunapp.hes2013.bc­1.apk@classes.dex
I/bytecode( 9205): 491b5000­491be000 rw­p 00000000 00:07 123159     /dev/ashmem/dalvik­aux­structure (deleted)
I/bytecode( 9205): 491bf000­491c2000 r­xp 00000000 1f:01 1409       
/data/app­lib/com.immunapp.hes2013.bc­1/libdextest.so
I/bytecode( 9205): 491c2000­491c3000 r­­p 00002000 1f:01 1409       
/data/app­lib/com.immunapp.hes2013.bc­1/libdextest.so
I/bytecode( 9205): 491c3000­491c4000 rw­p 00003000 1f:01 1409       
/data/app­lib/com.immunapp.hes2013.bc­1/libdextest.so
I/bytecode( 9205): be95d000­be972000 rw­p befeb000 00:00 0          [stack]
I/bytecode( 9205): found at 49146000, dex at 49146028
I/bytecode( 9205): methodName=dummyMethod (11)
I/bytecode( 9205): opcodes length=6
I/bytecode( 9205): string_ids_size=00000fac
I/bytecode( 9205): string_ids_off=00000070
I/bytecode( 9205): method_ids_size=00000d81
I/bytecode( 9205): method_ids_off=000085d4
I/bytecode( 9205): method[3280] 000007fe
I/bytecode( 9205): class_defs_size=0000013f
I/bytecode( 9205): class_defs_off=0000f1dc
I/bytecode( 9205): found method[3280] at 0002b470 : 491714a8
I/bytecode( 9205): aligned page 49171000
I/bytecode( 9205): unlocked
I/bytecode( 9205): bytecode patched
D/dummy() ( 9205): 85

Weitere ähnliche Inhalte

Was ist angesagt?

A client-side vulnerability under the microscope!
A client-side vulnerability under the microscope!A client-side vulnerability under the microscope!
A client-side vulnerability under the microscope!Nelson Brito
 
APAN 2014 Bandung E-Culture Working Group Introduction to Linked Data
APAN 2014 Bandung E-Culture Working Group Introduction to Linked DataAPAN 2014 Bandung E-Culture Working Group Introduction to Linked Data
APAN 2014 Bandung E-Culture Working Group Introduction to Linked DataAndrew Howard
 
sqlmap - security development in Python
sqlmap - security development in Pythonsqlmap - security development in Python
sqlmap - security development in PythonMiroslav Stampar
 
Vk.amberfog.com gtug part1_introduction2_javaandroid_gtug
Vk.amberfog.com gtug part1_introduction2_javaandroid_gtugVk.amberfog.com gtug part1_introduction2_javaandroid_gtug
Vk.amberfog.com gtug part1_introduction2_javaandroid_gtugketan_patel25
 
Dart London hackathon
Dart  London hackathonDart  London hackathon
Dart London hackathonchrisbuckett
 
EKON 12 Running OpenLDAP
EKON 12 Running OpenLDAP EKON 12 Running OpenLDAP
EKON 12 Running OpenLDAP Max Kleiner
 
I Know You Want Me - Unplugging PlugX
I Know You Want Me - Unplugging PlugXI Know You Want Me - Unplugging PlugX
I Know You Want Me - Unplugging PlugXTakahiro Haruyama
 
Object oriented programming with python
Object oriented programming with pythonObject oriented programming with python
Object oriented programming with pythonArslan Arshad
 
LatJUG. Java Bytecode Fundamentals
LatJUG. Java Bytecode FundamentalsLatJUG. Java Bytecode Fundamentals
LatJUG. Java Bytecode Fundamentalsdenis Udod
 
It all starts with the ' (SQL injection from attacker's point of view)
It all starts with the ' (SQL injection from attacker's point of view)It all starts with the ' (SQL injection from attacker's point of view)
It all starts with the ' (SQL injection from attacker's point of view)Miroslav Stampar
 
Riding the Overflow - Then and Now
Riding the Overflow - Then and NowRiding the Overflow - Then and Now
Riding the Overflow - Then and NowMiroslav Stampar
 
Java Programming Guide Quick Reference
Java Programming Guide Quick ReferenceJava Programming Guide Quick Reference
Java Programming Guide Quick ReferenceFrescatiStory
 
R. herves. clean code (theme)2
R. herves. clean code (theme)2R. herves. clean code (theme)2
R. herves. clean code (theme)2saber tabatabaee
 
Protocol T50: Five months later... So what?
Protocol T50: Five months later... So what?Protocol T50: Five months later... So what?
Protocol T50: Five months later... So what?Nelson Brito
 
Java 5 PSM for DDS: Initial Submission (out of date)
Java 5 PSM for DDS: Initial Submission (out of date)Java 5 PSM for DDS: Initial Submission (out of date)
Java 5 PSM for DDS: Initial Submission (out of date)Rick Warren
 

Was ist angesagt? (20)

A client-side vulnerability under the microscope!
A client-side vulnerability under the microscope!A client-side vulnerability under the microscope!
A client-side vulnerability under the microscope!
 
APAN 2014 Bandung E-Culture Working Group Introduction to Linked Data
APAN 2014 Bandung E-Culture Working Group Introduction to Linked DataAPAN 2014 Bandung E-Culture Working Group Introduction to Linked Data
APAN 2014 Bandung E-Culture Working Group Introduction to Linked Data
 
Py jail talk
Py jail talkPy jail talk
Py jail talk
 
sqlmap - security development in Python
sqlmap - security development in Pythonsqlmap - security development in Python
sqlmap - security development in Python
 
Vk.amberfog.com gtug part1_introduction2_javaandroid_gtug
Vk.amberfog.com gtug part1_introduction2_javaandroid_gtugVk.amberfog.com gtug part1_introduction2_javaandroid_gtug
Vk.amberfog.com gtug part1_introduction2_javaandroid_gtug
 
Java cheat sheet
Java cheat sheet Java cheat sheet
Java cheat sheet
 
Dart London hackathon
Dart  London hackathonDart  London hackathon
Dart London hackathon
 
EKON 12 Running OpenLDAP
EKON 12 Running OpenLDAP EKON 12 Running OpenLDAP
EKON 12 Running OpenLDAP
 
I Know You Want Me - Unplugging PlugX
I Know You Want Me - Unplugging PlugXI Know You Want Me - Unplugging PlugX
I Know You Want Me - Unplugging PlugX
 
Object oriented programming with python
Object oriented programming with pythonObject oriented programming with python
Object oriented programming with python
 
LatJUG. Java Bytecode Fundamentals
LatJUG. Java Bytecode FundamentalsLatJUG. Java Bytecode Fundamentals
LatJUG. Java Bytecode Fundamentals
 
It all starts with the ' (SQL injection from attacker's point of view)
It all starts with the ' (SQL injection from attacker's point of view)It all starts with the ' (SQL injection from attacker's point of view)
It all starts with the ' (SQL injection from attacker's point of view)
 
Riding the Overflow - Then and Now
Riding the Overflow - Then and NowRiding the Overflow - Then and Now
Riding the Overflow - Then and Now
 
Java Programming Guide Quick Reference
Java Programming Guide Quick ReferenceJava Programming Guide Quick Reference
Java Programming Guide Quick Reference
 
12 virtualmachine
12 virtualmachine12 virtualmachine
12 virtualmachine
 
R. herves. clean code (theme)2
R. herves. clean code (theme)2R. herves. clean code (theme)2
R. herves. clean code (theme)2
 
Object oriented programming in python
Object oriented programming in pythonObject oriented programming in python
Object oriented programming in python
 
Java for beginners
Java for beginnersJava for beginners
Java for beginners
 
Protocol T50: Five months later... So what?
Protocol T50: Five months later... So what?Protocol T50: Five months later... So what?
Protocol T50: Five months later... So what?
 
Java 5 PSM for DDS: Initial Submission (out of date)
Java 5 PSM for DDS: Initial Submission (out of date)Java 5 PSM for DDS: Initial Submission (out of date)
Java 5 PSM for DDS: Initial Submission (out of date)
 

Andere mochten auch

Syllabaus, ljubljana practicum, digital tools and scholarship, jankowski, dra...
Syllabaus, ljubljana practicum, digital tools and scholarship, jankowski, dra...Syllabaus, ljubljana practicum, digital tools and scholarship, jankowski, dra...
Syllabaus, ljubljana practicum, digital tools and scholarship, jankowski, dra...Nick Jankowski
 
Letter to CORE workshop participants, jankowski, 11sept2010
Letter to CORE workshop participants, jankowski, 11sept2010Letter to CORE workshop participants, jankowski, 11sept2010
Letter to CORE workshop participants, jankowski, 11sept2010Nick Jankowski
 
Esade Internet para ONGs Madrid 2009 Online
Esade Internet para ONGs Madrid 2009   OnlineEsade Internet para ONGs Madrid 2009   Online
Esade Internet para ONGs Madrid 2009 OnlineJordi Duran i Batidor
 
Jankowski, KCL CeRch presentation, enhanced scholarly publications, with note...
Jankowski, KCL CeRch presentation, enhanced scholarly publications, with note...Jankowski, KCL CeRch presentation, enhanced scholarly publications, with note...
Jankowski, KCL CeRch presentation, enhanced scholarly publications, with note...Nick Jankowski
 
Workshop - Blogs als Portfoliowerkzeug (Tutorenschulung WS2013)
Workshop - Blogs als Portfoliowerkzeug (Tutorenschulung WS2013)Workshop - Blogs als Portfoliowerkzeug (Tutorenschulung WS2013)
Workshop - Blogs als Portfoliowerkzeug (Tutorenschulung WS2013)Wey-Han Tan
 

Andere mochten auch (7)

Seminar presentation
Seminar presentationSeminar presentation
Seminar presentation
 
The Power of Video
The Power of VideoThe Power of Video
The Power of Video
 
Syllabaus, ljubljana practicum, digital tools and scholarship, jankowski, dra...
Syllabaus, ljubljana practicum, digital tools and scholarship, jankowski, dra...Syllabaus, ljubljana practicum, digital tools and scholarship, jankowski, dra...
Syllabaus, ljubljana practicum, digital tools and scholarship, jankowski, dra...
 
Letter to CORE workshop participants, jankowski, 11sept2010
Letter to CORE workshop participants, jankowski, 11sept2010Letter to CORE workshop participants, jankowski, 11sept2010
Letter to CORE workshop participants, jankowski, 11sept2010
 
Esade Internet para ONGs Madrid 2009 Online
Esade Internet para ONGs Madrid 2009   OnlineEsade Internet para ONGs Madrid 2009   Online
Esade Internet para ONGs Madrid 2009 Online
 
Jankowski, KCL CeRch presentation, enhanced scholarly publications, with note...
Jankowski, KCL CeRch presentation, enhanced scholarly publications, with note...Jankowski, KCL CeRch presentation, enhanced scholarly publications, with note...
Jankowski, KCL CeRch presentation, enhanced scholarly publications, with note...
 
Workshop - Blogs als Portfoliowerkzeug (Tutorenschulung WS2013)
Workshop - Blogs als Portfoliowerkzeug (Tutorenschulung WS2013)Workshop - Blogs als Portfoliowerkzeug (Tutorenschulung WS2013)
Workshop - Blogs als Portfoliowerkzeug (Tutorenschulung WS2013)
 

Ähnlich wie [HES2013] Nifty stuff that you can still do with android by Xavier Martin

為什麼Method數超過65535會build fail?
為什麼Method數超過65535會build fail?為什麼Method數超過65535會build fail?
為什麼Method數超過65535會build fail?Chih-Chung Lee
 
the productive programer: mechanics
the productive programer: mechanicsthe productive programer: mechanics
the productive programer: mechanicselliando dias
 
Forensic Memory Analysis of Android's Dalvik Virtual Machine
Forensic Memory Analysis of Android's Dalvik Virtual MachineForensic Memory Analysis of Android's Dalvik Virtual Machine
Forensic Memory Analysis of Android's Dalvik Virtual MachineSource Conference
 
Formbook - In-depth malware analysis (Botconf 2018)
Formbook - In-depth malware analysis (Botconf 2018)Formbook - In-depth malware analysis (Botconf 2018)
Formbook - In-depth malware analysis (Botconf 2018)Rémi Jullian
 
Chasing the Adder. A tale from the APT world...
Chasing the Adder. A tale from the APT world...Chasing the Adder. A tale from the APT world...
Chasing the Adder. A tale from the APT world...Stefano Maccaglia
 
Using the Android Native Development Kit (NDK)
Using the Android Native Development Kit (NDK)Using the Android Native Development Kit (NDK)
Using the Android Native Development Kit (NDK)DroidConTLV
 
Ts archiving
Ts   archivingTs   archiving
Ts archivingConfiz
 
IstSec'14 - İbrahim BALİÇ - Automated Malware Analysis
IstSec'14 - İbrahim BALİÇ -  Automated Malware AnalysisIstSec'14 - İbrahim BALİÇ -  Automated Malware Analysis
IstSec'14 - İbrahim BALİÇ - Automated Malware AnalysisBGA Cyber Security
 
Android NDK and the x86 Platform
Android NDK and the x86 PlatformAndroid NDK and the x86 Platform
Android NDK and the x86 PlatformSebastian Mauer
 
Eric Lafortune - The Jack and Jill build system
Eric Lafortune - The Jack and Jill build systemEric Lafortune - The Jack and Jill build system
Eric Lafortune - The Jack and Jill build systemGuardSquare
 

Ähnlich wie [HES2013] Nifty stuff that you can still do with android by Xavier Martin (20)

為什麼Method數超過65535會build fail?
為什麼Method數超過65535會build fail?為什麼Method數超過65535會build fail?
為什麼Method數超過65535會build fail?
 
Devtools cheatsheet
Devtools cheatsheetDevtools cheatsheet
Devtools cheatsheet
 
Devtools cheatsheet
Devtools cheatsheetDevtools cheatsheet
Devtools cheatsheet
 
the productive programer: mechanics
the productive programer: mechanicsthe productive programer: mechanics
the productive programer: mechanics
 
Android basics
Android basicsAndroid basics
Android basics
 
Forensic Memory Analysis of Android's Dalvik Virtual Machine
Forensic Memory Analysis of Android's Dalvik Virtual MachineForensic Memory Analysis of Android's Dalvik Virtual Machine
Forensic Memory Analysis of Android's Dalvik Virtual Machine
 
Demo Eclipse Science
Demo Eclipse ScienceDemo Eclipse Science
Demo Eclipse Science
 
Demo eclipse science
Demo eclipse scienceDemo eclipse science
Demo eclipse science
 
Readme
ReadmeReadme
Readme
 
Formbook - In-depth malware analysis (Botconf 2018)
Formbook - In-depth malware analysis (Botconf 2018)Formbook - In-depth malware analysis (Botconf 2018)
Formbook - In-depth malware analysis (Botconf 2018)
 
Getting Native with NDK
Getting Native with NDKGetting Native with NDK
Getting Native with NDK
 
Chasing the Adder. A tale from the APT world...
Chasing the Adder. A tale from the APT world...Chasing the Adder. A tale from the APT world...
Chasing the Adder. A tale from the APT world...
 
SFDX Presentation
SFDX PresentationSFDX Presentation
SFDX Presentation
 
Hadoop HDFS Concepts
Hadoop HDFS ConceptsHadoop HDFS Concepts
Hadoop HDFS Concepts
 
Using the Android Native Development Kit (NDK)
Using the Android Native Development Kit (NDK)Using the Android Native Development Kit (NDK)
Using the Android Native Development Kit (NDK)
 
Ts archiving
Ts   archivingTs   archiving
Ts archiving
 
IstSec'14 - İbrahim BALİÇ - Automated Malware Analysis
IstSec'14 - İbrahim BALİÇ -  Automated Malware AnalysisIstSec'14 - İbrahim BALİÇ -  Automated Malware Analysis
IstSec'14 - İbrahim BALİÇ - Automated Malware Analysis
 
Android NDK and the x86 Platform
Android NDK and the x86 PlatformAndroid NDK and the x86 Platform
Android NDK and the x86 Platform
 
NvFX GTC 2013
NvFX GTC 2013NvFX GTC 2013
NvFX GTC 2013
 
Eric Lafortune - The Jack and Jill build system
Eric Lafortune - The Jack and Jill build systemEric Lafortune - The Jack and Jill build system
Eric Lafortune - The Jack and Jill build system
 

Mehr von Hackito Ergo Sum

[HES2013] Hacking apple accessories to pown iDevices – Wake up Neo! Your phon...
[HES2013] Hacking apple accessories to pown iDevices – Wake up Neo! Your phon...[HES2013] Hacking apple accessories to pown iDevices – Wake up Neo! Your phon...
[HES2013] Hacking apple accessories to pown iDevices – Wake up Neo! Your phon...Hackito Ergo Sum
 
[HES2013] Frida IRE – a tool for scriptable dynamic instrumentation in userla...
[HES2013] Frida IRE – a tool for scriptable dynamic instrumentation in userla...[HES2013] Frida IRE – a tool for scriptable dynamic instrumentation in userla...
[HES2013] Frida IRE – a tool for scriptable dynamic instrumentation in userla...Hackito Ergo Sum
 
[HES2013] Paparazzi over ip by Daniel Mende
[HES2013] Paparazzi over ip by Daniel Mende[HES2013] Paparazzi over ip by Daniel Mende
[HES2013] Paparazzi over ip by Daniel MendeHackito Ergo Sum
 
[HES2014] HackRF A Low Cost Software Defined Radio Platform by Benjamin Vernoux
[HES2014] HackRF A Low Cost Software Defined Radio Platform by Benjamin Vernoux[HES2014] HackRF A Low Cost Software Defined Radio Platform by Benjamin Vernoux
[HES2014] HackRF A Low Cost Software Defined Radio Platform by Benjamin VernouxHackito Ergo Sum
 
[HES2013] Information Warfare: mistakes from the MoDs by Raoul “Nobody” Chiesa
[HES2013] Information Warfare: mistakes from the MoDs by Raoul “Nobody” Chiesa[HES2013] Information Warfare: mistakes from the MoDs by Raoul “Nobody” Chiesa
[HES2013] Information Warfare: mistakes from the MoDs by Raoul “Nobody” ChiesaHackito Ergo Sum
 
[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...
[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...
[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...Hackito Ergo Sum
 

Mehr von Hackito Ergo Sum (6)

[HES2013] Hacking apple accessories to pown iDevices – Wake up Neo! Your phon...
[HES2013] Hacking apple accessories to pown iDevices – Wake up Neo! Your phon...[HES2013] Hacking apple accessories to pown iDevices – Wake up Neo! Your phon...
[HES2013] Hacking apple accessories to pown iDevices – Wake up Neo! Your phon...
 
[HES2013] Frida IRE – a tool for scriptable dynamic instrumentation in userla...
[HES2013] Frida IRE – a tool for scriptable dynamic instrumentation in userla...[HES2013] Frida IRE – a tool for scriptable dynamic instrumentation in userla...
[HES2013] Frida IRE – a tool for scriptable dynamic instrumentation in userla...
 
[HES2013] Paparazzi over ip by Daniel Mende
[HES2013] Paparazzi over ip by Daniel Mende[HES2013] Paparazzi over ip by Daniel Mende
[HES2013] Paparazzi over ip by Daniel Mende
 
[HES2014] HackRF A Low Cost Software Defined Radio Platform by Benjamin Vernoux
[HES2014] HackRF A Low Cost Software Defined Radio Platform by Benjamin Vernoux[HES2014] HackRF A Low Cost Software Defined Radio Platform by Benjamin Vernoux
[HES2014] HackRF A Low Cost Software Defined Radio Platform by Benjamin Vernoux
 
[HES2013] Information Warfare: mistakes from the MoDs by Raoul “Nobody” Chiesa
[HES2013] Information Warfare: mistakes from the MoDs by Raoul “Nobody” Chiesa[HES2013] Information Warfare: mistakes from the MoDs by Raoul “Nobody” Chiesa
[HES2013] Information Warfare: mistakes from the MoDs by Raoul “Nobody” Chiesa
 
[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...
[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...
[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...
 

Kürzlich hochgeladen

Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....kzayra69
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
Best Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdfBest Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdfIdiosysTechnologies1
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 

Kürzlich hochgeladen (20)

Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Advantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your BusinessAdvantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your Business
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
Best Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdfBest Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdf
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 

[HES2013] Nifty stuff that you can still do with android by Xavier Martin