Архив метки: Безопасность

Самые безопасные Linux дистрибутивы

Приватность и безопасность всё больше интересуют пользователей интернета, не в последнюю очередь из-за усиленной слежки правительствами или массовым сбором данных корпорациями об этих пользователях, а также длинным списком уже известных публике взломов, при которых были похищены пользовательские данные. В то время, как в Windows и macOS есть некоторые средства защиты, и существуют такие опции, как VPN, или браузер Tor, существует множество дистрибутивов Linux с упором именно на безопасность и защиту от слежки.

Конечно, если вы знаете Linux на достаточном уровне, то вы можете так же настроить свой любимый дистрибутив, как представленные здесь, но в противном случае лучше выбрать что-то готовое. Самые безопасные дистрибутивы Linux защищают вас от кибер-угроз, от вредоносных программ и попыток вторжения хакеров.
Читать далее Самые безопасные Linux дистрибутивы

Лучшие менеджеры паролей для Linux

Современный мир немыслим без интернет-технологий. Практически у каждого пользователя есть множество аккаунтов на различных сайтах и сервисах. Использовать один пароль для всего небезопасно. Далеко не все сайты хранят пароли в зашифрованном виде, если произойдёт утечка данных, то злоумышленники получат доступ сразу к нескольким вашим аккаунтам. Поэтому для каждого аккаунта желательно использовать свой пароль.

Мало кто может запомнить все пароли и логины. В этом случае на помощь приходят менеджеры паролей Linux. Большинство пользователей использует встроенный в браузер менеджер, но это не самый удобный вариант. К тому же браузер не всегда может распознать аутентификацию и предложить сохранение пароля. Отдельные программы будут более предпочтительным вариантом для активных пользователей интернета. Для операционной системы Linux существует немало менеджеров паролей, но хороших и современных вариантов не так много. Как раз о таких и пойдёт речь.

Читать далее Лучшие менеджеры паролей для Linux

Лучшие антивирусы для Linux

Нужен ли в Linux антивирус? Этот вопрос тревожит многих новых пользователей и становится причиной дискуссий между опытными. Недавно я писал статью - Вирусы и Linux, из которой мы узнали, что для Linux не страшны вирусы такими, какими их знают пользователи Windows. Здесь нежелательные последствия могут вызвать в основном невнимательность и неправильные действия пользователя. Например, фишинг сайты, запуск опасных команд с правами рута, а также внешние хакерские атаки.

В Linux совсем другие средства защиты. Это фаерволы, настройка правильных прав доступа, аннонимизация, своевременное обновление системы и в крайнем случае контейнерная виртуализация процессов.  Но обычные антивирусы для Linux могут понадобиться когда вы часто имеете дело с Windows-машинами. Все антивирусы для Linux рассчитаны в основном обнаруживать вирусы Windows, таким образом, вы можете сканировать флешки из windows, а также файловую систему Windows если на компьютере установлены две операционные системы.
Читать далее Лучшие антивирусы для Linux

Установка и настройка Qubes OS 4

Qubes OS 4 - операционная система ориентированная на безопасность методом разделения процессов по виртуальным машинам. Виртуализация происходит на базе технологии XEN, что позволяет работать виртуальным машинам значительно быстрее чем при использовании программной виртуализации (VirtualBox, VMware и так далее).

Однако данная операционная система все же достаточно специфична и может показаться сложной в использовании после классических Linux OS. В данной статье постараюсь как можно подробнее описать установку Qubes OS, настройка, также нюансы системы.
Читать далее Установка и настройка Qubes OS 4

Как пользоваться Burp Suite

Burp Suite - это мощный набор инструментов для тестирования безопасности веб-приложений и сайтов. С помощью этого инструмента можно протестировать буквально все, что вы захотите. Программу могут использовать не только профессионалы, но и новички с минимальным количеством усилий для ее освоения. Программа написана на Java, поэтому может работать на различных платформах, например, Windows, Linux или Mac.

