Как стать хакером: что нужно знать и уметь
Как стать хакером: что нужно знать и уметь

Как стать хакером: что нужно знать и уметь

Хакер – это тот, кто находит уязвимости в системе, программе или в сети. Иногда это может быть очень выгодно. Например, недавно анонимный хакер нашел уязвимость на криптовалютной платформе Poly Network и смог перевести на свой счет $611 млн. После чего вернул все деньги, получил предложение о работе в компании, которую взломал, и награду $500 тысяч.

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

Редакция MC.today разобралась, как стать хакером и какие они бывают.


Содержание:

  • Какие бывают хакеры
  • Что должен знать и уметь хакер
  • Зачем уметь работать с UNIX-системами
  • Зачем учить HTML
  • Какие языки программирования нужны хакеру
  • Зачем понимать, как работают сети
  • Зачем изучать криптографию
  • Где учиться
  • Как взломать систему: 9 общих правил

Какие бывают хакеры

Есть несколько видов хакеров:

  1. «Белые», или этичные хакеры. Это те, кто ищет уязвимости и взламывает системы ради пользы. После такого взлома приложение или сеть можно улучшить и убрать уязвимость, чтобы данные не попали в руки злоумышленников. Бывает так, что «черный» хакер взламывает систему какой-то компании, а потом получает работу в отделе информационной безопасности этой компании и становится «белым». Иногда компании сами просят хакеров «ломать» их системы – это называется bug bounty. Так, например, делали в «Дія».
  2. «Черные» хакеры. Они взламывают системы, чтобы получить деньги, украсть конфиденциальные данные или распространить программы-вирусы. Это опасно и незаконно.
  3. «Серые» хакеры. Они находятся где-то между «белыми» и «черными». Например, они могут найти уязвимость в какой-то системе и предложить компании исправить это за какую-то оплату. 
  4. «Зеленые» хакеры. Так называют неопытных специалистов, которые только учатся искать уязвимости и что-то взламывать.
  5. «Красные» хакеры. Они похожи на этичных, потому что их цель – остановить атаки «черных» хакеров. Но, в отличие от этичных, «красные» хакеры могут пользоваться незаконными способами взлома.
  6. «Синие» хакеры. Эти хакеры взламывают что-то из-за мести. Они сливают данные, чтобы испортить репутацию человека или компании.

Что должен знать и уметь хакер

Несанкционированные взломы систем и программ караются Уголовным кодексом Украины, поэтому мы будем говорить только о «белых» хакерах, то есть тех, кто помогает находить и устранять уязвимости сетей и систем.

Чтобы качественно «ломать» системы, хакеру нужно знать, как они работают, как созданы и на каком языке программирования написаны. Чаще всего хакеру нужно:

  • уметь работать с UNIX-системами;
  • знать язык разметки HTML;
  • знать несколько языков программирования;
  • понимать, как устроены сети;
  • изучить криптографию.

Зачем уметь работать с UNIX-системами

UNIX – это семейство операционных систем (ОС). Самые популярные из них: Linux, Ubuntu и macOS. Главное отличие таких систем в том, что они многопользовательские и многозадачные. Это значит, что в такой системе несколько пользователей могут одновременно запустить много задач, которые будут использовать ресурсы одного компьютера. Другое важное отличие UNIX-систем в том, что они могут работать практически на любом микропроцессоре.

С UNIX-системой часто нужно работать через терминал. Это специальная программа, в которой вы можете прописывать команды для системы. Можно сказать, что терминал связывает пользователя и саму операционную систему.

UNIX-системы очень часто используют для серверов, на которых запускают сайты и приложения. Поэтому, чтобы что-то взламывать, нужно изучить эти системы и научиться работать с терминалом.

Зачем учить HTML

HTML – HyperText Markup Language – это язык гипертекстовой разметки. Его используют, чтобы просматривать документы в браузере. Когда вы открываете какой-то сайт, ваш браузер получает HTML-файл с сервера и превращает код в интерфейс, который вы видите. То есть HTML пригодится вам для работы с любыми веб-сервисами.

Как стать хакером: что нужно знать и уметь - Фото 2

Так выглядит страница в формате HTML

Какие языки программирования нужны хакеру

На самом деле, чем больше языков программирования вы будете знать, тем лучше. Хакеру нужно понимать, как работает система или приложение и какие ошибки мог допустить программист при их написании.

