Ao testar código que interage com bancos de dados, é importante evitar ataques de injeção de SQL escapando adequadamente da entrada do usuário. No entanto, conectar-se a um banco de dados para cada teste pode ser ineficiente. Existe uma maneira de escapar de strings sem uma conexão de banco de dados ativa?
Infelizmente, é impossível escapar de strings de maneira confiável sem uma conexão de banco de dados. Tanto mysql_real_escape_string() quanto as instruções preparadas dependem do conhecimento do banco de dados sobre o conjunto de caracteres em uso. Sem essas informações, é possível criar sequências de caracteres multibyte que contornam os mecanismos de escape e levam a vulnerabilidades de injeção de SQL.
Se seu objetivo é puramente testar, você pode considere usar mysql_escape_string() por sua velocidade e simplicidade. Embora não seja totalmente seguro, é improvável que seja explorado em um ambiente de teste. No entanto, observe que isso não é recomendado para código de produção.
Embora seja tentador encontrar uma maneira de escapar de strings sem uma conexão com o banco de dados, na verdade não é viável. A única maneira de garantir a integridade dos dados é usar técnicas de escape adequadas em conjunto com uma conexão de banco de dados.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3