Anda di halaman 1dari 27

Segurana no Desenvolvimento, Implantao e Operao de Sistemas de Informao Baseado na ISO 15408

Palestrante !utores $o%al Data !le"andre Sieira, #ISSP !le"andre #orreia Pinto, #ISSP !le"andre Sieira, #ISSP &'S 0()(00* + Praia ,ermel-a, ./ 0*01(0(00*

1Segurana da Informao 2 uma espe%ialidade #ip-er3

Agenda Introduo !presentao da #ommon #riteria


4s%opo 5reas 6o !7ordadas #onte"to de Segurana .e8uerimentos de Segurana

4studo de %aso Segurana em P9P #on%lus:es

Introduo
Organizaes utilizam-se de sistemas desenvolvidos internamente ou por terceiros para uma variedade de objetivos. Estes sistemas podem ser crticos, ou estar intimamente ligados a sistemas crticos, operao da organizao. Estes sistemas muitas vezes esto e postos e ternamente para parceiros e clientes, como extranets ou servios !nternet. "o # usual a incorporao de re$uisitos de segurana na %uncionalidade e no processo de desenvolvimento, por um dos seguintes motivos& - 'alta de cultura de (egurana da !n%ormao. - 'alta de preparo da e$uipe de desenvolvimento. - Escassez de recursos $ue leva a uma priorizao dos re$uisitos %uncionais.

Introduo
) $uesto do elo mais %raco&

(egurana de rede no basta se as aplicaes tiverem vulnerabilidades.

Apresentao da Common Criteria


Escopo *e%ine crit#rios para a avaliao de segurana de produtos e sistemas de +!. ,ermite a comparao de avaliaes independentes de di%erentes produtos ou sistemas -E)./-E).01. )u ilia an2lise de risco e tomada de deciso de consumidores. 3uia o desenvolvimento de produtos e sistemas seguros. 4 aplic2vel a medidas de segurana em 5ard6are, %irm6are ou so%t6are. )brange, entre outros& - (istemas operacionais - 7edes - (istemas distribudos - )plicaes

Apresentao da Common Criteria


Escopo )nalisa a preservao de con%idencialidade, integridade e disponibilidade da in%ormao. 'oco em ameaas originadas por seres 5umanos, maliciosas ou no. )nalisa o design e processo de desenvolvimento, al#m de in%ormaes coletadas no processo de avaliao.

Apresentao da Common Criteria


reas No Abordadas 8edidas administrativas de segurana do ambiente e usu2rios do produto ou soluo. 9ontrole de emisses eletromagn#ticas. 8etodologia de avaliao de produtos e sistemas -abordado no 9E8 : 9ommon Evaluation 8et5odolog;1. 9rit#rios de avaliao de algoritmos criptogr2%icos.

Apresentao da Common Criteria


Contexto de Segurana O objetivo da segurana # proteger os ativos -assets1 das ameaas -threats1, $ue so usos indevidos em potencial dos mesmos. Os proprietrios -owners1 dos ativos associam s ameaas presentes em seu ambiente os riscos -risks1 correspondentes. Contramedidas -countermeasures1 so instaladas para anular vulnerabilidades -vulnerabilities1 e mitigar riscos.

Apresentao da Common Criteria

Apresentao da Common Criteria


Contexto de Segurana Os proprietrios de ativos devem ter confiana -confidence1 na e%ic2cia das contramedidas, mas podem no possuir a 5abilidade de avali2-la. )ssim, os proprietrios utilizam-se de uma avaliao -evaluation1, $ue gera uma declarao do nvel de validao -assurance1 de sua capacidade de mitigar riscos.

Apresentao da Common Criteria

Apresentao da Common Criteria


Requerimentos de Segurana (o agrupados em %amlias, $ue por sua vez so agrupadas em classes. (e dividem em dois tipos& - 7e$uerimentos 'uncionais de (egurana - 7e$uerimentos de <alidao de (egurana

Apresentao da Common Criteria


Requerimentos de Segurana 9lasses de 7e$uerimentos 'uncionais de (egurana& - )uditoria de segurana -')=1 : validao da %uncionalidade de gerao de tril5a de auditoria de eventos relevantes do ponto de vista de segurana> - 9omunicao -'9O1 : validao dos controles aplicados comunicao entre o sistema e outras entidades atrav#s de no rep?dio de recebimento e envio> - (uporte criptogr2%ico -'9(1 : validao dos controles aplicados ao suporte criptogr2%ico, como gerenciamento de c5aves e escol5a dos algoritmos> - ,roteo a dados do usu2rio -'*,1 : validao dos controles de proteo aos dados do usu2rio na importao, e portao, armazenamento ou comunicao interna entre componentes do sistema>

Apresentao da Common Criteria


Requerimentos de Segurana 9lasses de 7e$uerimentos 'uncionais de (egurana& - !denti%icao e autenticao -'!)1 : validao dos controles aplicados correta identi%icao dos usu2rios do sistema, bem como sua associao a per%is de permisses> - 3erenciamento de segurana -'8+1 : validao dos controles aplicados ao gerenciamento de dados de segurana como per%is de permisses, atributos de segurana e outros dados internos> - ,rivacidade -',71 : validao dos controles utilizados para impedir $ue usu2rios do sistema comprometam a segurana dos dados uns dos outros> - ,roteo do sistema -',+1 : validao dos controles utilizados para garantir a integridade dos dados e processamento do sistema diretamente associados sua segurana>

Apresentao da Common Criteria


Requerimentos de Segurana 9lasses de 7e$uerimentos 'uncionais de (egurana& - =tilizao de recursos -'7=1 : validao dos controles utilizados para garantir o uso devido de recursos como mem@ria, armazenamento e banda, com a devida compartimentalizao e priorizao de sua alocao> - )cesso ao sistema -'+)1 : validao dos controles aplicados ao estabelecimento, gerenciamento e encerramento de sesses entre o usu2rio e o sistema> - +rusted ,at5s -'+,1 : validao dos controles aplicados criao de canais de comunicao con%i2veis -no-rep?dio1 entre usu2rios e o sistema, e entre este e outras entidades com as $uais e ista um relacionamento de con%iana.

Apresentao da Common Criteria


Requerimentos de Segurana 9lasses de 7e$uerimentos de <alidao de (egurana& - 3erenciamento de 9on%igurao -)981 : manuteno da integridade do sistema do controle e dos processos de modi%icao do mesmo> - Entrega e Operao -)*O1 : manuteno da segurana do sistema durante entrega, instalao, inicializao e operao> - *esenvolvimento -)*<1 : provises de segurana na especi%icao, design e implementao do sistema. - *ocumentao -)3*1 : cobre a %acilidade de compreenso, abrangAncia e completude da documentao operacional do sistema para usu2rios e administradores>

Apresentao da Common Criteria


Requerimentos de Segurana 9lasses de 7e$uerimentos de <alidao de (egurana& - (uporte ao 9iclo de <ida -).91 : $ue inclui a segurana do ambiente, processos e %erramentas utilizadas para o desenvolvimento e manuteno do sistema> - +estes -)+E1 : analisa os testes sistem2ticos utilizados para validar a aderAncia do sistema aos seus re$uisitos %uncionais de segurana> - )n2lise de <ulnerabilidades -)<)1 : $ue cobre a identi%icao de vulnerabilidades e plor2veis no sistema, como covert channels> - 8anuteno da <alidao -)8)1 : $ue cobre a validao continuada de segurana ap@s a avaliao inicial, $uando da alterao do sistema.

Estudo de Caso Segurana em PHP


,onto importante sobre sistemas 6eb&

Sistemas ;e7 so e8uivalentes a daemons, e devem ser desenvolvidos %om %rit<rios estritos de Segurana da Informao)

Estudo de Caso Segurana em PHP


,B, # uma linguagem simples de usar e rica em %uncionalidades> ,B, # insegura por default& + =un:es de e"e%uo de s%ripts e a7ertura de ar8uivos a%eitam >.$s remotas? + Par@metros de origem e"terna se transformam em variAveis glo7ais automati%amente? + B possCvel a%essar todos os ar8uivos permitidos ao usuArio do pro%esso do servidor ;e7? + >ploads de ar8uivo so permitidos em todas as pAginas? + 4"p:e informa:es sensCveis 8uando o%orre um erro de e"e%uo? + Identifi%adores de sesso so armaDenados no 0tmp, 8ue < legCvel a todos os usuArios?

Estudo de Caso Segurana em PHP


Autenticao em Sistema eb !"pica #$nsegura%

query = select id from usuarios where nome = $nome and senha = $senha; $stmt = oci_parse( $conn, $query ); oci_e ec( $stmt ); if (oci_fetchinto( $stmt, $result, !"#_$%%!" ) == &$'%() ) (***) ++ ,olta usu-rio para tela de lo.in com mensa.em de erro / else ) ++ .ra,a identidade do usu-rio em coo0ie setcoo0ie( user_id, $result123 ); (***) ++ redireciona usu-rio para tela de entrada /

Estudo de Caso Segurana em PHP


*esabilitando vari2veis globais autom2ticas para dados e ternos com register_globals&
++ importa para ,ari-,eis .lo4ais apenas os dados esperados $nome = $_5!%61nome3; $senha = $_5!%61.et3; query = select id from usuarios where nome = $nome and senha = $senha; $stmt = oci_parse( $conn, $query ); oci_e ec( $stmt ); if (oci_fetchinto( $stmt, $result, !"#_$%%!" ) == &$'%() ) ++ ,olta usu-rio para tela de lo.in com mensa.em de erro (***) / else ) ++ .ra,a identidade do usu-rio em coo0ie setcoo0ie( user_id, $result123); (***) ++ redireciona usu-rio para tela de entrada /

Estudo de Caso Segurana em PHP


9riando tril5a de auditoria -')=1&
$nome = $_5!%61nome3; $senha = $_5!%61.et3; query = select id from usuarios where nome = $nome and senha = $senha; $stmt = oci_parse( $conn, $query ); oci_e ec( $stmt ); $quando = date(78+m+d 9:i:s7); if (oci_fetchinto( $stmt, $result, !"#_$%%!" ) == &$'%() ) ++ re.istra falha de autentica;<o syslo.('!=_>$?@#@=, $quando $cesso ne.ado: $nome $_%(?A(?1?(B!6(_$CC?3 ($_%(?A(? 19665_D%(?_$=(@6E3)7); ++ ,olta usu-rio para tela de lo.in com mensa.em de erro (***) / else ) ++ re.istra lo.in de usu-rio syslo.('!=_@!6#"(, $quando $cesso o0: $nome $_%(?A(?1E?(B!6(_$CC?E3 ($_%(?A(? 19665_D%(?_$=(@63)7); ++ .ra,a identidade do usu-rio em coo0ie setcoo0ie( user_id, $result123); (***) ++ redireciona usu-rio para tela de entrada /

Estudo de Caso Segurana em PHP


,rotegendo mecanismo de autenticao contra (C. !njection&
$nome = $_5!%61nome3; $senha = $_5!%61.et3; $query = select id from usuarios where nome = :nome and senha = :senha; $stmt = oci_parse( $conn, $query ); oci4ind4yname( $stmt, :nome, $nome ); oci4ind4yname( $stmt, :senha, $senha ); oci_e ec( $stmt ); $quando = date(78+m+d 9:i:s7); if (oci_fetchinto( $stmt, $result, !"#_$%%!" ) == &$'%() ) syslo.('!=_>$?@#@=, $quando $cesso ne.ado: $nome $_%(?A(?1?(B!6(_$CC?3 ($_%(?A(? 19665_D%(?_$=(@6E3)7); ++ ,olta usu-rio para tela de lo.in com mensa.em de erro (***) / else ) syslo.('!=_@!6#"(, $quando $cesso o0: $nome $_%(?A(?1E?(B!6(_$CC?E3 ($_%(?A(? 19665_D%(?_$=(@63)7); ++ .ra,a identidade do usu-rio em coo0ie setcoo0ie( user_id, $result123); (***) ++ redireciona usu-rio para tela de entrada /

Estudo de Caso Segurana em PHP


,rotegendo a associao da sesso ao usu2rio autenticado&
(***) / else ) syslo.('!=_@!6#"(, $quando $cesso o0: $nome $_%(?A(?1E?(B!6(_$CC?E3 ($_%(?A(? 19665_D%(?_$=(@63)7); ++ come;a no,a sess<o, destruindo e,entuais sessFes prGHe istentes session_destroy(); session_unset(); session_start(); ++ armaIena identidade do usu-rio em ,ari-,el de sess<o, Junto a dados para ,alidar ++ ori.em de futuras requisi;Fes e e,itar session hijacking $_%(%%#!@1user_id3 = $result123; $_%(%%#!@1remote_addr3 = $_%(?A(?1?(B!6(_$CC?3; $_%(%%#!@1user_a.ent3 = $_%(?A(?19665_D%(?_$=(@63; (***) ++ redireciona usu-rio para tela de entrada /

Estudo de Caso Segurana em PHP


,rotegendo a associao da sesso ao usu2rio autenticado&

K )s p2ginas de autenticao, bem como todas as restritas a usu2rios autenticados, devem ser acessveis apenas atrav#s de ((.> K Os ar$uivos $ue armazenam as vari2veis de sesso no servidor devem ser movidos para diret@rio com permisses restritas usando a opo session.save_path> K ) opo session.use_only_cookies deve ser usada para $ue o identi%icador de sesso seja armazenado apenas em cookies; K ) opo session.cookie_secure deve ser usada de %orma $ue o cookie com o identi%icador de sesso tra%egue apenas em cone es seguras> K +odas as p2ginas restritas a usu2rios autenticados devem acessar as vari2veis de sesso e garantir $ue o endereo de origem e a identi%icao do browser e istem e so as mesmas da re$uisio atual, de %orma a detectar usu2rios no autenticados e session hijacking.

Concluses
(egurana de rede no basta se as aplicaes tiverem vulnerabilidades.

) !(O /DEFG : 9ommon 9riteria # a re%erAncia internacional para desenvolvedores, administradores e auditores de segurana de sistemas de in%ormao>

(istemas 6eb so e$uivalentes a daemons, e devem ser desenvolvidos com crit#rios estritos de (egurana da !n%ormao.

Contato
Cipher
.ua Ear8uFs de So ,i%ente, ((5 + 4d) &Fnesis &Avea + ((451+041 .io de /aneiro + ./

Alexandre Sieira, CISSP 'el (1 (5(G+(H(G 4+mail ale"andre)sieiraI%ip-erse%)%om)7r >.$ ;;;)%ip-erse%)%om)7r

Anda mungkin juga menyukai