OK, então vamos aumentar o nível de segurança para a alta segurança, que é razoavelmente segura, então às vezes ela
pode ser contornada às vezes, pode ser contornada.
E nesta palestra na verdade vou apenas destacar algo para você.
Então, vamos tentar usar o mesmo exploit que estávamos usando antes.
Então, se nós copiarmos isso e vamos ligar o nosso interceptador e só vou colocar um nome de usuário normal
e senha para
isso agora e, em seguida, vamos interceptá-lo aqui e modificá-lo como fizemos no anterior vídeo.
OK, agora vamos para isso.
E como você pode ver, está nos dizendo que há um nome de usuário e uma senha ruins, então, obviamente, isso é mais seguro.
E, na verdade, neste caso em particular nesta página, isso não é mais injetável com esse nível
de segurança.
Ele não implementa a melhor prática de segurança, mas, para esse caso específico, é seguro o suficiente.
Então eu vou ter um.
Vamos dar uma olhada rápida, mas não é a melhor maneira de proteger seu site, então vamos
falar sobre a parte de segurança no final da seção.
E vamos falar sobre a melhor maneira de se proteger contra injeções seguras.
Mas por enquanto isso é digno de nota, porque é uma implementação rápida e, se você sabe o que
está fazendo, pode corrigir o problema rapidamente, por exemplo, se tiver um problema e não tiver tempo
suficiente para alterar a implementação para o A maneira mais segura que vamos falar mais tarde, então
você pode simplesmente fazer isso dessa maneira rapidamente, para que você possa ser seguro o suficiente até que
você possa implementá-lo e mudar o código para ser mais seguro.
Então, o que eles estão fazendo nesta página agora.
Isso nem sempre garante 100% novamente, mas é neste caso particular que é seguro.
Então este é o código para o logon e aqui temos o caso que é o arrogante ou o número de
segurança um.
E aqui temos o código para o nível de segurança cinco.
Então você pode comparar os dois códigos.
A principal diferença principal é esta declaração select.
Então, vou apagar tudo e vou manter essas duas instruções
select para que possamos compará-las.
OK, para que você possa ver aqui na declaração não muito segura, selecionamos iniciar das contas em que o nome do usuário é
o nome do usuário em dólar e a senha é a senha do dólar.
Então basicamente o que você colocar nas caixas de texto para o nome de usuário e senha está sendo usado
diretamente aqui.
Agora havia filtragem de site do cliente e conseguimos ignorar isso usando o proxy.
Então, o que quer que tenhamos inserido no proxy estava sendo substituído aqui.
Assim, poderíamos modificar o código definindo que o nome do usuário é igual a ou um é igual a um e, em
seguida, adicionamos um comentário.
Então, basicamente, o que aconteceu nesta declaração aqui, em vez do nome de usuário que foi substituído.
Então, o que quer que tenhamos colocado aqui foi substituído.
E esse valor foi injetado.
Então, isso foi alterado para uma citação e, em seguida, ou um é igual a um comentário e tudo isso foi basicamente ignorado tudo o que
vem depois que isso foi ignorado que fez a nossa declaração funcionar.
Então, como você pode ver aqui reclosed a citação que já foi inserida e, em seguida, nós adicionamos ou o
que é igual a um que é uma afirmação verdadeira.
Nós colocamos o nome de usuário é Ogmund. Na verdade, é isso que fizemos, então seria também aqui, então basicamente está selecionando qualquer coisa onde nome de usuário
é igual a admin e não se importa com a senha que nos
deu acesso à conta admin.
Agora poderíamos ter injetado também na senha dizendo ou um é igual a um.
Mais uma vez, nos dá uma afirmação verdadeira.
E isso foi executado neste caso particular aqui no seguro.
O que eles estão fazendo é que eles estão fazendo uma função chamada Real scape string.
E o que isso basicamente remove os caracteres, como o caractere de nova linha, o caractere de quebra
e as cotações ou código único ou código duplo para que seja verificado.
Ele escaneia a entrada que nós colocamos aqui e remove quaisquer citações que nós colocamos.
Então, colocamos o código único aqui ou quando fomos colocados no código duplo e removemos isso.
Então, quando ele se move, basicamente, processa tudo dentro dele como uma força.
Outro problema com isso agora.
Eu disse que isso é seguro apenas neste caso específico, porque eles também estão em uma
citação aqui e antes da entrada.
Então, se não houvesse uma cotação, então a injeção que nós injetássemos não precisaria conter
uma cotação e que nós poderíamos ignorar essa função, mas porque eles estão usando, eles são
realmente difíceis em citações aqui e aqui ali mesmo no final, no início e no final
da entrada, e também estão escapando de qualquer causa.
Então, se a entrada contiver quaisquer citações, elas serão removidas e, em seguida, o que quer que seja que
injetemos qualquer texto que você colocar lá, será considerado como uma força.
Portanto, ele será considerado apenas como texto normal e nunca será considerado como código,
portanto, nunca será executado no servidor.
Apenas neste caso.
Então, vamos apenas ter um exemplo, então temos nosso ID aqui.
Então essa é a injeção que estamos sempre usando Então esqueça de colocar isso.
Então este é o nosso nome de usuário aqui.
Então, basicamente, o que aconteceu é que isso está chegando ao código e, em seguida, o código vai digitalizar
isso e vai notar que há uma citação aqui.
E porque há uma cotação, vai removê-lo.
Esta função particular irá removê-lo.
Então, depois que a função for aplicada, isso desaparecerá.
E também a função irá desaparecer.
Então, isso é o que vai parecer com o código para o computador.
Isso é o que vai ver.
Basicamente, será apenas uma tensão normal que também está contida em duas citações.
Então, precisamos mover os pontos aqui.
E observe que eles já estão codificados nessas duas citações.
Então, por causa disso, nossa injeção nunca funcionará.
Agora, se eles não incluíssem esses códigos se não os machucassem aqui, se eles não existissem, mesmo
que eles usassem a função, essa injeção funcionaria.
Mas porque eles usam a citação, o que quer que venha dentro das cotações será
considerado como streng.
E porque eles estão verificando se a nossa entrada não deve conter aspas no lado do
servidor, então o que quer que nós puxemos será retirado da citação e nunca será considerado como código.
Novamente, essa não é a melhor maneira de proteger seu site.
Eu vou explicar o melhor porque.
Na última palestra da seção.
Mas esta é uma boa maneira de proteger temporariamente seu site.
Se você não teve tempo para implementar o procedimento adequado.