diff --git a/PYAS.py b/PYAS.py index 05b2ef2..cd71060 100644 --- a/PYAS.py +++ b/PYAS.py @@ -5,6 +5,7 @@ import xml.etree.ElementTree as et from hashlib import md5, sha1, sha256 from pefile import PE, DIRECTORY_ENTRY from PYAS_Language import translations +from PYAS_Scripts import scripts_list from PYAS_Function import function_list from PYAS_Extension import slist, alist from PYAS_Interface import Ui_MainWindow @@ -48,7 +49,7 @@ class MainWindow_Controller(QtWidgets.QMainWindow): self.scan = False self.block_window = True self.pyas_opacity = 0 - self.pyas_version = "2.7.9" + self.pyas_version = "2.8.0" self.ui.Theme_White.setChecked(True) self.pyas = str(sys.argv[0]).replace("\\", "/") self.key = self.pyas_key() @@ -729,12 +730,12 @@ class MainWindow_Controller(QtWidgets.QMainWindow): if self.high_sensitivity == 0 and self.sign_scan(file): if self.api_scan(file): self.write_scan(self.text_Translate("惡意"),file) - elif self.pe_scan(file): + elif self.pe_scan(file) or self.scr_scan(file): self.write_scan(self.text_Translate("可疑"),file) elif self.high_sensitivity == 1: if self.api_scan(file): self.write_scan(self.text_Translate("惡意"),file) - elif self.pe_scan(file): + elif self.pe_scan(file) or self.scr_scan(file): self.write_scan(self.text_Translate("可疑"),file) self.answer_scan() gc.collect() @@ -792,12 +793,12 @@ class MainWindow_Controller(QtWidgets.QMainWindow): if str(os.path.splitext(fd)[1]).lower() in slist: if self.api_scan(file): self.write_scan(self.text_Translate("惡意"),file) - elif self.pe_scan(file): + elif self.pe_scan(file) or self.scr_scan(file): self.write_scan(self.text_Translate("可疑"),file) elif self.high_sensitivity == 1: if self.api_scan(file): self.write_scan(self.text_Translate("惡意"),file) - elif self.pe_scan(file): + elif self.pe_scan(file) or self.scr_scan(file): self.write_scan(self.text_Translate("可疑"),file) gc.collect() except: @@ -822,6 +823,18 @@ class MainWindow_Controller(QtWidgets.QMainWindow): except: return True + def scr_scan(self,file): + try: + with open(file, "r") as f: + text = str(f.read()) + for sn in scripts_list: + if sn in text: + #print(sn) + return True + return False + except: + return False + def pe_scan(self,file): try: fn = [] @@ -834,6 +847,7 @@ class MainWindow_Controller(QtWidgets.QMainWindow): except: pass if fn in function_list: + #print(fn) return True return False except: diff --git a/PYAS_Extension.py b/PYAS_Extension.py index 977fc52..f930d78 100644 --- a/PYAS_Extension.py +++ b/PYAS_Extension.py @@ -7,4 +7,5 @@ alist = [".exe",".dll",".ppt",".pptx",".wps", ".pdf",".xls",".xlsx",".doc",".docx", ".jpg",".jpeg",".png",".webp",".gif", ".mp3",".wav",".aac",".ogg",".flac", - ".mp4",".avi",".mov",".wmv",".mkv"] + ".mp4",".avi",".mov",".wmv",".mkv", + ".zip",".gz",".7z",".rar",".tar"] diff --git a/PYAS_Scripts.py b/PYAS_Scripts.py new file mode 100644 index 0000000..d206e8a --- /dev/null +++ b/PYAS_Scripts.py @@ -0,0 +1,2 @@ +scripts_list = ["-enc","-ep","-nop","XOR","RC4","%0|%0","ExclusionPath","cmdkey","eiculwo","fromCharCode","GetObject"] +#scripts_list = ["-enc","-ep","-nop","XOR","RC4","%0|%0","ExclusionPath","cmdkey","eiculwo"] diff --git a/PYAS_Version.py b/PYAS_Version.py index bb2d7ed..c15f82d 100644 --- a/PYAS_Version.py +++ b/PYAS_Version.py @@ -1,10 +1,10 @@ import pyinstaller_versionfile pyinstaller_versionfile.create_versionfile( output_file="versionfile.txt", -version='2.7.9', +version='2.8.0', company_name="PYAS Security", file_description="Python Antivirus Software", internal_name="PYAS", legal_copyright="© PYAS Security", -original_filename="PYAS.exe", +original_filename="󠁅PYAS.exe", product_name="PYAS")