Drupal podatny na atak SQL Injection

Oprogramowanie Drupal w wersji poniżej 7.32 jest podatne na ataki SQL Injection, znaleziony błąd został dodany już na początku 2011 roku i tkwił niezauważony przez 3 lata, a ostatecznie został wykryty podczas wykonywania audytu kodu źródłowego przez niemiecką firmę SektionEins.

Luka znajduje się w API Drupala, którego jednym z głównych celów jest eliminacja ataków typu SQL Injection. Znaleziony błąd pozwala atakującemu na wykonanie specjalnie spreparowanych zapytań SQL, które pozwalają na ominięcie nadanych uprawnień i wykonanie dowolnego kodu PHP nie będąc zalogowanym na stronie.

Luka została naprawiona w najnowszej wersji Drupala 7.32. Zaleca się wykonanie aktualizacji oprogramowania do najnowszej wersji, a w przypadku problemów, należy skorzystać z tej poprawki.

Zawartość pliku z poprawką:

diff --git a/includes/database/database.inc b/includes/database/database.inc
index f78098b..01b6385 100644
--- a/includes/database/database.inc
+++ b/includes/database/database.inc
@@ -736,7 +736,7 @@ abstract class DatabaseConnection extends PDO {
     // to expand it out into a comma-delimited set of placeholders.
     foreach (array_filter($args, 'is_array') as $key => $data) {
       $new_keys = array();
-      foreach ($data as $i => $value) {
+      foreach (array_values($data) as $i => $value) {
         // This assumes that there are no other placeholders that use the same
         // name.  For example, if the array placeholder is defined as :example
         // and there is already an :example_2 placeholder, this will generate


Learn more about our offer

If you sell security solutions, are a distributor, authorized partner or developer and would like to share your portfolio with a group of potential customers, advertise an event, software, hardware or other services on AVLab - simply write to us. Or maybe you had to deal with ransomware? We can also help you decrypt your files.
Read more

We use Google Cloud Translation and Gengo API’s to translate articles with exception of our comparative tests.