Beispiel #1
0
def get_downloaded_list():
    while True:
        paths = os.listdir(TMP_FOLDER)
        for i in paths:
            sha256_list = []
            sha256 = i.split('sha256=')[1].lower()
            if sha256 == get_sha256(TMP_FOLDER + i):
                if os.path.exists(get_benign_dir(sha256) + sha256):
                    os.remove(get_benign_dir(sha256) + sha256)
                shutil.move(TMP_FOLDER + i, get_benign_dir(sha256) + sha256)
                os.system('echo "' + i + '" >>' + CURRENT_DOWNLOADED)
Beispiel #2
0
def get_vt_list(string):
    list_todo = []
    path_m = get_malware_dir(string)
    path_b = get_benign_dir(string)
    df_b = pd.read_csv(path_b + 'reports.csv', sep=',')
    df_m = pd.read_csv(path_m + 'reports.csv', sep=',')
    list_m = list(df_m['sha256'])
    list_b = list(df_b['sha256'])
    paths = os.listdir(path_m)
    for m in paths:
        if len(m) == 64:
            if m in list_b:
                if os.path.exists(path_b + m):
                    continue


#	  os.remove(path_b+m)
                shutil.move(path_m + m, path_b)
                if m + '.data' in paths:
                    shutil.move(path_m + m + '.data', path_b)
                if m + '.xml' in paths:
                    shutil.move(path_m + m + '.xml', path_b)
                continue
            elif m not in list_m:
                list_todo.append(m)
    return list(set(list_todo))
Beispiel #3
0
def write_benign(list_dict):
    for dict_csv in list_dict:
        try:
            prex = dict_csv['sha256'][0][:3]
            file_path = get_benign_dir(prex) + 'vt_report.csv'
        except Exception, e:
            #      print str(e) + '读sha256失败'
            pass
        try:
            df = pd.DataFrame(dict_csv, columns=columns)
            if os.path.exists(file_path):
                if check(file_path, dict_csv['sha256'][0]):
                    df.to_csv(file_path,
                              index=False,
                              sep=',',
                              mode='a',
                              header=False,
                              columns=columns)
            else:
                df.to_csv(file_path,
                          index=False,
                          sep=',',
                          mode='a',
                          columns=columns)
        except Exception, e:
            pass
Beispiel #4
0
def __name__ == '__main__':
  path_list = []
  for i in string:
    for j in string:
      for k in string:
         path_list.append(get_malware_dir(i+j+k))
         path_list.append(get_benign_dir(i+j+k))

  GetApkData(psutil.cpu_count(), path_list)
Beispiel #5
0
import pandas as pd
from core.settings import get_malware_dir
from core.settings import get_benign_dir

STRPATH = '0123456789abcdef'
count_malware = 0
count_benign = 0
count_data_m = 0
count_data_b = 0
count_vt_m = 0
count_vt_b = 0
for i in list(STRPATH):
  for j in list(STRPATH):
    for k in list(STRPATH):
      malware_file = get_malware_dir(i+j+k)
      benign_file = get_benign_dir(i+j+k)
      malwares = os.listdir(malware_file)
      benigns = os.listdir(benign_file)
      count_vt_m = count_vt_m+int(os.popen('cat '+malware_file+'vt_report.csv|wc -l').read()[:-1])
      count_vt_b = count_vt_b+int(os.popen('cat '+benign_file+'vt_report.csv|wc -l').read()[:-1])
      for l in malwares:
        if 'xml' == l[-3:]
          continue
        if 'data' == l[-4:]:
          count_data_m = count_data_m + 1
          continue
        if '.' in l:
          continue
        count_malware = count_malware + 1
      for l in benigns:
        if 'xml' == l[-3:]: