Patrocinado por
Patrocinado por Inetum

Escapa aos hackers

images/thumbnail.jpg - Thumbnail

Um dos principais pontos fracos de um programa são os dados introduzidos pelos utilizadores.

Nunca deixes estes dados por tratar pois mais cedo ou mais tarde podem virar-se contra ti. Seja sob a forma de injecção de SQL ou de outra forma qualquer.

Há vários módulos de função e classes que ajudam nisto, como a CL_ABAP_DYN_PRG. Mas provavelmente a forma mais elegante é usar a string function escape.

Por exemplo, para garantir que um URL é seguro fazes assim:

data(unsafe_url) = 'http://abapinho.com/a b c'.
data(safe_url) = escape( val = unsafe_url format = cl_abap_format=>e_url ).

Vê os programas DEMO_ESCAPE_* para teres uma ideia das várias possibilidades. E vê a classe CL_ABAP_FORMAT para conheceres os vários algoritmos de formatação existentes.

Obrigado Marcin Wichary pela foto.

O Abapinho saúda-vos.