Skip to content

Commit

Permalink
initial
Browse files Browse the repository at this point in the history
  • Loading branch information
Yannic Noller committed Sep 12, 2019
0 parents commit e9bc3b1
Show file tree
Hide file tree
Showing 7,625 changed files with 1,582,384 additions and 0 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
230 changes: 230 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,230 @@
## Core latex/pdflatex auxiliary files:
*.aux
*.lof
*.log
*.lot
*.fls
*.out
*.toc
*.fmt
*.fot
*.cb
*.cb2

## Intermediate documents:
*.dvi
*-converted-to.*
# these rules might exclude image files for figures etc.
# *.ps
# *.eps
*.pdf

## Generated if empty string is given at "Please type another file name for output:"
main.pdf

## Bibliography auxiliary files (bibtex/biblatex/biber):
*.bbl
*.bcf
*.blg
*-blx.aux
*-blx.bib
*.run.xml

## Build tool auxiliary files:
*.fdb_latexmk
*.synctex
*.synctex(busy)
*.synctex.gz
*.synctex.gz(busy)
*.pdfsync

## Auxiliary and intermediate files from other packages:
# algorithms
*.alg
*.loa

# achemso
acs-*.bib

# amsthm
*.thm

# beamer
*.nav
*.pre
*.snm
*.vrb

# changes
*.soc

# cprotect
*.cpt

# elsarticle (documentclass of Elsevier journals)
*.spl

# endnotes
*.ent

# fixme
*.lox

# feynmf/feynmp
*.mf
*.mp
*.t[1-9]
*.t[1-9][0-9]
*.tfm

#(r)(e)ledmac/(r)(e)ledpar
*.end
*.?end
*.[1-9]
*.[1-9][0-9]
*.[1-9][0-9][0-9]
*.[1-9]R
*.[1-9][0-9]R
*.[1-9][0-9][0-9]R
*.eledsec[1-9]
*.eledsec[1-9]R
*.eledsec[1-9][0-9]
*.eledsec[1-9][0-9]R
*.eledsec[1-9][0-9][0-9]
*.eledsec[1-9][0-9][0-9]R

# glossaries
*.acn
*.acr
*.glg
*.glo
*.gls
*.glsdefs

# gnuplottex
*-gnuplottex-*

# gregoriotex
*.gaux
*.gtex

# hyperref
*.brf

# knitr
*-concordance.tex
# TODO Comment the next line if you want to keep your tikz graphics files
*.tikz
*-tikzDictionary

# listings
*.lol

# makeidx
*.idx
*.ilg
*.ind
*.ist

# minitoc
*.maf
*.mlf
*.mlt
*.mtc[0-9]*
*.slf[0-9]*
*.slt[0-9]*
*.stc[0-9]*

# minted
_minted*
*.pyg

# morewrites
*.mw

# nomencl
*.nlo

# pax
*.pax

# pdfpcnotes
*.pdfpc

# sagetex
*.sagetex.sage
*.sagetex.py
*.sagetex.scmd

# scrwfile
*.wrt

# sympy
*.sout
*.sympy
sympy-plots-for-*.tex/

# pdfcomment
*.upa
*.upb

# pythontex
*.pytxcode
pythontex-files-*/

# thmtools
*.loe

# TikZ & PGF
*.dpth
*.md5
*.auxlock

# todonotes
*.tdo

# easy-todo
*.lod

# xindy
*.xdy

# xypic precompiled matrices
*.xyc

# endfloat
*.ttt
*.fff

# Latexian
TSWLatexianTemp*

## Editors:
# WinEdt
*.bak
*.sav

# Texpad
.texpadtmp

# Kile
*.backup

# KBibTeX
*~[0-9]*

