Инструкция и советы по участию в спринте
18.06 - 2.07
Открытый онлайн-спринт для специалистов по кибербезопасности
#2
Подготовка к спринту
1
Посмотри воркшопы по написанию правил и по VSCode XP, также при необходимости ознакомься с синтаксисом языка XP.
2
Зарегистрируй аккаунт на GitHub, если его нет.
3
Создай собственную копию (fork) репозитория с правилами.
4
5
Скачай свой fork через Git. Например, с использованием SSH-ключа:

git clone git@github.com:<YOUR_NICK>/open-xp-rules.git
6
Настрой среду разработки одним из способов:
Установи VSCode и скачай расширение eXtraction and Processing из маркетплейса
Разверни окружение vscode-xp-workspace с помощью инструкции.
Скачай утилиты KTB и задай путь к ним в настройках расширения. Если что-то непонятно - задавай вопросы в чате.
Участие в спринте
1
Перейди в репозиторий с правилами, выбери задачу с меткой «OSW#2 Task». Если это твоя первая задача на спринте, то напиши в комментарии к ней «Беру эту задачу». Мы добавим тебя в группу и у тебя появится возможность назначать задачи на себя, менять их статус и проставлять галочки внутри задачи. Если тебя уже добавили в группу на GitHub, то просто назначь задачу на себя и следуй инструкции внутри задания.
2
Переведи задачу из статуса Backlog в In Progress.
3
Задача содержит необходимые для написания корреляции события. Изучи атаку и связанные с ней события. Пойми, как устроена атака и какие события создаются в результате ее реализации.
4
Открой свой fork репозитория в VSCode.
5
Сразу отведи ветку под разработку правила: git checkout -b feature/iss-<ISSUE_ID>
Например, git checkout -b feature/ iss-36
6
Продумай логику детектирования и напиши правило, используя плагин VSCode XP. Рекомендации по разработке ищи в следующем разделе.
Сразу отведи ветку под
разработку правила:
git checkout -b feature
/<EVTX_NAME>
Например,
git checkout -b feature/
CA_Peti Potam_etw_rpc_
efsr5_6
7
Когда правило готово и протестировано, зафиксируй изменения в локальном репозитории и отправь их на сервер:

git add *

git commit -m «<ТУТ ЕМКОЕ ОПИСАНИЕ ИЗМЕНЕНИЙ>»

git push --set-upstream origin feature/iss-<ISSUE_ID>
8
Открой исходный репозиторий в браузере. Платформа предложит создать пул-реквест из твоего fork в ветку develop. Создай пул-реквест с описанием содержимого и текстом Resolves #ISSUE_ID, где ISSUE_ID — идентификатор выбранной задачи. Этот текст автоматически свяжет пул-реквест с задачей (подробнее Using keywords in issues and pull requests).
9
Переведи задачу из статуса In Progress в Done.
10
Следи за комментариями в созданном пул-реквесте. В него можно будет вносить изменения, если это потребуется. Для этого зафиксируй изменения в локальной ветке и снова отправь все коммиты в GitHub (см. шаг 7).
Советы по процессу разработки правил
1
Делай коммиты после каждого значительного изменения. Например, после добавления
теста или исправления ошибки.
2
Фиксируй через коммиты только работоспособные состояния правила.
3
Следуй подходу TDD.
4
Усложняй логику правила постепенно.
5
С каждым отдельным случаем (определенным набором и видом событий) должен
быть ассоциирован отдельный тест.
6
Отправляй изменения на сервер только если все твои тесты выполняются.
Сразу отведи ветку под
разработку правила:
git checkout -b feature
/<EVTX_NAME>
Например,
git checkout -b feature/
CA_Peti Potam_etw_rpc_
efsr5_6
Security Experts Community
Кто мы
Открытое сообщество специалистов по ИБ, которые объединяют усилия для решения задач кибербезопасности. Мы поощряем инициативу, делимся инструментами для написания корреляций и предоставляем пространство для свободного обмена знаниями.
Присоединяйся к нам
Если ты обладаешь экспертизой в сфере Defensive Security, хочешь открыто делиться ею и делать этот мир безопаснее вместе с командой энтузиастов, присоединяйся к нам на GitHub и в Telegram.
Регистрация
Я даю согласие на обработку моих персональных данных в соответствии с условиями политики конфиденциальности.
Сообщение об успешной отправке!
Спасибо! Данные успешно отправлены
FAQ
Присоединяйтесь к нашим ресурсам
При поддержке