Ciao Marco,
nelle rewriterule le backreferences dovrebbero essere i $1 $2 che corrispondono 
con i gruppi che si catturano nella prima parte della rule con le parentesi, e 
[L,NC] sono i flag che impostano il comportamento della rewrite rule tipo le 
seguenti:

RewriteRule ^/(.*) http://www.example.com/$1 [L,NC]
RewriteRule ^/sito2/(.*) http://www2.example.com/$1 [L,NC]

Forse queste due rewriterule dovrebbero essere il prototipo di quelle indicate 
dall'annuncio. 

In questo caso il flag L dice ad Apache che la regola è l'ultima e quindi se ci 
fossero sotto altre regole, non vengono elaborate. In effetti per come è fatta 
questa coppia di regole (inventate di sana pianta), la prima acchiappa tutto e 
quindi la seconda non verrà mai eseguita.
NC dice di fare il match case-insensitive.

Ma nelle regole che hai inserito tu non ci sono backreferences, nel tuo caso le 
rewrite rule sono usate per rimbalzare eventuali riferimenti a vecchi path su 
un nuovo path statico, senza backreferences, quindi credo che non ci saranno 
problemi. Oltre al flag L c'è R=301, cioè impone al browser di fare redirect 
con codice 301 (moved permanently), altrimenti il default del flag R è 302 
(moved temporarily).

Mi rimane il dubbio di cosa voglia dire "Some out-of-specification  RewriteRule 
directives that were previously silently accepted"
Mi piacerebbe vederne una di queste out-of-specification RewriteRule per 
capirne l'errore e la giusta formulazione...


Ciao
Lorenzo

-----Messaggio originale-----
Da: Marco Gaiarin <g...@lilliput.linux.it> 
Inviato: mercoledì 26 aprile 2023 22:07
A: debian-italian@lists.debian.org
Oggetto: Apache, CVE-2023-25690 e Rewrite Rules...


Beccato baco di Apache, debian pubblica:

        https://lists.debian.org/debian-lts-announce/2023/04/msg00028.html

in cui inserisce la sibillina:

 Unfortunately, fixing these security vulnerabilities may require  changes to 
configuration files. Some out-of-specification  RewriteRule directives that 
were previously silently accepted,  are now rejected with error AH10409. For 
instance, some RewriteRules  that included a back-reference and the flags 
"[L,NC]" will need to  be written with extra escaping flags such as "[B= 
?,BNP,QSA]".

che o uno è un Guru delle Apache rewritre rule, o non ci capisce una sega.

Ad esempio "[L,NC]" vuol dire le rewrite rule che contengono 'L' e 'NC' o 
esattamente quelle che contengono 'L,NC'?!

Una rewritre rule come:

        RewriteRule ^/\.well-known/carddav 
https://%{SERVER_NAME}/remote.php/dav/ [R=301,L]
        RewriteRule ^/\.well-known/caldav 
https://%{SERVER_NAME}/remote.php/dav/ [R=301,L]
        RewriteRule ^/\.well-known/webfinger 
https://%{SERVER_NAME}/index.php/.well-known/webfinger [R=301,L]

(nextcloud) è vulnerabile?!


Grazie...

--
  If SMB was an animal it would go wolf and most people would have shot it
  or put it down humanely.                              (Rod Boyce)


Rispondere a