Informações sobre o curso

11,841 visualizações recentes
Certificados compartilháveis
Tenha o certificado após a conclusão
100% on-line
Comece imediatamente e aprenda em seu próprio cronograma.
Prazos flexíveis
Redefinir os prazos de acordo com sua programação.
Nível intermediário
Aprox. 22 horas para completar
Inglês
Legendas: Inglês

O que você vai aprender

  • Apply “what to watch out for” and “where to look” to evaluate fragility of C++ library code.

  • Given a fragile C++ library, code a robust version.

  • Identify problems w/ privilege, trusted environments, input validation, files & sub-processes, resource mngmt, asynchronicity, & randomness in C/C++.

  • Remediate examples of problems that apply to C/C++ interactions with the programming environment.

Habilidades que você terá

Identifying vulernabilitiesC/C++ Programming
Certificados compartilháveis
Tenha o certificado após a conclusão
100% on-line
Comece imediatamente e aprenda em seu próprio cronograma.
Prazos flexíveis
Redefinir os prazos de acordo com sua programação.
Nível intermediário
Aprox. 22 horas para completar
Inglês
Legendas: Inglês

Instrutores

oferecido por

Logotipo de Universidade da Califórnia, Davis

Universidade da Califórnia, Davis

Programa - O que você aprenderá com este curso

Semana
1

Semana 1

6 horas para concluir

Users, Privileges, and Environment Variables

6 horas para concluir
17 vídeos (Total 107 mín.), 4 leituras, 2 testes
17 videos
Module 1 Introduction2min
Users and Privileges Overview7min
Identifying Users and Changing Privileges7min
Spawning Subprocesses8min
Identifying Users Incorrectly1min
Establishing Users and Setting UIDs8min
Establishing Groups and GIDs3min
Establishing Privileges for Users and Groups11min
How Root Privileges Work3min
Lesson 1 Summary1min
Environment Variables Overview2min
Programming Explicitly4min
Addressing Various Attacks16min
Dynamic Loading and Associated Attacks16min
Programming Implicitly3min
The Moral of the Story5min
4 leituras
A Note From UC Davis10min
Who Are You? - What is Going On?10min
Resetting the PATH - What is Going On?10min
Multiple PATH Environment Variables - What's Going On?5min
2 exercícios práticos
Module 1 Practice Quiz14min
Module 1 Quiz30min
Semana
2

Semana 2

6 horas para concluir

Validation and Verification, Buffer and Numeric Overflows, and Input Injections

6 horas para concluir
17 vídeos (Total 162 mín.), 2 leituras, 2 testes
17 videos
Validation and Verification Overview8min
Metacharacters11min
The Heartbleed Bug and Other Exploits21min
Inputs15min
Fixes6min
Lesson 3 Summary1min
Buffer Overflows Overview2min
Buffer Overflow Examples18min
Selective Buffer Overflow and Utilizing Canaries17min
Numeric Overflows Overview7min
Numeric Overflow Examples8min
Lesson 4 Summary2min
Input Injections Overview1min
Cross-Site Scripting Attacks18min
SQL Injections10min
Lesson 5 Summary5min
2 leituras
Path Names - What's Going On?10min
Numeric and Buffer Overflows - What's Going On?10min
2 exercícios práticos
Module 2 Practice Quiz15min
Module 2 Quiz30min
Semana
3

Semana 3

3 horas para concluir

Files, Subprocesses, and Race Conditions

3 horas para concluir
13 vídeos (Total 80 mín.), 1 leitura, 2 testes
13 videos
Files and Subprocesses Overview52s
Creating a Child Process5min
Subprocess Environment10min
Files and Subprocesses Design Tips5min
Lesson 6 Summary2min
Race Conditions Overview8min
A Classic Race Condition Example9min
Time of Check to Time of Use12min
Programming Condition5min
Environmental Condition7min
Race Conditions6min
Linux Locks and FreeBSD System Calls4min
1 leituras
The Environmental Condition - What's Going On?10min
2 exercícios práticos
Module 3 Practice Quiz15min
Module 3 Quiz30min
Semana
4

