O que é CSRF?
CSRF (falsificação de solicitação de sites cruzados), Nome chinês: falsificação de solicitação de sítio, também conhecida como: Ataque/Sessão de um clique, abreviação: CSRF/XSRF.
O que o CSRF pode fazer?
Você pode entender os ataques de CSRF como este: o invasor roubou sua identidade e enviou uma solicitação maliciosa em seu nome. As coisas que o CSRF pode fazer incluem: enviar e -mails, enviar mensagens, roubar sua conta e até comprar mercadorias, transferir dinheiro da moeda virtual ... os problemas causados incluem: vazamento de privacidade pessoal e segurança da propriedade.
Status atual da vulnerabilidade da CSRF
O método de ataque de CSRF foi proposto pelo pessoal de segurança estrangeira em 2000, mas foi até 2006 que começou a receber atenção na China. Em 2008, as vulnerabilidades da CSRF foram expostas em muitas grandes comunidades e sites interativos em casa e no exterior, como: nytimes.com (New York Times), Metafilter (um grande site de blogs), YouTube e Baidu Hi ... agora, muitos sites na Internet ainda não são preparados para isso, para que a indústria de segurança chama CSRF a "Sleeping"
Em um projeto de inicialização da primavera, os ataques de CSRF precisam ser impedidos e apenas filtros relevantes na segurança da primavera podem ser introduzidos.
Adicione dependências relevantes no POM
<Dependences> <pendency> <voundid> org.springframework.boot </frugiD> <stifactId> Spring-boot-Starter-Freemarker </ArtifactId> </Dependency> <!-Security (usado apenas para proteção CSRF)-> <Puprougid> Org.springFringworkworks.Securntion <SRF)-> <Puprougid> org.springrworkworks.sectifury <srf)-> <Puprougi> Org.springFringworkworkwos <TarfactId> Spring-security-web </stutifactId> </dependency> </dependency> </dependências>
Adicione o CSRffilter quando o aplicativo iniciar
@SpringbooTapplicationPublic Class Aplicativo estende WebMVCConfigureRAdApter {@Bean public filterRegistrationBean CSRffilter () {FilterRegistrationBean Registration = new FilterReGistrationBean (); Registration.SetFilter (novo CSRffilter (novo httpSessionCsrftoKenRepository ()); registro.addurlpatterns ("/*"); Registro de retorno; } public static void main (string [] args) {springApplication.run (application.class, args); }}Adicione o campo oculto de CSRF em forma
<Nome de entrada = "$ {(_ csrf.parametername)!}" value = "$ {(_ csrf.token)!}" type = "hidden">Adicionando o cabeçalho do CSRF em Ajax
xhr.setRequestHeader ("$ {_ csrf.headername}", "$ {_ csrf.token}");O endereço do github é https://github.com/kabike/spring-boot-csrf
O exposto acima é todo o conteúdo deste artigo. Espero que seja útil para o aprendizado de todos e espero que todos apoiem mais o wulin.com.