Интерфейс Burp Suite интуитивно понятный, а среди инструментов есть прокси, паук, сканер, декодер, репитер, анализатор последовательностей и многое другое. В этой статье мы рассмотрим как пользоваться Burp Suite, основные возможности программы, а также как ее установить и настроить.

Читать далее Как пользоваться Burp Suite

Защита сайта от SQL инъекций

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

Разберем что такое SQL инъекция, как она работает, а также как с ней бороться, как на уровне языка программирования, так и с помощью создания различных помех для злоумышленника с помощью веб-сервера. Это тоже достаточно эффективно.

Читать далее Защита сайта от SQL инъекций

Как проверить сайт WordPress на вирусы

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

Как защитить WordPress от взлома мы рассмотрим в одной из следующих статей, а сейчас я хочу рассказать как проверить сайт WordPress на вирусы и вредоносный код, чтобы убедиться что все в безопасности.

Читать далее Как проверить сайт WordPress на вирусы

Шифрование usb флешки

Мы носим свои USB флешки везде с собой, потому что обычно там находятся очень важные файлы, которые могут нам понадобиться в любой момент. А что будет, если вы их потеряете? Файлов больше нет, и у вас даже нет резервной копии, но любой, кто найдет флешку может их использовать в своих интересах.

Люди хранят различные виды важной информации на своих USB флешках и наличие этой информации у кого -либо еще может иметь очень печальные последствия. Но вы можете защитить себя, выполнив шифрование USB флешки. В таком случае, даже если кто-либо найдет потерянную флешку, если у него нет ресурсов для взлома передовых алгоритмов шифрования или вы не используете слишком слабый пароль, то можете быть уверены что ваши файлы никому больше не достанутся. В этой статье мы будем рассматривать как выполнить шифрование флешки VeraCrypt.

Читать далее Шифрование usb флешки

Открытые порты Ubuntu

В современных операционных системах не обойтись без взаимодействия программ с внешней средой и интернетом.  Для этого используется специальные механизмы - порты.

Но порты представляют определённую угрозу. Если в программе есть какая-либо уязвимость, то любой пользователь локальной сети сможет получить доступ к вашему компьютеру, а в некоторых случаях даже к вашей информации. Поэтому нужно быть очень осторожным с открытыми портами. В этой статье мы разберёмся, как посмотреть открытые порты Ubuntu.

Читать далее Открытые порты Ubuntu

Как пользоваться Hashcat

Раньше большинство паролей хранилось в открытом виде, но очень быстро разработчики поняли, что так делать небезопасно. Лучше хранить не сам пароль, а его хэш, набор цифр определенного размера, который генерируется на основе пароля. В таком случае, даже если злоумышленник получит хэш, то он не сможет узнать пароль. Существуют различные способы хэширования, например, md5, sha1, sha2 и многие другие. Но существует способ восстановления пароля из хэша. Для этого можно использовать перебор, нам достаточно создавать хэш для каждого возможного пароля и сравнивать его с тем хэшем, который нужно расшифровать.

Для перебора хешей существуют различные программы, одна из них - это Hashcat. С помощью этой утилиты можно перебирать значение хэша по словарю или полным перебором по всем значениям. В этой статье мы рассмотрим как пользоваться Hashcat.

Какие хэши можно перебрать?

Как я уже говорил, существует несколько алгоритмов хэширования, но сложность перебора каждого из них отличается. Каждый из алгоритмов может иметь коллизии. Это когда для одного хэша можно подобрать несколько различных исходных наборов данных. Самым небезопасным из популярных алгоритмов на данный момент считается md5. Было доказано, что в этом алгоритме можно найти множество коллизий, а это значит, что перебрать значение такого хэша будет намного проще. Алгоритм sha1 тоже имеет коллизии, но их намного сложнее найти, а значит перебор будет ненамного проще. Существования коллизий для Sha2 пока не доказано, но не исключено.

Программа hashcat поддерживает работу с такими алгоритмами хэширования: md5, md5crypt, sha1, sha2, sha256, md4, mysql, sha512, wpa, wpa2, grub2, android, sha256crypt, drupal7, scrypt, django и другими.

Установка hashcat

