Vulnérable ou pas ?

A visually engaging image depicting SQL injection vulnerabilities in coding, with symbols of security and databases in the background.

Évaluez votre connaissance des injections SQL !

Mettez à l'épreuve vos compétences en matière de sécurité avec notre quiz sur les injections SQL ! Ce quiz interactif vous aidera à comprendre les failles potentielles dans le code et à renforcer vos connaissances en sécurité des bases de données.

Testez votre savoir avec des questions comme :

  • Les exemples de code sont-ils vulnérables à une injection SQL ?
  • Pourquoi les injections SQL peuvent-elles être graves ?
  • Quelles sont les meilleures pratiques pour éviter les injections SQL ?
10 Questions2 MinutesCreated by DebuggingMaster347
Le code ci-dessous est-il vulnérable à une injection SQL ?
 
$result = $mysqli->query('SELECT * FROM users WHERE
username =
'.$_GET['username']
);
Vulnérable
Non Vulnérable
Le code ci-dessous est-il vulnérable à une injection SQL ?
 
public Customer findByCustomerId(int custId){

String sql = "SELECT * FROM CUSTOMER WHERE CUST_ID = ?";

Customer customer = (Customer)getJdbcTemplate().queryForObject(
sql, new Object[] { custId }, new CustomerRowMapper());

return customer;
}
Vulnérable
Non Vulnérable
Le code ci-dessous est-il vulnérable à une injection SQL ?
$result = $mysqli->query('SELECT * FROM list WHERE
id=
'.(int)$_GET['id']);


Vulnérable
Non Vulnérable
En général, une injection SQL est-ce que c'est grave ?
 
Oui, très : l'ensemble des données peut fuiter ou être modifié
Non : ca ne concerne que quelques utilisateurs
Le code ci-dessous est-il vulnérable à une injection SQL ?
 
$field = $_GET['field'];
$query = $db->prepare('SELECT * FROM usr WHERE '.$field.' LIKE ?;');
$query->bind_param('s', "%".$_GET['search']."%");
$query->execute();

Vulnérable
Non Vulnérable
Le code ci-dessous est-il vulnérable à une injection SQL ?
 
CREATE PROCEDURE sp_GetProduct(pRef NVARCHAR(50))
BEGIN
   DECLARE cmd NVARCHAR(MAX);
   SET cmd = N'SELECT * FROM tbl WHERE Ref = ''' + pRef + '''';
   EXECUTE(cmd)
END
 
Vulnérable
Non Vulnérable
A votre avis où faut-il corriger les injections SQL ?
Dans le navigateur
Dans la couche de persistence/d'accès aux données
Dans la partie contrôleur d'un framework MVC
Le code ci-dessous est-il vulnérable à une injection SQL ?
 
$searchList=array('login','firstname','lastname');
 
$field = in_array($_GET['field'],$searchList,true)
  ? $_GET['field'] : $searchList[0];
 
$query = $db->prepare('SELECT * FROM usr WHERE '.$field.' LIKE ?;');
$query->bind_param('s', "%".$_GET['search']."%");
$query->execute();
Vulnérable
Non Vulnérable
Le code ci-dessous est-il vulnérable à une injection SQL ?
 
@Controller  public class ProductController {
  @RequestMapping(value = "/products/{category}/{id}", method =
        RequestMethod.GET)
  public String listCategory(@PathVariable String category, @PathVariable
      String id, [...]
  return "products";
}
[...]
public Iterable<Product> findByCategoryAndId(String category, String id) {
    return em.createQuery(
    "SELECT p FROM Product p WHERE p.category = :category and p.id="+id)
          .setParameter("category", category).getResultList();
}
Vulnérable
Non Vulnérable
Quelles sont les options de sécurité les plus sûres pour corriger systématiquement les injections SQL ?
Les listes ouvertes
Les listes fermées
Les procédures stockées
Les requêtes préparées
Les conversions en type simple (numériques, date, ...)
Les fonctions de nettoyage
Les pattern
{"name":"Vulnérable ou pas ?", "url":"https://www.quiz-maker.com/QPREVIEW","txt":"Mettez à l'épreuve vos compétences en matière de sécurité avec notre quiz sur les injections SQL ! Ce quiz interactif vous aidera à comprendre les failles potentielles dans le code et à renforcer vos connaissances en sécurité des bases de données.Testez votre savoir avec des questions comme :Les exemples de code sont-ils vulnérables à une injection SQL ?Pourquoi les injections SQL peuvent-elles être graves ?Quelles sont les meilleures pratiques pour éviter les injections SQL ?","img":"https:/images/course6.png"}
Powered by: Quiz Maker