sql >> Databasteknik >  >> RDS >> Mysql

Hittade 'OR 1=1/* sql-injektion i min nyhetsbrevsdatabas

'OR 1=1 är ett försök att få en fråga att lyckas oavsett vad
/* är ett försök att starta en kommentar med flera rader så att resten av frågan ignoreras.

Ett exempel skulle vara

SELECT userid 
FROM users 
WHERE username = ''OR 1=1/*' 
    AND password = ''
    AND domain = ''

Som du kan se om du skulle fylla i användarnamnsfältet utan att lämna ' oavsett vilka autentiseringsuppgifter användaren skickar i frågan skulle alla användar-id i systemet sannolikt ge åtkomst till angriparen (möjligen adminåtkomst om admin är din första användare). Du kommer också att märka att resten av frågan kommer att kommenteras bort på grund av /* inklusive den riktiga ' .

Att du kan se värdet i din databas betyder att den undkom och att just den attacken inte lyckades. Du bör dock undersöka om några andra försök gjordes.



  1. Hur RPAD() fungerar i MariaDB

  2. Importera JSON till Mysql

  3. anrop externt skript med mySQL-utlösaren WHITOUT sys_exec på ubuntu ARMHF

  4. SQL Server:Bifoga felaktig version 661