Курс за обучение по Как да пишем сигурен код
След големите атаки срещу национални инфраструктури специалистите по сигурността установиха, че по-голямата част от уязвимостите, причинили атаките, идват от лош и уязвим код, който разработчиците пишат.
Сега разработчиците трябва да овладеят техниките за писане Secure Code, защото сме в ситуация, в която всеки може да използва наличните инструменти, за да напише скрипт, който може ефективно да деактивира системите на голяма организация, защото разработчиците са написали лош код.
Този курс има за цел да помогне в следното:
- Помогнете на разработчиците да овладеят техниките на писане Secure Code
- Помогнете на софтуерните тестери да тестват сигурността на приложението преди публикуване в производствената среда
- Помогнете на софтуерните архитекти да разберат рисковете, свързани с приложенията
- Помогнете на ръководителите на екипи да определят основните линии за сигурност за разработчиците
- Помогнете на Web Masters да конфигурират сървърите, за да избегнат грешни конфигурации
В този курс ще видите и подробности за най-новите кибератаки, които са били използвани, и контрамерките, използвани за спиране и предотвратяване на тези атаки.
Сами ще видите как грешките на разработчиците доведоха до катастрофални атаки и като участвате в лабораториите по време на курса, ще можете да приложите на практика контролите за сигурност и да придобиете опит и знания за създаване на сигурно кодиране.
Кой трябва да присъства на този курс?
Това Secure Code обучение е идеално за работещи на позиции като, но не само:
- Уеб разработчици
- Мобилни разработчици
- Java Разработчици
- Разработчици на Dot Net
- Софтуерни архитекти
- Тестер на софтуер
- Професионалисти по сигурността
- Уеб майстори
Съдържание и теми, включени в курса
Модул 1: Въведение в защитеното кодиране
- Преглед на практиките за безопасно кодиране
- Често срещани уязвимости в софтуера
- Значение на защитения жизнен цикъл на разработка
Модул 2: Основи на уеб, Windows и мобилни приложения
- Въведение в платформите за приложения
- Последици за сигурността за всяка платформа
- Най-добри практики за сигурно развитие
Модул 3: Атаки и експлойти на приложения
- Междусайтови скриптове (XSS)
- SQL Инжекция
- Фалшифициране на заявки между сайтове (CSRF)
Модул 4: Сървърни атаки и експлойти
- Атаки с отказ на услуга (DoS).
- Препълване на буфер (BOF)
- Често срещани уязвимости на сървъра
Модул 5: Валидиране и проверка
- Техники за проверка на входа
- Дезинфекция на данни и кодиране на изхода
- Проверка на мерките за сигурност
Модул 6: Контрол на сигурността и противодействие
- Осъществяване на контрол на достъпа
- Използване на криптиране за сигурност на данните
- Защита срещу общи заплахи
Модул 7: Сигурно кодиране на мобилни приложения
- Проблеми със сигурността при мобилното развитие
- Внедряване на защитени архитектури за мобилни приложения
- Сигурно боравене с мобилни данни
Модул 8: Стандарти за сигурност и тестване
- Преглед на стандартите за сигурност (напр. OWASP)
- Тестване за уязвимости в сигурността
- Най-добри практики за тестване на сигурността
Изисквания
- Основни познания по всеки език за програмиране
- Основни познания за жизнения цикъл на разработка на софтуер
Публика
- Разработчици
- Софтуерни архитекти
- Професионалисти по сигурността
Отворените курсове за обучение изискват 5+ участника.
Курс за обучение по Как да пишем сигурен код - Резервация
Курс за обучение по Как да пишем сигурен код - Запитване
Как да пишем сигурен код - Консултантско запитване
Отзиви от участници (3)
Лабораторните упражнения
Angel - Vodacom
Курс - How to Write Secure Code
Машинен превод
виждането на сигурносните угрози в действие
kesh - Vodacom
Курс - How to Write Secure Code
Машинен превод
Модул 3 Приложения, атаки и експлоити, XSS, SQL инјекција Модул 4 Сървъри, атаки и експлоити, DoS, BOF
Tshifhiwa - Vodacom
Курс - How to Write Secure Code
Машинен превод
Предстоящи Курсове
Свързани Kурсове
Мрежова сигурност и сигурна комуникация
21 ЧасаВнедряването на защитено мрежово приложение може да бъде трудно дори за разработчици, които може да са използвали различни криптографски градивни елементи (като криптиране и цифрови подписи) предварително. За да накарат участниците да разберат ролята и използването на тези криптографски примитиви, първо се дава солидна основа на основните изисквания за защитена комуникация – сигурно потвърждение, интегритет, поверителност, отдалечена идентификация и анонимност, като същевременно се представят типичните проблеми, които може да повреди тези изисквания заедно с реалните решения.
Тъй като криптографията е критичен аспект на мрежовата сигурност, най-важните криптографски алгоритми в симетричната криптография, хеширането, асиметричната криптография и споразумението за ключове също се обсъждат. Вместо да представят задълбочена математическа основа, тези елементи се обсъждат от гледна точка на разработчика, показвайки типични примери за използване и практически съображения, свързани с използването на крипто, като инфраструктури с публичен ключ. Представени са протоколи за сигурност в много области на защитена комуникация, със задълбочено обсъждане на най-широко използваните семейства протоколи като IPSEC и SSL/TLS.
Обсъждат се типични крипто уязвимости, свързани както с определени крипто алгоритми, така и с криптографски протоколи, като BEAST, CRIME, TIME, BREACH, FREAK, Logjam, Padding oracle, Lucky Thirteen, POODLE и подобни, както и атаката за синхронизиране на RSA. Във всеки случай практическите съображения и потенциалните последствия са описани за всеки проблем, отново, без да се навлиза в дълбоки математически подробности.
И накрая, тъй като технологията XML е централна за обмен на данни от мрежови приложения, аспектите на сигурността на XML са описани. Това включва използването на XML в рамките на уеб услуги и SOAP съобщения заедно с мерки за защита като XML подпис и XML криптиране – както и слабости в тези мерки за защита и специфични за XML проблеми със сигурността, като XML инжекция, XML атаки на външен обект (XXE), XML бомби и XPath инжекция.
Участниците, посещаващи този курс, ще
- Разберете основните понятия за сигурност, ИТ сигурност и сигурно кодиране
- Разберете изискванията за сигурна комуникация
- Научете за мрежовите атаки и защити на различни OSI слоеве
- Имате практическо разбиране на криптографията
- Разберете основните протоколи за сигурност
- Разберете някои скорошни атаки срещу криптосистеми
- Получете информация за някои скорошни свързани уязвимости
- Разберете концепциите за сигурност на уеб услугите
- Получете източници и допълнителна информация за практиките за безопасно кодиране
Публика
Разработчици, професионалисти
C/C++ Безопасно Кодиране
21 ЧасаТози тридневен курс обхваща основите на защитата на C/C++ кода срещу злонамерени потребители, които могат да използват много уязвимости в кода с управление на паметта и обработка на входни данни, курсът обхваща принципите на писане на защитен код.
Напредната сигурност в Java
21 ЧасаДори опитните програмисти на Java не владеят във всички случаи различните услуги за сигурност, предлагани от Java, както и не са наясно с различните уязвимости, които са значими за уеб приложения, написани на Java.
Курсът – освен въвеждането на компонентите за сигурност на Standard Java Edition – се занимава с въпроси на сигурността на Java Enterprise Edition (JEE) и уеб услуги. Обсъждането на конкретни услуги е предварено с основите на криптографията и сигурната комуникация. Различни упражнения се занимават с декларативните и програмните техники за сигурност в JEE, докато се обсъжда както сигурността на транспортния слой, така и end-to-end сигурността на уеб услугите. Използването на всички компоненти е представено чрез няколко практически упражнения, в които участниците могат да пробват обсъжданите API-та и инструменти сами.
Курсът също така разглежда и обяснява най-честите и сериозни грешки в програмирането на езика и платформата Java и уеб-свързани уязвимости. Освен типичните грешки, допускани от програмистите на Java, въведените уязвимости на сигурността обхващат както проблеми, специфични за езика, така и проблеми, произтичащи от средата за изпълнение. Всички уязвимости и съответните атаки са демонстрирани чрез лесни за разбиране упражнения, последвани от препоръчаните насоки за кодиране и възможните техники за смекчаване.
Участниците, които посещават този курс, ще
- Разберат основните концепции на сигурността, ИТ сигурността и сигурното програмиране
- Научат уеб уязвимости, които надхвърлят OWASP Top Ten, и знаят как да ги избягват
- Разберат концепциите за сигурност на уеб услуги
- Научат да използват различни функции за сигурност на средата за разработка на Java
- Имат практически разбиране на криптографията
- Разберат решенията за сигурност на Java EE
- Научат за типичните грешки в кодирането и как да ги избегнат
- Получат информация за някои скорошни уязвимости в Java framework
- Получат практически знания за използването на инструменти за тестване на сигурността
- Получат източници и допълнителни четива за практики на сигурно кодиране
Забавачество
Разработчици
Стандартни практики за сигурност на Java: Безопасно кодиране и разработка
14 ЧасаОписание
Езикът Java и Среда за изпълнение (JRE) са проектирани да бъдат свободни от най-проблемните общи уязвимости в сигурността, срещащи се в други езици като C/C++. Въпреки това, софтуерните разработчици и архитекти трябва не само да знаят как да използват различните функции за сигурност на средата Java (положителна сигурност), но и да бъдат наясно с многото уязвимости, които все още са актуални за разработката на Java (отрицателна сигурност).
Въвеждането на услугите за сигурност е предварително придружено от кратко представяне на основите на криптографията, което осигурява обща база за разбиране на целта и функционирането на приложимите компоненти. Използването на тези компоненти се представя чрез няколко практически упражнения, в които участниците могат сами да тестват обсъжданите API-та.
Курсът също така разглежда и обяснява най-често срещаните и сериозни грешки в програмирането на езика и платформата Java, като покрива както типичните грешки, допускани от програмистите на Java, така и специфичните за езика и средата проблеми. Всички уязвимости и съответните атаки се демонстрират чрез лесни за разбиране упражнения, последвани от препоръчителните правила за кодиране и възможните техники за намаляване на риска.
Участниците в този курс ще
- Разберат основните концепции за сигурност, киберсигурност и безопасно кодиране
- Научат за уязвимости в уеб приложения извън OWASP Top Ten и как да ги избегнат
- Научат как да използват различни функции за сигурност на средата за разработка на Java
- Придобият практически познания за криптографията
- Научат за типични грешки в кодирането и как да ги избегнат
- Получат информация за някои скорошни уязвимости във фреймуърка на Java
- Получат източници и допълнителни материали за практики за безопасно кодиране
За кого е
Разработчици
.NET, C# и ASP.NET разработка за сигурност
14 ЧасаДнес са налични множество езици за програмиране, които компилират код към фреймуърците .NET и ASP.NET. Тази среда предоставя мощни средства за развитие на сигурността, но разработчиците трябва да знаят как да прилагат техниките на програмното кодиране и архитектурното ниво, за да внедрят желаната функционалност за сигурност и да избегнат уязвимости или ограничат тяхното използване.
Целта на този курс е да научи разработчиците чрез множество практически упражнения как да предотвратят изпълнението на привилегировани действия от непроверен код, да защитят ресурсите чрез силна аутентикация и оторизация, да предоставят далечни процедури, да управляват сесии, да внедрят различни реализации за определена функционалност и много друго.
Въвеждането на различни уязвимости започва с представянето на някои типични проблеми при програмирането, допуснати при използване на .NET, докато обсъждането на уязвимостите на ASP.NET се занимава и с различни настройки на средата и техните ефекти. Накрая, темата за уязвимости, специфични за ASP.NET, не само се занимава с някои общи предизвикателства пред сигурността на уеб приложенията, но и със специални проблеми и методи на атака, като атакуване на ViewState или атаки на край на низа.
Участниците, посещаващи този курс, ще
- Разберат основните концепции на сигурността, киберсигурността и сигурното кодиране
- Научат уязвимостите на уеб приложенията извън OWASP Top Ten и как да ги избегнат
- Научат как да използват различни функции за сигурност на средата за разработка .NET
- Получат практически познания за използване на инструменти за тестване на сигурността
- Научат за типичните грешки при кодиране и как да ги избегнат
- Получат информация за някои от най-скорошните уязвимости в .NET и ASP.NET
- Получат източници и допълнителни материали за практиките на сигурно кодиране
Аудитория
Разработчици
Безопасно програмиране в PHP
21 ЧасаКурсът предоставя основни умения за разработчиците на PHP, необходими да направят приложенията им устойчиви към современите атаки през интернет. Уязвимостите на уеб-приложенията се обсъжда чрез примери базирани на PHP, отиващи извън топ десетката OWASP и решаващи различни видове инджекции, скриптови инджекции, атаки против управлението на сесии в PHP, несигурни директни обекти, проблеми при качване на файлове и други. Уязвимостите свързани с PHP са групирани по стандартните типове уязвимости: липса или неправилна валидация на входните данни, грешки при обработката на грешки и изключения, неправилно използване на сигурността и проблеми свързани с времето и състоянията. За последното разглеждаме атаки като обикновената обикалка open_basedir, отрицаване на обслужване през магически флоат или атака чрез колизия в хаш таблиците. Във всички случаи участниците ще се запознаят с най-важните техники и функции, които да използват за намаление на посочените рискове.
Специално внимание е обърнато върху клиентската сигурност, решаваща проблемите свързани с JavaScript, Ajax и HTML5. Разглеждат се бройни сигурносни добавки към PHP като hash, mcrypt и OpenSSL за криптоанализ, или Ctype, ext/filter и HTML Purifier за валидация на входните данни. Лучшите практики за закъсняване са предложени във връзка с конфигурирането на PHP (задаване на php.ini), Apache и сървъра по-общо. Накрая, дава се преглед на различни сигурносни тествани инструменти и техники, които разработчиците и тестиращите могат да използват, включително сигурностни сканери, пробивни тествания и пакети с експлоити, шпионажни програми, прокси сървъри, инструменти за фазинг и статични анализатори на източния код.
И въведение към уязвимостите, и практиките по конфигуриране са подкрепени от бройни практически упражнения, демонстриращи последствията на успешните атаки, показващи как да се прилагат методите за намаление и въвеждащи използването на различни добавки и инструменти.
Участниците, присъстващи на този курс, ще
- Разберат основните концепции за сигурност, ИТ сигурност и безопасно програмиране
- Учават за уязвимостите на уеб-приложенията извън топ десетката OWASP и как да ги избягват
- Учават за клиентските уязвимости и практики за безопасно програмиране
- Имамат практическо разбиране на криптоанализа
- Научават как да използват различните сигурносни функции на PHP
- Учават за типичните грешки при програмирането и как да ги избягват
- Са информирани за последните уязвимости в рамката на PHP
- Получават практическа знания за използване на сигурносни тествани инструменти
- Получават ресурси и допълнителни материали за безопасно програмиране
Целева група
Разработчици
Microsoft SDL Core
14 ЧасаОбединеното обучение по SDL ядро дава поглед във безопасно проектиране, разработка и тестуване чрез Microsoft Secure Development Lifecycle (SDL). Освен това предоставя общ преглед на основните елементи на SDL, следван от методики за проектиране, които могат да се приложат за откриването и коригирането на дефекти в ранните стадии на процеса на разработка.
Разглеждайки фазата на разработка, курсът предоставя преглед на типичните уязвими места в програмирането за управляем и нативен код. Представени са методи за нападения по отношение на обсъжданите уязвимости, като техниките за намаляване на тези уязвимости са обяснени чрез редица практически упражнения, които предоставят на участниците живо удоволствие от хакерството. Въведение в различни методики за сигурно тестуване е следвано от демонстрация на ефективността на различни тестови инструменти. Участниците могат да разберат работата на тези инструменти чрез редица практически упражнения, като прилагат инструментите към вече обсъдения уязвим код.
Участниците, присъстващи на този курс, ще
Разберат основните концепции за сигурността, ИТ-сигурността и безопасното програмиране
Познаят основните стъпки на Microsoft Secure Development Lifecycle (SDL)
Натрупат безопасни практики за проектиране и разработка
Разберат принципи за сигурна реализация
Разберат методологията на сигурно тестуване
- Получаване на източници и допълнително четиво за безопасни практики в програмирането
Целева група
Разработчици, мениджъри
Защита на уеб приложения
21 ЧасаЗащитата на приложения, достъпни чрез интернет, изисква добре подготвен специалист по сигурност, който да е постоянно информиран за текущите методи и тенденции на атаки. Съществува множество технологии и среди, които позволяват удобно разработване на уеб приложения. Необходимо е да се знае не само за проблемите с сигурността, свързани с тези платформи, но и за всички общоприети уязвимости, които са приложими независимо от използваните инструменти за разработка.
Курсът дава преглед на приложимите решения за сигурност в уеб приложения, със специален акцент върху разбирането на най-важните криптографски решения, които трябва да се прилагат. Различните уязвимости на уеб приложения се представят както на серверната страна (според OWASP Top Ten), така и на клиентската страна, демонстрирани чрез релевантни атаки, последвани от препоръчваните техники за кодовиране и методологии за намаляване на риска, за да се избегнат свързаните проблеми. Темата за сигурно кодовиране завършва с обсъждане на някои типични грешки, свързани с сигурността, в областта на валидацията на входните данни, неправилното използване на функции за сигурност и качеството на кода.
Тестването играе много важна роля за осигуряване на сигурността и устойчивостта на уеб приложения. Различни подходи – от високо ниво аудит през тестове за проникване до етично хакване – могат да се прилагат за намиране на уязвимости от различни типове. Все пак, ако искате да отидете по-нататък от лесно намиращите се ниско висящи плодове, тестването за сигурност трябва да е добре планирано и правилно изпълнено. Запомнете: специалистите по сигурност трябва идеално да откриват всички грешки, за да защитят системата, докато за противниците е достатъчно да намерят една експлоатируема уязвимост, за да проникнат в нея.
Практически упражнения ще помогнат за разбирането на уязвимостите на уеб приложения, грешките в кодовите и най-важно, методите за намаляване на риска, заедно с ръчни опити с различни инструменти за тестване, от скенери за сигурност, през снуфири, прокси сървъри, инструменти за фъзинг до статични анализатори на изходен код, този курс дава необходимите практически умения, които могат да бъдат приложени на следващия ден на работното място.
Участниците в този курс ще
- Разбират основните концепции за сигурност, ИТ сигурност и сигурно кодовиране
- Научат уеб уязвимости, освен OWASP Top Ten, и как да ги избегнат
- Научат уязвимости от страна на клиента и практики за сигурно кодовиране
- Имат практическо разбиране за криптография
- Разберат подходи и методологии за тестване за сигурност
- Придобиват практични знания за използване на техники и инструменти за тестване за сигурност
- Бъдат информирани за последните уязвимости в различни платформи, рамки и библиотеки
- Придобиват източници и по-нататъшни четения за практики за сигурно кодовиране
Целова публика
Разработчици, Тестиращи
DevOps Security: Създаване на стратегия за сигурност в DevOps
7 ЧасаВ този воден от инструктори курс на живо в България участниците ще се научат как да формулират правилната стратегия за сигурност, за да се справят с DevOps предизвикателството за сигурност.
DevSecOps Firefight: Breach, Fix & Fortify
7 ЧасаТози световнокласен, актуален и практически семинар погълва участниците в критичните реалности на сигурността на съвременните CI/CD канали. Създаден за специалисти по сигурност, инженери DevOps и програмисти, които желаят да овладят напредък в защитата от нарушения на пайплайните, обучението се съчетава с живи симулации на атаки, лидерски за индустрията инструменти и практични техники за защита.
EC-Council Сертифициран DevSecOps Инженер (ECDE)
28 ЧасаEC-Council Сертифициран инженер по DevSecOps (ECDE) е курс с практически упражнения, направен да обучва професионалисти на уменията да внедряват сигурност в DevOps цикъла, което позволява сигурно разработване на софтуер от планирането до развертането.
Този курс с инструктор, провеждан на живо (онлайн или на място), е предназначен за професионалисти с интермедиерни умения в софтуер и DevOps, които искат да интегрират практики за сигурност в CI/CD pipeлините, осигурявайки сигурно и съответстващо на нормите доставяне на код.
До края на това обучение участниците ще могат да:
- Разберат принципите и практиките на DevSecOps.
- Осигурят всяка фаза от CI/CD pipeлината, използвайки автоматизирани инструменти.
- Имплементират сигурни практики за кодиране и сканиране за уязвимости.
- Подготвят се за сертификацията ECDE с практически лаборатории и преглед.
Формат на курса
- Интерактивни лекции и дискусии.
- Практически упражнения с инструменти за DevSecOps в симулирани pipeлини.
- Упражнения с ръководство, фокусирани върху сигурно разработване и развертане.
Опции за персонализиране на курса
- За заявяване на персонализиран обучавателен курс за този курс, съобразен с работите процеси или веригата от инструменти на вашия екип, моля свържете се с нас, за да уредим.
Уебна сигурност тестване - Сигурност и тестване на уеб приложения с OWASP
21 ЧасаТова водено от инструктор обучение на живо (онлайн или на място) е насочено към разработчици, инженери и архитекти, които искат да осигурят своите уеб приложения и услуги.
До края на това обучение участниците ще могат да интегрират, тестват, защитават и анализират своите уеб приложения и услуги, като използват OWASP рамката и инструментите за тестване
OWASP Генеративна ИИ Безопасност
14 ЧасаНа база на най-новите препоръки от проекта OWASP GenAI Security, участниците ще научат как да разпознават, оценяват и премахват угрози, специфични за ИИ, чрез практически упражнения и реални сценарии.
Курс за сигурен разработчик на Java (вкл. OWASP)
21 ЧасаТози курс обхваща концепциите и принципите за защитено кодиране с Java чрез методологията на тестване на Open Web Application Security Project (OWASP). Open Web Application Security Project е онлайн общност, която създава свободно достъпни статии, методологии, документация, инструменти и технологии в областта на сигурността на уеб приложенията.
Secure Developer .NET (вкл. OWASP)
21 ЧасаТози курс обхваща концепциите и принципите за защитено кодиране с ASP.net чрез Open Web Application Security Project (OWASP) методология за тестване, OWASP е онлайн общност, която създава свободно достъпни статии, методологии, документация, инструменти и технологии в областта на сигурността на уеб приложенията.
Този курс изследва функциите за сигурност на Dot Net Framework и как да защитите уеб приложенията.