Come verificare quali moduli sono interessati dalla patch di sicurezza SUPEE-6788


71

Il 27 ottobre 2015, Magento ha rilasciato la patch di sicurezza SUPEE-6788. Secondo i dettagli tecnici , 4 APPSEC che sono stati corretti richiedono alcune rielaborazioni nei moduli locali e della comunità:

  • APPSEC-1034, indirizzamento ignorando l'URL dell'amministratore personalizzato (disabilitato per impostazione predefinita)
  • APPSEC-1063, indirizzamento possibile iniezione SQL
  • APPSEC-1057, il metodo di elaborazione dei modelli consente l'accesso alle informazioni private
  • APPSEC-1079, affrontando il potenziale exploit con il tipo di file di opzioni personalizzato

Mi chiedevo come verificare quali moduli sono interessati da questa patch di sicurezza.

Ho trovato la seguente soluzione parziale:

  • APPSEC-1034: cercare <use>admin</use>nel file config.xml di tutti i moduli locali e della comunità. Penso che questo dovrebbe elencare tutti i moduli interessati da questo problema.
  • APPSEC-1063: ricerca addFieldToFilter('(e addFieldToFilter('`in tutti i file PHP dei moduli locali e della comunità. Questo è incompleto, poiché possono essere utilizzate anche variabili.
  • APPSEC-1057: cerca {{config path=e {{block type=in tutti i file PHP dei moduli locali e della comunità e filtra tutti gli elementi dalla whitelist. Questo è incompleto, poiché non contiene alcuna variabile modello aggiunta dagli amministratori.
  • APPSEC-1079: nessuna idea.

C'è anche un elenco di estensioni vulnerabili per APPSEC-1034 e APPSEC-1063 compilate da Peter Jaap Blaakmeer


Non ho idea di come contattare @PeterJaapBlaakmeer ma ho un'estensione che deve essere aggiunta all'elenco: FreeLunchLabs ConstantContact per il problema dell'URL di amministrazione
David Wilkins,

6
chi ha inventato alcune di queste soluzioni? All'improvviso ci sarà un tipo di blocco e una whitelist variabile? Aggiornare Magento è sempre stato un dolore, ma un buon lavoro per Magento per averlo reso ancora più un dolore.
Agop,

6
Eh, Magento, il dono che continua a dare. Ho appena finito di aggiornare TUTTI i moduli per la compatibilità 1.9.2.1. Gli sviluppatori del modulo Bet stanno saltando di gioia o correndo urlando per le colline.
Fiasco Labs,

3
in questo momento la patch è stata rinviata per la prossima settimana - rimandare la versione della patch di sicurezza all'inizio della prossima settimana e modificare la patch in modo che le modifiche al routing dell'amministratore siano disattivate per impostazione predefinita. Ciò significa che la patch includerà la correzione, ma che verrà disabilitata una volta installata. La nuova data di rilascio e le modifiche alla patch ti daranno del tempo aggiuntivo per aggiornare il tuo codice e offriranno ai commercianti la flessibilità di attivare questa parte della patch una volta che le loro estensioni e personalizzazioni sono state aggiornate per funzionare con essa.
FireBear,

Risposte:


55

SUPEE-6788 ha rilasciato e le modifiche al routing dell'amministratore sono disattivate per impostazione predefinita. Ciò significa che la patch include la correzione, ma che verrà disabilitata una volta installata. Ciò ti concederà del tempo aggiuntivo per effettuare aggiornamenti del codice e offrirà ai commercianti la flessibilità di attivare questa parte della patch una volta che le loro estensioni e personalizzazioni sono state aggiornate per funzionare con esso.

Per abilitare la funzionalità di routing dell'amministratore per le estensioni dopo l'installazione, il percorso va su Admin -> Avanzate -> Admin -> Sicurezza.

Le patch Magento CE 1.4-1.6 sono in ritardo e dovrebbero essere disponibili tra circa una settimana!

SUPEE-6788 Elenco delle risorse


Per i moduli "non risolvibili", possiamo documentare ciò che in generale deve essere modificato in modo che questi moduli possano essere patchati manualmente per funzionare con 6788? Ad esempio, "rimuovi X da tutte le addFieldToFilterchiamate".
Tyler V.

1
La patch è stata rilasciata. Aggiorna la tua risposta.
7

@FireBear Ho già applicato patch Magento in passato molte volte. Ma ho un dubbio su SUPEE-6788. Devo applicarlo come altre patch e in seguito posso abilitare la funzionalità di routing dell'amministratore nel pannello di amministrazione di Magento o solo durante il tempo di installazione devo occuparmene. Per favore, suggerisci
Mukesh,

2
@Muk sì, è possibile installarlo come altre patch, ma è necessario fare attenzione alle estensioni rotte, se si utilizzano alcune estensioni dall'elenco - è necessario correggerle manualmente o attendere l'aggiornamento dagli sviluppatori, fino a quando non è possibile abilitare - Funzionalità di routing dell'amministratore per le estensioni
FireBear,

@FireBear Potresti fornire il tuo feedback su community.magento.com/t5/Version-Upgrades/… (Prima e dopo nel modulo personalizzato)
Mukesh,

21

Sulla falsariga di altri commenti sulla rilevazione dei conflitti, noi di ParadoxLabs abbiamo creato uno script per rintracciare tutto ciò che è interessato da APPSEC-1034 (controller di amministrazione) e APPSEC-1057 (whitelist). Tenterà inoltre di correggere eventuali controller errati, poiché si tratta di una modifica abbastanza precisa e invasiva da apportare.

Non copre APPSEC-1063 (iniezione SQL) o APPSEC-1079 (opzioni personalizzate), ma sarebbe fantastico se potesse. Non sono sicuro di come rilevare quelli con qualsiasi tipo di precisione. Siamo aperti ai contributi.

https://github.com/rhoerr/supee-6788-toolbox


3
sembra davvero utile, buon lavoro!
paj,

fixWhitelists aggiunge blocchi alle whitelist ma non sembra fare lo stesso per le variabili - per favore, puoi confermare?
Zigojacko,

1
@zigojacko Copre entrambi.
Ryan Hoerr,

Sì, l'ho capito provandoci. Ottimo lavoro, super lavoro di ParadoxLabs :)
zigojacko

Rispetto per ParadoxLabs. Questo strumento sta risparmiando una grande quantità di lavoro.
DarkCowboy,

5

Questo script php potrebbe essere utile per identificare il codice Magento interessato dalla proposta di patch SUPEE-6788 .

Questo non è in alcun modo un controllo di sicurezza infallibile per questa patch, ma potrebbe essere utile per scansionare rapidamente l'installazione per i moduli e il codice interessati.

Installa lo script con

wget https://raw.githubusercontent.com/gaiterjones/magento-appsec-file-check/master/magento_appsec_file_check.php

modifica il percorso per l'installazione di Magento

$_magentoPath='/home/www/magento/';

correre

php magento_appsec_file_check.php

I file interessati verranno visualizzati:

*** Magento security file check ***
[1] APPSEC-1034, addressing bypassing custom admin URL
2 effected files :
<use>admin</use> found in  app/code/community/Itabs/Debit/etc/config.xml
<use>admin</use> found in  app/code/core/Mage/Adminhtml/etc/config.xml


[2] APPSEC-1063, addressing possible SQL injection
2 effected files :
collection->addFieldToFilter(' found in  app/code/community/Itabs/Debit/Model/Export/Abstract.php
collection->addFieldToFilter(' found in  app/code/community/Itabs/Debit/controllers/Adminhtml/OrderController.php
collection->addFieldToFilter(' not found.
collection->addFieldToFilter('\` not found.
collection->addFieldToFilter('\` not found.


[3] APPSEC-1057, template processing method allows access to private information
{{config path= not found.
{{block type= not found.


***********************************

Lo script usa grep per cercare nei file Magento occorrenze del codice che potrebbero eventualmente compromettere la retrocompatibilità con personalizzazioni o estensioni quando viene applicato SUPEE-6788.


4

C'è già un grande elenco disponibile con tutte le estensioni che si romperanno con SUPEE-6788

Maggiori informazioni qui: https://docs.google.com/spreadsheets/d/1LHJL6D6xm3vD349DJsDF88FBI_6PZvx_u3FioC_1-rg/edit#gid=0


Sono davvero curioso di sapere come è stato raccolto questo elenco.
mam08ixo,

3
Era crowdsourcing; la fonte originale è: docs.google.com/spreadsheets/d/…
Herman Slatman

Rimuovi l'elenco dalla pagina precedente e collega invece la fonte, che è mantenuta aggiornata: docs.google.com/spreadsheets/d/…
Aad Mathijssen

1
C'è qualche contatto per far conoscere le versioni aggiornate? Vedo lì almeno 2-3 moduli che erano già stati aggiornati.
versedi

-1

L'elenco delle variabili consentite, che possono essere elaborate tramite il filtro del contenuto, è più grande di quanto mostrato nel PDF:

+ trans_email/ident_support/name
+ trans_email/ident_support/email
web/unsecure/base_url
web/secure/base_url
trans_email/ident_general/name
+ trans_email/ident_general/email
trans_email/ident_sales/name
trans_email/ident_sales/email
trans_email/ident_custom1/name
trans_email/ident_custom1/email
trans_email/ident_custom2/name
trans_email/ident_custom2/email
general/store_information/name
general/store_information/phone
general/store_information/address

(Ho aggiunto un +prima delle variabili che non sono state descritte nel PDF)

I blocchi consentiti che possono essere elaborati tramite il filtro contenuti sono:

core/template
catalog/product_new
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.