Concolic analysis engine that auto analysis information flow and fuzz the programs on the actual Tizen device.
#Architecture overview
-
Install angr-dev:
-
Execute
$ workon angr -
Run
$ git clone https://github.com/visionius/SymDynFuzz -
Run
$ cd SymDynFuzz -
Set <IP,Port> in symdynfuzz.py.
-
Setup SSH server and pass it into
usernameandpasswordin symdynfuzz.py and automation.py -
Install Tizen-Studio (install all the requirements for mobile applications). Then add compile options -no-pie and -fno-stack-protector for gcc compile option in "tizen-studio\tools\ide\resources\native\Build"
-
Copy envfiles/setup.bat and envfiles/compile_install.bat to tizen-studio folder
-
Run
$ python3 symdynfuzz.py <max-argv-numbers> <max-argv-size> [<|stdin|argv|>]*
After compiling the blow program and installing it on the Tizen device, fireup the script to analyze the program on the target device.
#include <stdio.h>
#include <string.h>
int main(int argc, char** argv)
{
char buffer[40];
char input[100];
if(argc > 1)
{
if(!strcmp(argv[1], "-s"))
{
fgets(input, 100, stdin);
if(input[1] == 'G' && input[5] == 'M')
{
strcpy(buffer, input);
}
}
}
else
{
printf("[-] Usage with flag (-s)\n");
}
}SymDynFuzz results on NIST SARD benchmark C programs are stored in CRASH_REPORT.txt file.