# auto folder when using emacs and auctex
/auto/*

# expex forward references with \gathertags
*-tags.tex

# for emacs
*~

*.cut

*.tmp
*.tuo

*.run.xml
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@

# HyDiff: Hybrid Differential Software Analysis

(in progress)
75 changes: 75 additions & 0 deletions build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
#!/bin/bash
trap "exit" INT

echo "Building HyDiff sources and experimental subjects.."

echo "[1/6] build afl.."
cd tool/fuzzing/afl-differential
rm -f build.log
make clean > build.log
make > build.log
cd ../../../

echo "[2/6] build kelinci .."
cd tool/fuzzing/kelinci-differential/
cd fuzzerside/
rm -f build.log
make clean > build.log
make > build.log
cd ../instrumentor/
rm -f build.log
gradle clean > build.log
gradle build --refresh-dependencies > build.log
cd ../../../../

echo "[3/6] setting up site.properties .."
workingDir=$(pwd)
sitePropFile="$HOME/.jpf/site.properties"
if [ -e $sitePropFile ]
then
rm $sitePropFile
fi
touch $sitePropFile
echo "jpf-core = $workingDir/tool/symbolicexecution/jpf-core" >> $sitePropFile
echo "jpf-symbc = $workingDir/tool/symbolicexecution/jpf-symbc-differential" >> $sitePropFile
echo "badger = $workingDir/tool/symbolicexecution/badger-differential" >> $sitePropFile
echo "extensions=\${jpf-core},\${jpf-symbc},\${badger}" >> $sitePropFile

echo "[4/6] build jpf-core .."
cd tool/symbolicexecution/jpf-core
rm -f build.log
ant clean > build.log
ant > build.log
cd ../../../

echo "[5/6] build jpf-symbc-differential .."
cd tool/symbolicexecution/jpf-symbc-differential
rm -f build.log
ant clean > build.log
ant > build.log
cd ../../../

echo "[6/6] build badger-differential .."
cd tool/symbolicexecution/badger-differential/
rm -f build.log
ant clean > build.log
ant > build.log
cd ../../../

echo "[7/11] clean experiments .."
cd experiments/scripts
./clean_experiments.sh

echo "[8/11] prepare example subject .."
./prepare_example.sh

echo "[9/11] prepare regression subjects .."
./prepare_regression_subjects.sh

echo "[10/11] prepare sidechannel subjects .."
./prepare_sidechannel_subjects.sh

echo "[11/11] prepare dnn subjects .."
./prepare_dnn_subjects.sh

echo "Done."
60 changes: 60 additions & 0 deletions experiments/scripts/best.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
"""
Script to aggregate the results from an experiment.
Input: source folder path, e.g.
python3 python3 evaluate.py blazer_login_unsafe/fuzzer-out-
"""
import sys
import csv
import statistics
import math
import numpy
import re
from numpy import mean
from numpy import std
from scipy.stats import ttest_ind
from scipy.stats import mannwhitneyu
from scipy.stats import wilcoxon
from scipy.stats import sem
from scipy.stats import t

# do not change this parameters
START_INDEX = 1

# significance level
alpha = 0.05




if __name__ == '__main__':

n = 30

# HyDiff-AFL
data1=[575, 962, 942, 914, 577, 570, 576, 573, 571, 905, 583, 579, 950, 577, 599, 589, 576, 584, 920, 567, 570, 892, 565, 572, 946, 919, 578, 564, 942, 883]



# HyDiff-SPF
data2=[575, 569, 582, 567, 577, 570, 576, 573, 571, 582, 583, 579, 575, 577, 599, 589, 576, 584, 571, 567, 570, 567, 565, 572, 570, 579, 578, 564, 575, 572]


if len(data1) != len(data2) or len(data1) != n:
print("Wrong number of elements!")
exit()


print("n=" + str(len(data1)))
print('data1: mean=%.2f error=+/-%.2f' % (mean(data1), 1.960 * numpy.std(data1)/float(math.sqrt(n))))
print('data2 mean=%.2f error=+/-%.2f' % (mean(data2), 1.960 * numpy.std(data2)/float(math.sqrt(n))))


for i in range(0, n):
data1[i] = min(data1[i], data2[i])
best=min(data1)

print('merged_data mean=%.2f error=+/-%.2f best=%.0f' % (mean(data1), 1.960 * numpy.std(data1)/float(math.sqrt(n)), best))

print(data1)
Loading

0 comments on commit e9bc3b1

Please sign in to comment.