Если вы используете Windows, то вам достаточно загрузить установщик из официального сайта.

Вам нужно выбрать hashcat binaries нужной версии внизу страницы. В архиве находятся исполняемые файлы для Windows, Linux и MacOS, так что у вас не возникнет проблем. В Linux вы также можете установить утилиту из официальных репозиториев. Например, в Ubuntu команда будет выглядеть вот так:

sudo apt install hashcat

Но это еще не все. Если в вашей системе есть видеокарта, то программа будет использовать ее. И на нее должен быть установлен драйвер, желательно проприетарный. Я не буду на этом останавливаться. Но если видеокарта слабая, то можно использовать процессор. Для этого нужно установить несколько пакетов для работы OpenCL на процессоре. Вот так выглядят команды установки в Ubuntu:

sudo apt install libhwloc-dev ocl-icd-dev ocl-icd-opencl-dev
$ sudo apt install pocl-opencl-icd

Теперь мы можем выполнить тестирование производительности:

hashcat -D 1 -b

Утилита hashcat

Сначала давайте рассмотрим синтаксис и возможные опции утилиты, а потом уже перейдем к ее использованию. Это консольная утилита, поэтому придется использовать ее через терминал. Давайте сначала рассмотрим синтаксис:

$ hashcat опции файл_хэшей словари_и_настройки

Как видите, все довольно просто. Начнем с основных опций, которые настраивают как будет вести себя утилита:

  • -h - вывести доступные команды и опции;
  • -V - версия программы;
  • -m - тип хэша, который нужно перебрать, например, md5 или sha;
  • -a - вид атаки;
  • -b - запустить тестирование производительности;
  • --hex-salt - указать соль, которая использовалась при хэшировании;
  • --hex-charset - набор символов, для исходных данных;
  • --status - автоматически обновлять состояние подбора;
  • -o - файл для записи результата;
  • -p - символ, которым разделены хэши для перебора;
  • -c - размер кэша для словаря;
  • -n - количество потоков;
  • -l - ограничить количество слов для перебора;
  • -r - файл с правилами генерации вариантов;
  • -D - устройство для перебора, CPU или GPU;
  • --pw-min - минимальная длина варианта, символов;
  • --pw-max - максимальная длина варианта, символов;
  • --table-min - длина пароля для табличной атаки;
  • --table-max - максимальная длина пароля для табличной атаки;
  • --table-file - файл таблицы, для атаки по таблице.

Мы рассмотрели все основные опции, которые сегодня будем использовать. Многие из параметров, например, тип хэша и атаки, задаются в виде цифр. Я не буду рассматривать цифровые коды для типа хэша подробно. Вы можете найти эту информацию, выполнив man hashcat. Рассмотрим типы атак:

  • Straight - обычная атака, берет слова из словаря и проверяет их;
  • Combination - комбинирует слова из словаря в разные комбинации;
  • Toggle-Case - по очереди пробует разный регистр букв для каждого символа слова;
  • Brute-force - атака простым перебором на основе маски или символов;
  • Permutation - при этом типе атаки программа берет слова из словаря и меняет в них буквы местами для получения разных комбинаций;
  • Table-Lookup - Табличная атака, берется одно слово и словаря, а затем на его основе создаются варианты из таблицы. Каждый символ из таблицы будет заменен на набор прописанных вариантов;
  • Prince - новый вид атаки перебора, которая работает быстрее, обычной.

Кроме того, при переборе на основе брутфорса нам понадобится выбрать набор символов, которые будет использовать программа для генерации возможных вариантов. Вот возможные значения:

  • ?l = abcdefghijklmnopqrstuvwxyz;
  • ?u = ABCDEFGHIJKLMNOPQRSTUVWXYZ;
  • ?d = 0123456789;
  • ?s = !"#$%&'()*+,-./:;<=>?@[]^_`{|}~;
  • ?a = ?l?u?d?s - любой символ;
  • ?b = 0x00 - 0xff.

Теперь мы разобрали все необходимое и можно переходить к практике.

Как пользоваться Hashcat?

