В стандартном модуле random есть две очень похожие функции
random.randint()
random.randrange()
Обе возвращают случайное значение из указанного диапазона
>>> random.randint(10, 20)
12
>>> random.randrange(10, 20)
17
В чем же отличие?
Дело в том что у randrange() есть третий параметр step.
randint() действительно возвращает случайное число из указанного диапазона.
randrange() на первый взгляд делает тоже самое если передать также два параметра.
Но есть указать еще и step то наш диапазон усложняется, то есть в него попадёт не полный ряд значений.
Например, я хочу получить случайное значение из диапазона но только чётное число. Тогда достаточно сделать так:
>>> randrange(10, 20, 2)
16
Таким образом получается что randint это частный случай randrange без указания параметра step.
Еще одно важное отличие в том, что randint() включает в диапазон второе значение а randrange() нет. То есть выражение randrange(10, 20) никогда не вернёт 20, а randint(10, 20) вернёт.
#tricks#basic
Настольная книга.
Если вы давно мечтали увидеть все инструменты в одном месте, а не сохранять кучу разрозненных ссылок "на потом", то мы нашли буквально настольную книгу для исследователей безопасности.
Наполнение:
- Исследование сетей;
- Управление уязвимостями;
- Мониторинг безопасности;
- и многое другое, классное, интересное.
К каждому инструменту идёт краткое описание и минимально полезный набор команд.
Мы себе уже сохранили, рекомендуем поступить также.
#AppSec#DFIR
🧠Кибер ПТУ | 👨🏫Менторство ИБ
📂Другие каналы
• Нашел на GitHub преднамеренно уязвимое банковское веб-приложение, которое содержит множество дыр в безопасности. Такие проекты помогают получить бесценныйопыт ИБ специалистам, пентестерам, DevSecOps и программистам, в части поиска уязвимостей и безопасной разработки. На текущий момент веб-приложение содержит более 40 уязвимостей (на скриншоте выше), которые вам придется найти. Если не справляетесь или недостаточно опыта, то у автора есть подробный гайд по прохождению:
➡️GitHub;
➡️Руководство [VPN].
• Кстати, там еще есть уязвимое мобильное приложение. На сколько оно дырявое не указано, да и подробного гайда нет, но если вам интересно, то забирайте по этой ссылке.
#AppSec#ИБ#Web#Пентест
У Checkmarx вышел отчёт "The Future of APPLICATION SECURITY 2024" содержащий чудесный ТОП3 отмазок "почему уязвимый код ушёл в прод?" (от AppSec менеджеров, CISO и разработчиков).
AppSec менеджеры
1. Чтобы уложиться в дедлайны, связанные с бизнесом, выкаткой фич или безопасностью.
2. Уязвимость должна была быть исправлена в более позднем релизе.
3. Уязвимость не была критической.
CISO
1. Надеялись, что уязвимость не будет эксплуатабельной.🤞
2. Чтобы уложиться в дедлайны, связанные с бизнесом, выкаткой фич или безопасностью.
3. Уязвимость не была эксплуатабельной.
Разработчики
1. Уязвимость должна была быть исправлена в более позднем релизе.
2. Уязвимость не была критической.
3. Чтобы уложиться в дедлайны, связанные с бизнесом, выкаткой фич или безопасностью.
Варианты AppSec менеджеров и Разработчиков различаются только порядком. А вот CISO больше про реальную эксплуатабельность (чтобы это не привело к большому скандалу) и надежду на лучшее. 😏😅
@avleonovrus#Checkmarx#AppSec#fun