в программировании — мнемонический акроним, введённый Майклом Фэзерсом (Michael Feathers) для первых пяти принципов, названных Робертом Мартином в начале 2000-х, которые означали 5 основных принципов объектно-ориентированных проектирования и программирования.
Sprint Backlog — это список задач, которые команда разработки выбрала из Product Backlog для выполнения в текущем спринте (обычно 1–4 недели). Это подмножество Product Backlog, но с гораздо большей детализацией.
Простыми словами: Sprint Backlog — это то, что команда планирует сделать прямо сейчас, в рамках текущей итерации (спринта).
Читайте также про Бэклог
SQL (Structured Query Language или язык структурированных запросов) -декларативный язык программирования, применяемый для создания, модификации и управления данными в реляционной базе данных, управляемой соответствующей системой управления базами данных.
В общем случае SQL (без ряда современных расширений) считается языком программирования неполным по Тьюрингу. Большинство производителей баз данных создали свои расширения для SQL, такие как Transact-SQL у Microsoft или PL/SQL у Oracle.
С помощью SQL можно:
- создавать базы данных и таблицы
- читать добавлять, изменять, удалять данные
SQL injection или внедрение SQL кода - один из распространённых и опасных способов взлома сайтов и программ, работающих с базами данных, основанный на внедрении в запрос произвольного SQL-кода.
За счёт внедрения своего SQL кода в код сайта хакер может получить возможность изменять, удалять или читать произвольные данные.
Базы данных могут позволять работать с файловой системой и если права настроены небезопасно, то хакер сможет создавать или изменять файлы. Таким образом с помощью SQL инъекции можно произвести даже атаку deface.
Внедрения SQL чаще всего связана с некорректной обработки входных данных, используемых в SQL-запросах. Нельзя напрямую добавлять к SQL запросам данные, которые передал в программу пользователь:
"SELECT * FORM Table WHERE Name = " + name;
Вместо конкатенации строк везде нужно использовать параметры:
"SELECT * FORM Table WHERE Name = @name";
Таким образом можно очень легко защититься от SQL Injection – везде использовать только параметризированные запросы.
Это сокращение может расшифровываться как Single Responsibility Principle или Принцип единой ответственности. Более подробно читаем здесь: Single Responsibility Principle.
Typosquatting — это форма атаки типа социальной инженерии и заключается в подмене названий легитимных сайтов, доменов, имён файлов и прочих адресов. Эта атака использовалась и для заражения через npm пакеты, когда создавались пакеты с похожими на популярные библиотеки именами.
Очень часэто эта атака использовалась с доменными именами. Хакеры регистрировали доменные имена, отличающиемя от легальных на одну букву в надежде на то, что кто-то опечатается и попадёт на сайт злоумышленника. Регистрируя несколько версий домена с разными опечатками можно увеличить вероятность атаки.
Когда пользователи сами совершают опечатку, больше шансов, что они введут свои имя и пароль, так что подобная атака часто использовалась для воровства паролей. Она также может использоваться для получен трафика или банального показа рекламы. Например, зарегистрировав домен gogle.com можно атаковать пользователей Google, которые упустили одну букву О.
XSS превращается в Cross-Site Scripting. Есть мнение, что для термина используют сокращение XSS, чтобы не было путаницы с каскадными таблицами стилей, использующими сокращение CSS.
Это тип атаки на веб-системы, заключающийся во внедрении в выдаваемую веб-системой страницу вредоносного кода, который будет выполнен в браузере пользователя и взаимодействии этого кода с веб-сервером злоумышленника.
Я эту атаку называю Frontend инъекцией, но это лично моё название и оно никак не является официальным.
Смысл атаки в том, что инъекция происходит в код фронтенд технологий – HTML, JS или даже CSS.
С помощью внедрения в JavaScript хакеры могут воровать сессии или обходить какие-то ограничения на сервере, чтобы реализовывать другие атаки на сервер.
You Aren't Gonna Need It - тебе это не понадобится. Я встречал несколько объяснений этого принципа – не создавать лишние функции, не проектировать лишнего.
Когда программисты начинают писать новый код, то могут на всякий случай создать какой-то функционал. Не делайте то, что не нужно сейчас, потому что не факт, что это понадобится в будущем. В будущем могут быть совершенно другие требования.
Если делать что-то заранее, то это трата время на разработку, отладку и излишнее усложнение проекта.
Не делайте, что не нужно сейчас, вам это не понадобится в будущем.
Бэклог (Backlog) — это список задач, требований или элементов работы, которые необходимо выполнить в будущем. Обычно используется в управлении проектами, особенно в гибких методологиях.
В зависимости от контекста, backlog может быть:
Product Backlog (бэклог продукта) — список всех функций, улучшений, исправлений и требований к продукту. Его формирует и приоритизирует Product Owner.
Sprint Backlog (бэклог спринта) — набор задач из Product Backlog, выбранных для выполнения в течение одного спринта командой разработки.
Release Backlog (бэклог релиза) — задачи, запланированные для выпуска определённой версии продукта.
Защищает, обнаруживает и реагирует на атаки. Более подробно читает про Blue Team