|
|
||
Если вы собираетесь пройти свой первый CTF или уже были на нескольких, то вы скорее всего ищете способы улучшить свою игру и попасть в призы. На CTF, как правило, довольно жесткая конкуренция, где сотни человек сражаются за несколько призов, так что вы скорее потеряете, чем выиграете. В отличие от хакатонов, CTF является испытанием ваших технических знаний и выносливости. Тем не менее, есть несколько общих стратегий, которые я приобрел за годы участия в этих соревнованиях (и случайных побед), которые я хотел бы, чтобы кто-то передал мне в начале. Эти 15 советов представляют простые способы, с помощью которых вы можете попробовать перевести свою игру CTF на новый уровень.
Прежде чем перейти к 15 стратегиям для победы в CTF важно отметить, что соревнования CTF гораздо больше, чем просто победа. Лучший CTF это тот, где вы узнали новые навыки, завели новых друзей, нашли стажировки или следующую работу, и получили массу удовольствия, используя хаки совершенно легально. Никогда не позволяйте победе встать на путь у получения удовольствия.
Если вы твердо настроены на выигрыш CTF, важно рассмотреть какой тип CTF вам подходит. Скорее всего, у вас есть определенные навыки и интересы, которые дают вам преимущество. Возможно, вы хороши в беспроводной связи и обработке сигналов, и должны выбрать соревнования с беспроводными технологиями вроде DEFCON. Возможно, вы гуру администрирования linux, способный защитить сервер Ubuntu от самого огня ада (если это так, то соревнования blue team для вас). Если вы гуру в криптографии, то соревнование Jeopardy с уклоном в криптографию для вас.
CTF сильно различаются и некоторые может быть очень трудно выиграть, поскольку нет типичных барьеров входа. Обязательно ставьте перед собой разумные цели, основываясь на своем уровне мастерства и прошлом опыте, и не позволяйте себе разочаровываться, если более опытные команды в конечном итоге победят вас.
Как и хакатоны, CTF почти всегда хорошая идея. CTF как правило гораздо лучше подходят для командного соревнования, чем хакатоны, потому что они состоят из множества изолированных мишеней и головоломок, над которыми могут работать независимо разные члены команды. Даже гениальному хакеру будет трудно победить группу из 4 обычных хакеров, работающих вместе. Кроме того, это отличная идея добавлять новых людей в свою команду, если у вас есть свободные места - поскольку лишний флаг лучше чем ничего.
Есть тонны способов как можно готовиться к CTF. Многие прошедшие контесты публикуют свои флаги и решения. Люди часто публикуют в своих блогах особенно интересные проблемы и головоломки, которые они решили. Некоторые большие сайты, которые являются источником постоянной практики wargames, включают в себя игры вроде Over the Wire, Smash the Stask и picoCTF. Потратьте время, чтобы потренироваться в поиске флагов.
Практика в одиночку отлично подходит для укрепления ваших навыков, но координация и сотрудничество также является важной частью CTF. Потратьте некоторое время с вашей командой, чтобы сесть и поработать над практикой. Это поможет вам лучше понять какие есть таланты у каждого участника команды и какие проблемы ваша команда сможет решить в реальном соревновании. Это также хорошая возможность, чтобы помочь друг другу исправить пробелы в фундаментальных навыках и привыкнуть к тому, как действуют ваши товарищи.
CTF любят быть в тренде. Не отставайте от того, что происходит на других CTF, конференциях по безопасности и в более широком сообществе кибер-безопасности, отсюда можно получить представление о том как подходить ко взломам и какие уязвимости попробовать использовать. Если вы видите интересное доказательство концепции взлома или эксплойта в интернете, которые вы можете воспроизвести в своей домашней лаборатории, потратьте время на работу и получите новые навыки. Вы никогда точно не знаете какие инструменты вам могут пригодиться.
Часто CTF предоставит вам большое количество головоломок или целей на выбор. Одним из самых важных навыков является выбор того с чего начать, чтобы заработать наиболее количество очков. Как правило, флаги с низким значением очков будет проще всего получить и возможно стоит взглянуть на некоторые из них и просто получить очки как можно быстрее. Однако, легкие хаки могут скрываться в более дорогих задачах и возможность оказаться первой командой, взявшей такое задание, может оказаться критичной. Когда моя команда идет в CTF, мы обычно стараемся быстро просмотреть все головоломки и получить приблизительное представление о том, что происходит. Вы можете разделить головоломки среди членов команды на основе их мастерства, прежде чем приступать к работе взлома. Немного организованности в начале контеста окупится десятикратно в последние минуты.
Хакеры могут быть упрямыми. Если вы застряли на 3 часа в головоломке и вы чувствуете, что вы "так близко", очень легко можно потратить еще 3 часа, но так и не найти решение. Иногда важно отступить от головоломки и посмотреть на нее свежим взглядом позднее или перейти к более легким целям. Нет жесткого правила для того, чтобы решить когда сдаться, но способность отступать и двигаться к лучшим перспективам является критической в CTF. В реальной жизни медлительность может выиграть гонку. В CTF вам нужно успеть набрать больше очков и никого волнует сколько титанических усилий вы потратили на неудачу, если был более легкий путь к победе, который вы проигнорировали.
Когда вы отказываетесь от флага, то можете оставить проблемы и вернуться к ней позднее. Лучший способ сделать это - делать заметки обо всем, что вы делаете. Следите за всем, что вы пробовали, что работало и не работало, чтобы исключить лишнюю работу. В конце CTF вы часто столкнетесь с жесткими проблемами, которые слишком трудно было решить в начале - имея подобные записи можно получить преимущество.
Прежде чем вы доберетесь до CTF, вы должны знать какие инструменты вам нужно использовать. Когда вы практикуетесь, старайтесь держать все инструменты на одном компьютере. Мне нравится настраивать виртуальные машины с помощью vagrant и puppet. Таким образом, на каждом CTF я могу полность сбросить VM и загрузить его со всеми необходимыми инструментами. Я также могу поделиться скриптами виртуальной машины с моими товарищами по команде, чтобы они также имели доступ к инструментам, и могу отслеживать изменения в системе контроля версий. Найдите подход, который работает для вас и убедитесь, что вы тратите минимальное время на загрузку и настройку инструментов, которые вы использовали в прошлом.
|
Новые книги авторов СИ, вышедшие из печати:
О.Болдырева "Крадуш. Чужие души"
М.Николаев "Вторжение на Землю"