Что означают слова «фабрика навыков» и «взлом»?

Значение слов и выражений

Примеры хакеров Серые шляпы

В целом считается, что Junior-пентестер должен обладать следующими знаниями:

  • администрирование Windows, Linux;
  • знание одного или нескольких языков программирования: Python, php, Perl, Ruby, JavaScript, Bash;
  • знание HTML;
  • основные сетевые протоколы (TCP/IP, ICMP) / сетевые службы (Proxy, VPN, Samba, AD);
  • базы данных SQL (DDL, DML и т. д.), MySQL, SQL Server, PostgreSQL, Oracle.

Не обязательно знать все идеально, но нужно иметь хотя бы базовые знания по вышеуказанным ЯП, протоколам и БД.

Также нужно научиться использовать программы для пентестинга вроде BurpSuite, SqlMap, Nmap, IP Tools и Acunetix.

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

Шаг второй. Знакомство с дизассемблером

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

Впрочем, шпионы, мониторы, распаковщики — второстепенные утилиты заднего плана, а основное оружие взломщика — отладчик и дизассемблер.

Итак, дизассемблер применим для исследования откомпилированных программ и частично пригоден для анализа псевдокомпилированного кода. Раз так, он должен подойти для вскрытия парольной защиты passCompare1. exe. Весь вопрос в том, какой дизассемблер выбрать.

Не все дизассемблеры одинаковы. Есть среди них и «интеллектуалы», автоматически распознающие многие конструкции, как то: прологи и эпилоги функций, локальные переменные, перекрестные ссылки, а есть и «простаки», чьи способности ограничены одним лишь переводом машинных команд в ассемблерные инструкции.

Воспользуемся уже знакомой нам утилитой DUMPBIN, настоящим «швейцарским ножиком» со множеством полезных функций, среди которых притаился и дизассемблер. Дизассемблируем секцию кода (как мы помним, носящую имя. text), перенаправив вывод в файл, так как на экран он, очевидно, не поместится:

Запомним найденный пароль: myGOODpassword. В отличие от Visual C++ 6. 0, которой пользовался Крис, Visual C++ 2017 не обращается к инициализированным переменным по шестнадцатеричному смещению, а подставляет значение прямо в секцию кода. Таким образом, попробуем найти выявленный ранее пароль в дизассемблированном листинге тривиальным контекстным поиском с помощью любого текстового редактора.

Смотрите, центральная часть этого листинга отвечает за сравнение значений регистров EAX и ECX. В последний, как мы видим, в первой строке листинга записывается эталонный пароль, следовательно, в первом — введенный пользователем. Затем происходит сравнение и выполняются переходы почти в одну и ту же точку: 0x4010A2 и 0x40109E. Заглянем, что там:

Здесь центральную роль играет инструкция test eax,eax, расположенная по смещению 0x4010A7. В случае если eax равен 0, следующая за ней команда JE совершает прыжок на 0x40110E. В противном же случае на вершину стека выталкивается строка Wrong password:

а следом — вызов функции с говорящим названием:

call _printf

Значит, ненулевое значение EAX свидетельствует о ложном пароле, а ноль — об истинном.

О’кей, тогда переходим к анализу валидной ветви программы, что делается после прыжка на 0x40110E. А тут притаилась инструкция, которая помещает строку Password OK на вершину стека, после чего вызывается процедура _printf, которая, очевидно, выводит строку на экран:

Оперативные соображения следующие: если заменить команду JE на JNE, то программа отвергнет истинный пароль как неправильный, а любой неправильный пароль воспримет как истинный. А если заменить TEST EAX,EAX на XOR EAX,EAX, то после исполнения этой команды регистр EAX будет всегда равен нулю, какой бы пароль ни вводился.

Дело за малым — найти эти самые байтики в исполняемом файле и слегка подправить их.

История хакерства

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

Термин «взлом» происходит из Клуба технических моделей железных дорог Массачусетского технологического института. Члены клуба «взламывали» собственные высокотехнологичные поезда с целью изменить их функции. Позже они перешли от игрушечных поездов к компьютерам, экспериментируя с IBM 704 и пытаясь расширить набор задач, которые могли выполнять компьютеры. Ранние хакеры изучали, расширяли и тестировали ограничения существующих программ. Их усилия часто окупались, поскольку они создавали программы, работающие лучше, чем существующие.

Взлом компьютеров продолжался и в 1970-х годах, но параллельно начал развиваться взлом телефонов. Телефонные мошенники, также называемые фрикерами, пытались использовать рабочие характеристики телефонной коммутационной сети, которая недавно стала полностью электронной. Джон Дрейпер прославился, когда обнаружил, что игрушечный свисток, найденный в хлопьях Cap’n Crunch, издает звук, в точности совпадающий со звуком, указывающим длинным линиям, что линия готова и доступна для маршрутизации нового вызова (2600 герц). Это позволило телефонным мошенникам обманывать сеть и совершать бесплатные междугородние звонки. Сообщалось также, что Стив Джобс и Стив Возняк были телефонными мошенниками до того, как основали одну из самых успешных компьютерных компаний в мире.

В 1980-х годах использование персональных компьютеров больше не ограничивалось предприятиями и университетами – возросла их доступность для населения, что привело к значительному росту количества случаев взлома компьютеров. Изменился и характер взлома. Раньше причиной взлома часто являлись попытки улучшить работу компьютера, однако новое поколение хакеров в первую очередь было мотивировано личной выгодой, и их действия включали создание пиратских программ, вирусов и взлом систем с целью кражи информации. Правоохранительные органы осознали новую реальность, и в США был принят Федеральный закон о борьбе с компьютерным мошенничеством и злоупотреблениями.