Для начала вы можете выучить такие языки:

  1. C и C++. Это объектно ориентированные языки программирования. С них обычно начинают изучать само объектно ориентированное программирование (ООП). На C++ часто пишут серверы, поэтому хакеру будет полезно знать такой язык. Если вы освоите C и С++, изучать остальные объектно ориентированные языки будет намного проще.
  2. Python. Это высокоуровневый язык программирования. На нем часто пишут бэкенд-часть проектов. Python используют для работы с искусственным интеллектом и большими данными. Еще на нем написаны два больших фреймворка (программные платформы. – Прим. ред.), которые используют многие веб-сайты и приложения: Django и Flask.
  3. Java. Еще один объектно ориентированный язык. На нем обычно пишут крупные и масштабные проекты, такие как Amazon, eBay или LinkedIn.
  4. JavaScript. Этот язык используют для многих веб-сайтов, поэтому он пригодится, чтобы искать уязвимости и проверять безопасность разных интернет-страниц.
  5. SQL. Этот язык программирования используют, чтобы работать с базами данных (БД). А в БД сайта или проекта хранятся пароли и личные данные, которые и нужно взламывать хакеру.

Зачем понимать, как работают сети

Чтобы сайт, приложение или какая-то система работала в интернете, их нужно «поместить» в сеть. А для этого нужно знать, что такое протоколы TCP/IP, HTTP/HTTPS, FTP и другие.

Хакеру нужно уметь отличать одну сеть от другой, понимать особенности каждой, определять, в какой сети он находится, и знать, какие у нее могут быть уязвимости. Хороший хакер – это не только программист, но и немного DevOps-инженер.

Зачем изучать криптографию

Криптография – это наука о шифровании, целостности и безопасности данных. Задача хакера – нарушать целостность и безопасность данных, а значит, без знаний по криптографии не обойтись.

Сейчас криптографию используют, чтобы шифровать пароли, банковские данные и другую информацию пользователей. Для этого пользуются разными инструментами. Например, алгоритмами хеширования SHA-256, SHA-512 и другими.

Где учиться

Назар Тимошик, исполнительный директор в UnderDefence Cyber Security, рекомендует тем, кто планирует стать специалистом по информационной безопасности, то есть «белым» хакером:

  • искать курсы по информационной безопасности и читать тематические статьи;
  • проходить стажировку в компаниях, которые дают такую возможность;
  • использовать HackTheBox – сервис, на котором можно практиковаться взламывать разные системы.

Курсы по информационной безопасности:

Книги для хакеров:

  • «Linux глазами хакера», Михаил Фленов;
  • «Информационная безопасность», Евгения Яковенко, Игорь Журавель и др.;
  • «Криптография и взлом шифров на Python», Эл Свейгарт;
  • «Codebreakings. A Practical Guide», Элоника Дунин, Клаус Шмех;
  • «Практическая криптография», Брюс Шнайер.

Как взломать систему: 9 общих правил 

Порядок действий будет зависеть от того, что именно вы взламываете, какой уровень защиты у системы, сколько у вас времени и знаний. Если очень обобщить, взлом будет выглядеть вот так:

  1. Защитите себя. Если вы просто хотите попрактиковаться, есть шанс получить отпор от того, кого вы будете взламывать. Вы можете попросить разрешение на взлом или практиковаться на специальных виртуальных машинах.
  2. Соберите информацию. Чтобы что-то взломать, нужно знать, что именно вы взламываете: в какой сети работаете, с каким протоколами и языками программирования, какие данные хотите получить.
  3. Протестируйте вашу цель. Проверьте, можете ли вы получить доступ к системе удаленно, если, конечно, работаете удаленно.
  4. Просканируйте порты. Это нужно, чтобы понять, с какой операционной системой вы сейчас будете работать и какие порты открыты для доступа.
  5. Найдите открытый порт или другой путь доступа к системе. Попробуйте разные порты. FTP (21) и HTTP (80) часто хорошо защищены, поэтому рекомендуют начинать работу с TCP и UDP.
  6. Взломайте пароль. На этом этапе вы взламываете пароль или другой способ идентификации пользователя.
  7. Получите права администратора. Доступ для обычного пользователя ограничен. Чтобы сделать с системой что-то серьезное, вам нужны права администратора или root-пользователя.
  8. Создайте «бэкдор». «Бэкдор», или «задняя дверь», – это способ вернуться к системе, которую вы взломали. Он нужен, чтобы не взламывать все заново, а сразу получить нужные доступы.
  9. Постарайтесь замести следы. Нужно сделать так, чтобы администратор системы вас не заметил. «Белому» хакеру это пригодится, если он еще хочет вернуться к системе и что-то «доломать» до того, как повышать безопасность.
Источник материала
loader