Как я уже сказал, утилита позволяет расшифровывать хэши, созданные с помощью различных алгоритмов с помощью перебора. Мы будем перебирать хэш md5 и рассмотрим два типа атаки - на основе словаря и полным перебором.

1. Перебор по словарю в Hashcat

Расшифровка md5 проще всего выполняется по словарю. Поскольку полный перебор занимает очень много времени, то перебрать наиболее часто употребляемые варианты может быть намного быстрее. Для перебора нам понадобится словарь, обычно используется rockyou. Словарь можно скачать командой:

wget http://scrapmaker.com/data/wordlists/dictionaries/rockyou.txt

Теперь нам еще осталось подготовить хэши, которые будем перебирать. Проще всего это сделать с помощью команды Linux md5sum:

echo -n "password" | md5sum

Например, создадим три хэша. Затем сложим их в файл ~/hashes:

vi hashes

2ac9cb7dc02b3c0083eb70898e549b63
5f4dcc3b5aa765d61d8327deb882cf99
b59c67bf196a4758191e42f76670ceba

Теперь, когда все собрано, мы готовы к перебору. Команда перебора по словарю будет выглядеть вот так:

hashcat -m 0 -D 1 -a 0 -t 20 ~/hashes ~/rockyou.txt -o data.txt

Здесь -m 0 указывает на то, что нужно перебирать хэш md5, а -a 0 указывает на использование обычной атаки по словарю. С помощью опции -n мы задаем количество потоков. Опция -D 1 говорит программе, что нужно использовать процессор. Если вам нужна видеокарта hashcat, используйте -D 0.

Затем, мы указываем файл с хэшами, которые будем перебирать - hashes и словарь. Перебор может занять долгое время, но когда комбинация будет найдена, программа запишет ее в файл data.txt.

Что касается других алгоритмов, то для них нужно будет указать только другой номер типа хєша. Например, для SHA это будет 100. Чтобы узнать нужный номер вы можете использовать такую команду:

hashcat --help | grep SHA1

2. Расшифровка md5 полным перебором

Анализ по словарю выполняется достаточно быстро. На моем железе, такой небольшой словарь анализировался меньше минуты. Программа выдала скорость около 1300 kHash в секунду, а это очень много. Но в словаре есть далеко не все комбинации. Поэтому вы можете попытаться выполнить полный перебор нужной последовательности символов. Например:

hashcat -m 300 -a 3 -n 32 --custom-charset=?l?d ~/hashes

Здесь мы просто указали набор символов, буквы в нижнем регистре и цифры, а затем запустили перебор. Также можно указать ограничения на минимальное и максимальное количество символов:

hashcat -m 0 -a 3 --force -D 1 --potfile-disable --increment-min 5 --increment --increment-max 6 --custom-charset1=?l?d ~/hashes

Здесь мы говорим программе, что нужно начинать с размера слова 5 символов и завершить размером 6. Также можно использовать маски. Маска позволяет точно указать какой набор символов использовать, в какой последовательности и сколько. Указывать маску нужно на месте словаря. Например, маска слова из четырех цифр будет ?d?d?d?d, а маска из четырех любых цифр, букв разного регистра и специальных символов будет выглядеть ?a?a?a?a. Также можно комбинировать маску с известной частью: abc?a?a. Рассмотрим пример команды:

hashcat -m 0 -a 3 --force -D 1 --potfile-disable ~/hashes ?d?d?d?d

Маска уменьшает в разы количество вариантов, тем самым увеличивая скорость. Таким образом, расшифровка хеша md5 длиной 4 символа была выполнена меньше чем за секунду. С помощью следующей команды вы можете проверить не перебирали ли вы раньше эти хэши:

hashcat -m 0 --show ~/hashes

Выводы

В этой статье мы рассмотрели как пользоваться Hashcat, с помощью которой может быть выполнена расшифровка md5 и других хэш-функций. Как видите, расшифровать хэш, можно достаточно быстро, зная параметры исходного пароля, поэтому не используйте простые пароли в своих системах и вообще не используйте md5 если вы разработчик. Надеюсь, эта инструкция hashcat была полезной для вас.