В результате раскрытия нескольких громких киберпреступлений и арестов, в 1990-х годах хакерство приобрело негативную репутацию. Среди известных хакеров этого десятилетия были Кевин Митник, Кевин Поулсен, Роберт Моррис и Владимир Левин; они были осуждены за различные преступления: от кражи защищенного авторским правом программного обеспечения и обмана радиостанций с целью выигрыша дорогих автомобилей до запуска первого компьютерного червя и совершения первого цифрового ограбления банка.

Правительственные учреждения и крупные корпорации все чаще подвергались взлому систем кибербезопасности. Самые известные из них – Microsoft, eBay, Yahoo! и Amazon. Все они стали жертвами атак типа распределенный отказ в обслуживании. Известно, что системы Министерства обороны США и Международной космической станции были взломаны 15-летним подростком.

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

Как участвовать правильно

Большинство таких программ размещены на сайтах HackerOne и BugCrowd.

К примеру, вот программы Bug Bounty от Google API, Nginx, PayPal, GitHub, Valve. Средний размер премии за каждый найденный баг в этих программах — 1000 долларов. Есть огромное количество компаний поменьше, которые предлагают  50-100 долларов за ошибку.

Даже Пентагон запускал Bug Bounty! Это же просто мечта для хакера — взломать систему защиты Пентагона, да еще и получить деньги за это от правительства США.

Но даже опубликованная Bug Bounty не означает, что можно ломать и искать дырки где попало. В описании программы владельцы прописывают, какие именно уязвимости будут рассматриваться.

К примеру, Uber дает очень подробное объяснение, что входит в их программу Bug Bounty, а что — нет.

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

Впрочем, с чувством юмора у них все нормально. Потому что среди неоплаченных действий есть и следующее:

Entering the Uber offices, throwing crisps everywhere, unleashing a bunch of hungry raccoons, and hijacking an abandoned terminal on an unlocked workstation while staff are distracted

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

Чем подробнее описана Bug bounty, тем проще пентестеру понять, что можно «пробовать на зуб», а чего делать не стоит.

Российский рынок пентестинга тоже активно развивается. На нем уже есть ряд крупных игроков, которые работают с большими корпорациями. К примеру, Digital Security, НТЦ «Вулкан», Group-IB, BI. ZONE, «Лаборатория Касперского». Но конкуренция на рынке еще довольно невысокая, так что можно вполне комфортно работать и индивидуально.

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

Поэтому для пентестера есть несколько возможностей:

  • Присоединиться к одной из таких крупных компаний. Главный плюс — стабильная зарплата и отсутствие даже гипотетических проблем с законом. Но при этом заработать много денег, как стремятся многие пентестеры, не получится.
  • Открыть ИП или работать по договору. Главный плюс — специалист сам устанавливает цену. Но при этом придется тесно сотрудничать с юристами в рамках трудовых отношений, чтобы подстраховаться с юридической стороны. Да и конкуренты не дремлют.
  • Работать исключительно на Bug Bounty. Главный плюс — свобода графика и возможность заработать много. Но всегда есть риск, что специалисту просто не заплатят за обнаружение бага. Впрочем, никто не запрещает работать и по договору, и в программах Bug Bounty.

Участвовать в Bug Bounty просто. Ведь по сути сообщение о начале программы — это открытая оферта, которую может принять любой пользователь. Вы можете начинать работу сразу же — дополнительного согласия на ваше участие не требуется.

Чтобы подстраховаться от нечестных компаний, рекомендуем работать через сайты HackerOne и BugCrowd. Просто зарегистрируйтесь и подавайте заявки с обнаруженными багами через них.

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

Так что следование прописанным пунктам Bug bounty — это просто обязательно. Иначе можно получить не премию, а обвинение.

Значение слова «хакер»

Делаем Карту слов лучше вместе

Привет! Меня зовут Лампобот, я компьютерная программа, которая помогает делать
Карту слов. Я отлично
умею считать, но пока плохо понимаю, как устроен ваш мир. Помоги мне разобраться!

Спасибо! Я стал чуточку лучше понимать мир эмоций.

Вопрос: усмотренный — это что-то нейтральное, положительное или отрицательное?

Ассоциации к слову «хакер»

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

Каким бывает «хакер»

  • Ха́кер (англ. hacker, от to hack — обтёсывать, делать зарубку) — многозначный термин в области вычислительной техники и программирования.
  • (все понятия)

Отправить комментарий

  • взломщик
  • пират
  • программист
  • системщик
  • виртуалка
  • компьютер
  • пользователь
  • взлом
  • Интернет
  • человек
  • опытный хакер
  • хакеры сновидений
  • группа хакеров
  • хакер кивнул
  • стать хакером
  • гениальный
  • крутой
  • юный
  • опытный
  • знакомый

Как стать хакером?

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

Какой ущерб может причинить взлом?

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

  • Украсть ваши деньги и открыть кредитные карты и банковские счета на ваше имя.
  • Испортить ваш кредитный рейтинг.
  • Запросить персональные идентификационные номера (ПИН-коды) для новой учетной записи или дополнительные кредитные карты.
  • Совершать покупки от вашего имени.
  • Добавить свое имя или псевдоним в качестве авторизованного пользователя, чтобы упростить использование ваших кредитных данных.
  • Получить кредит наличными.
  • Использовать ваш номер социального страхования.
  • Продать вашу информацию другим лицам, которые могут использовать ее в злонамеренных целях.
  • Удалить или повредить важные файлы на вашем компьютере.
  • Получить конфиденциальную личную информацию и распространять ее или угрожать ее публичным раскрытием.
Редакция Wondermedia
Оцените автора
Интернет-журнал Wonder Media
Добавить комментарий