SA-MP Forums Archive
[Ajuda] sql injection - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] sql injection (/showthread.php?tid=475158)



sql injection - valdirdd - 11.11.2013

Olб galera preciso de uma ajudinha sobre sql incjetion.

Code:
mysql_real_escape_string(PlayerName(playerid), Nome);
mysql_real_escape_string(Encriptar(inputtext), Senha);
mysql_format(MysqlConnect, string, "INSERT INTO contas (Nome,Senha,Email,LembrarSenha)\
VALUES ('%s','%s','N','N')",Nome,Senha);
mysql_function_query(MysqlConnect, string, false, "", "");
Sу fazendo isso jб estou seguro ?


E antes de tudo agradeзo a todos que responderem. Obrigado!



Re: sql injection - mau.tito - 11.11.2013

Desculpe nгo intendi sua duvida !


Re: sql injection - Locky_ - 11.11.2013

Tem na wiki sa-mp, funзгo do MySQL. Sobre o SQL Injection, й necessбrio usar o mysql_format

Um exemplo
pawn Code:
new string[128], senha[50], Nome[24];
GetPlayerName(playerid, Nome, sizeof(Nome));
mysql_real_escape_string(PlayerInfo[playerid][Senha], senha);
mysql_format(conexao, string, sizeof(string), "INSERT INTO contas (Nome, Senha) VALUES ('%s', '%e')", Nome, senha);
%e = escape string
%s = string comum

Sу se usa o escape string em textos, onde й digitado algo. No nome nгo й necessбrio.

https://sampwiki.blast.hk/wiki/MySQL#mys..._escape_string
https://sampwiki.blast.hk/wiki/MySQL#Format_strings


Re: sql injection - P1c4550 - 11.11.2013

mas o mysql_format se usar com %e ele ja escapa a string nao precissa chamar o mysql_real_escape_string antes


Re: sql injection - valdirdd - 11.11.2013

Nickvj7 e P1c4550, muito obrigado !

@Edit
P1c4550 й preciso usar mysql_real_escape_string.


Re: sql injection - Locky_ - 11.11.2013

Quote:
Originally Posted by P1c4550
View Post
mas o mysql_format se usar com %e ele ja escapa a string nao precissa chamar o mysql_real_escape_string antes
Й, isto realmente tб na wiki, vou fazer uns testes aqui.

Quote:
Originally Posted by valdirdd
View Post
Nickvj7 e P1c4550, muito obrigado !

@Edit
P1c4550 й preciso usar mysql_real_escape_string.
teste colocar alguns caracteres que dк problemas em update/select/insert.
Exemplo: '


Re: sql injection - Schocc - 12.11.2013

Use tambйm mysql_store_result e mysql_free_result , da pra fazer inъmeras coisas, sistemas de seguranзa entre outras func.

@wiki.sa-mp.com:
mysql_real_escape_string.
Important Note: Sempre use esta funзгo (se vocк nгo usar mysql_format ()) antes de inserir as entradas do usuбrio em uma consulta. Vocк pode ser vнtima de uma injeзгo de SQL, se vocк nгo fazк-lo.


@Linux: Й уtimo em seguranзa e para ser atacado somente por exploits voltados para Linux.
Mas vai da capacidade da pessoa, nгo adianta ter as melhores ferramentas e nгo saber usar ou ler em inglкs.