Fundamentals for Secure Software Development

By André Henrique

Elevator Pitch

Se o desenvolvedor tiver em mente a preocupação com a disponibilização de contramedidas de segurança desde a concepção do software, é possível mitigar alguns problemas clássicos de segurança de maneira eficiente. Medidas preventivas, em geral, tendem a ser mais baratas do que medidas corretivas.

Description

Manter aplicações seguras tem grande ligação com a capacitação da equipe que está desenvolvendo as soluções. Quando verificamos a grande maioria das vulnerabilidades encontradas nos softwares, principalmente em aplicações web, percebemos que quase todas são fruto do desconhecimento do desenvolvedor em conceitos básicos de desenvolvimento seguro.

No processo de desenvolvimento de software os aspectos de segurança são muitas vezes negligenciados em prol de uma maior rapidez na entrega das funcionalidades, módulos e sistemas requisitados. Essa abordagem onde os custos e a rapidez na entrega estão na vanguarda das preocupações das empresas e a segurança é vista apenas como um atributo opcional dos sistemas, deixa as aplicações desenvolvidas vulneráveis e expõe as organizações a riscos que muitas vezes podem fugir do controle e até serem desconhecidos por parte dos respectivos gestores.

Nesse contexto, essa palestra vem apresentar aos participantes alguns conceitos básicos da segurança da informação, dicas de boas práticas para uma codificação mais segura e uma visão quanto aos principais erros cometidos por programadores. Assim, se o programador tiver em mente a preocupação com a disponibilização de contramedidas de segurança desde a concepção do sistema computacional, é possível mitigar alguns problemas clássicos de segurança de maneira eficiente. Medidas preventivas, em geral, tendem a ser mais baratas do que medidas corretivas.

Notes

É interessante que o participante tenha noções sobre o processo de Desenvolvimento de Softwares. Além disso, entendemos que é importante que o participante tenha conhecimento de desenvolvimento de aplicações pois será tratado sobre estes conceitos e exposto algumas das melhores práticas para o desenvolvimento de software mais seguro.

Como equipamentos necessários, é ideal um projetor de vídeo (preferencialmente 4:3), com entrada VGA ou HDMI e com todas as cores funcionando para não impactar na qualidade visual da apresentação que utiliza o apoio de figuras e cores variadas. Um microfone para o palestrante (preferencialmente sem-fio) que possibilite sua locomoção pelo espaço. Se possível, também disponibilize água ou café. Me sinto mais confortável em utilizar meu próprio laptop, porém caso não seja possível, o computador no local deverá possuir o LibreOffice Impress instalado com versão atualizada. Eu costumo utilizar um controle remoto pessoal para passagem de slides, mas caso o local onde fique o computador seja distante de onde o palestrante ficar, é ideal disponibilizar algum que funcione bem nessa distância.