Semana 4

7 horas para concluir

Randomness, Cryptography, and Other Topics

7 horas para concluir
19 vídeos (Total 97 mín.), 4 leituras, 2 testes
19 videos
Randomness and Cryptography Overview2min
Pseudorandom vs. Random6min
Producing Random Numbers4min
Sowing Seeds12min
Cryptography Basics3min
Using Cryptography for Secrecy and Integrity8min
Some Cryptography Examples9min
Lesson 8 Summary1min
Handling Sensitive Information and Errors and Formatting Strings Overview1min
All About Passwords7min
Adding a Pinch of Salt4min
Managing Sensitive Data4min
Practice a Secure Function8min
Error Handling Part 14min
Error Handling Part 26min
Format Strings5min
Lesson 9 Summary2min
Course Summary52s
4 leituras
(Pseudo) Random Numbers - What's Going On?10min
Hashing and Cracking Passwords - What's Going On?10min
A Safe system() Function - What's Going On?10min
Converting Strings to Integers - What's Going On?10min
2 exercícios práticos
Module 4 Practice Quiz15min
Module 4 Quiz30min

Avaliações

Principais avaliações do IDENTIFYING SECURITY VULNERABILITIES IN C/C++PROGRAMMING

Visualizar todas as avaliações

Sobre Programa de cursos integrados Secure Coding Practices

This Specialization is intended for software developers of any level who are not yet fluent with secure coding and programming techniques.Through four courses, you will cover the principles of secure coding, concepts of threat modeling and cryptography and exploit vulnerabilities in both C/C++ and Java languages, which will prepare you to think like a hacker and protect your organizations information. The courses provide ample practice activities including exploiting WebGoat, an OWASP project designed to teach penetration testing....
Secure Coding Practices

Perguntas Frequentes – FAQ

  • O acesso a palestras e tarefas depende do tipo de inscrição. Se você participar de um curso como ouvinte, você poderá ver quase todo o conteúdo do curso gratuitamente. Para acessar tarefas valendo nota e obter um Certificado, você precisará adquirir a experiência do Certificado, durante ou após a participação como ouvinte. Se você não vir a opção de participar como ouvinte:

    • o curso pode não oferecer essa opção. Você pode experimentar um teste gratuito ou solicitar o auxílio financeiro.
    • Em vez disso, o curso pode oferecer 'Curso completo, sem Certificado'. Com esta opção, é possível ver todo o conteúdo do curso, enviar as avaliações necessárias e obter uma nota final. Isso também significa que você não poderá comprar uma experiência de Certificado.
  • Quando você se inscreve no curso, tem acesso a todos os cursos na Especialização e pode obter um certificado quando concluir o trabalho. Seu Certificado eletrônico será adicionado à sua página de Participações e você poderá imprimi-lo ou adicioná-lo ao seu perfil no LinkedIn. Se quiser apenas ler e assistir o conteúdo do curso, você poderá frequentá-lo como ouvinte sem custo.

  • Se você se inscrever, terá 7 dias para testar sem custo e, durante este período, pode cancelar sem multa. Depois disso, não reembolsamos, mas você pode cancelar sua inscrição a qualquer momento. Veja nossa política para o reembolso total.

  • Sim, a Coursera oferece auxílio financeiro ao aluno que não possa pagar a taxa. Faça a solicitação clicando no link Auxílio Financeiro, abaixo do botão "Inscreva-se" à esquerda. Preencha uma solicitação e será notificado caso seja aprovado. Você terá que completar esta etapa para cada curso na Especialização, incluindo o Trabalho de Conclusão de Curso. Saiba mais .

Mais dúvidas? Visite o Central de Ajuda ao Aprendiz.