mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-22 20:53:37 +00:00
67 lines
7.5 KiB
Markdown
67 lines
7.5 KiB
Markdown
# ImageMagick Security
|
||
|
||
{% hint style="success" %}
|
||
Learn & practice AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||
Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||
|
||
<details>
|
||
|
||
<summary>Support HackTricks</summary>
|
||
|
||
* Check the [**subscription plans**](https://github.com/sponsors/carlospolop)!
|
||
* **Join the** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||
* **Share hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
||
|
||
</details>
|
||
{% endhint %}
|
||
|
||
Check further details in [**https://blog.doyensec.com/2023/01/10/imagemagick-security-policy-evaluator.html**](https://blog.doyensec.com/2023/01/10/imagemagick-security-policy-evaluator.html)
|
||
|
||
Το ImageMagick, μια πολυδιάστατη βιβλιοθήκη επεξεργασίας εικόνας, παρουσιάζει μια πρόκληση στη διαμόρφωση της πολιτικής ασφάλειας λόγω των εκτενών επιλογών του και της έλλειψης λεπτομερούς διαδικτυακής τεκμηρίωσης. Οι χρήστες συχνά δημιουργούν πολιτικές βασισμένες σε αποσπασματικές πηγές στο διαδίκτυο, οδηγώντας σε πιθανές κακοδιαμορφώσεις. Η βιβλιοθήκη υποστηρίζει μια τεράστια γκάμα άνω των 100 μορφών εικόνας, καθεμία από τις οποίες συμβάλλει στην πολυπλοκότητα και το προφίλ ευπάθειας της, όπως αποδεικνύεται από ιστορικά περιστατικά ασφάλειας.
|
||
|
||
## Towards Safer Policies
|
||
Για να αντιμετωπιστούν αυτές οι προκλήσεις, έχει αναπτυχθεί ένα [εργαλείο](https://imagemagick-secevaluator.doyensec.com/) για να βοηθήσει στο σχεδιασμό και την επιθεώρηση των πολιτικών ασφάλειας του ImageMagick. Αυτό το εργαλείο βασίζεται σε εκτενή έρευνα και στοχεύει να διασφαλίσει ότι οι πολιτικές είναι όχι μόνο ισχυρές αλλά και χωρίς παραθυράκια που θα μπορούσαν να εκμεταλλευτούν.
|
||
|
||
## Allowlist vs Denylist Approach
|
||
Ιστορικά, οι πολιτικές του ImageMagick βασίζονταν σε μια προσέγγιση denylist, όπου συγκεκριμένοι κωδικοποιητές αποκλείονταν. Ωστόσο, οι αλλαγές στο ImageMagick 6.9.7-7 άλλαξαν αυτό το παράδειγμα, επιτρέποντας μια προσέγγιση allowlist. Αυτή η προσέγγιση πρώτα αποκλείει όλους τους κωδικοποιητές και στη συνέχεια επιλεκτικά παραχωρεί πρόσβαση σε αξιόπιστους, ενισχύοντας τη στάση ασφάλειας.
|
||
```xml
|
||
...
|
||
<policy domain="coder" rights="none" pattern="*" />
|
||
<policy domain="coder" rights="read | write" pattern="{GIF,JPEG,PNG,WEBP}" />
|
||
...
|
||
```
|
||
## Case Sensitivity in Policies
|
||
Είναι κρίσιμο να σημειωθεί ότι τα πρότυπα πολιτικής στο ImageMagick είναι ευαίσθητα σε πεζά και κεφαλαία. Ως εκ τούτου, η διασφάλιση ότι οι προγραμματιστές και τα modules είναι σωστά γραμμένα με κεφαλαία στις πολιτικές είναι ζωτικής σημασίας για την αποφυγή ακούσιων δικαιωμάτων.
|
||
|
||
## Resource Limits
|
||
Το ImageMagick είναι επιρρεπές σε επιθέσεις άρνησης υπηρεσίας αν δεν έχει ρυθμιστεί σωστά. Η ρύθμιση ρητών ορίων πόρων στην πολιτική είναι απαραίτητη για την αποφυγή τέτοιων ευπαθειών.
|
||
|
||
## Policy Fragmentation
|
||
Οι πολιτικές μπορεί να είναι κατακερματισμένες σε διάφορες εγκαταστάσεις του ImageMagick, οδηγώντας σε πιθανούς συγκρούσεις ή υπερκαλύψεις. Συνιστάται να εντοπίσετε και να επαληθεύσετε τα ενεργά αρχεία πολιτικής χρησιμοποιώντας εντολές όπως:
|
||
```shell
|
||
$ find / -iname policy.xml
|
||
```
|
||
## Μια Αρχική, Περιοριστική Πολιτική
|
||
Ένα πρότυπο περιοριστικής πολιτικής έχει προταθεί, εστιάζοντας σε αυστηρούς περιορισμούς πόρων και ελέγχους πρόσβασης. Αυτό το πρότυπο χρησιμεύει ως βάση για την ανάπτυξη προσαρμοσμένων πολιτικών που ευθυγραμμίζονται με τις συγκεκριμένες απαιτήσεις της εφαρμογής.
|
||
|
||
Η αποτελεσματικότητα μιας πολιτικής ασφάλειας μπορεί να επιβεβαιωθεί χρησιμοποιώντας την εντολή `identify -list policy` στο ImageMagick. Επιπλέον, το [εργαλείο αξιολόγησης](https://imagemagick-secevaluator.doyensec.com/) που αναφέρθηκε νωρίτερα μπορεί να χρησιμοποιηθεί για την βελτίωση της πολιτικής με βάση τις ατομικές ανάγκες.
|
||
|
||
## Αναφορές
|
||
* [https://blog.doyensec.com/2023/01/10/imagemagick-security-policy-evaluator.html**](https://blog.doyensec.com/2023/01/10/imagemagick-security-policy-evaluator.html)
|
||
|
||
|
||
|
||
{% hint style="success" %}
|
||
Learn & practice AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||
Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||
|
||
<details>
|
||
|
||
<summary>Support HackTricks</summary>
|
||
|
||
* Check the [**subscription plans**](https://github.com/sponsors/carlospolop)!
|
||
* **Join the** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||
* **Share hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
||
|
||
</details>
|
||
{% endhint %}
|