Sploitus

Exploit for CVE-2021-22204

kitploit · 2026-08-27

Exploit Code

MARKDOWN39 lines
## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-TRGANDA-CVE-2021-22204
# ExifTool Удаленное выполнение кода

Это должно было быть аналитической статьей о CVE-2021-22204, но больше похоже на мою черновую тетрадь, заполненную множеством беспорядочных вещей. Для статьи об анализе уязвимости это кажется многословным, но я многое узнал.

Честно говоря, я никогда не пользовался этим инструментом и почти не сталкивался с языком Perl, поэтому в процессе анализа и даже воспроизведения у меня было много вопросов. Прежде чем начать анализ, давайте посмотрим на уже опубликованные PoC в интернете и на мои вопросы.

## POC - convisolabs

Статья, которую я увидел, [1], кратко описывает причину возникновения уязвимости, но из-за того, что я не понимаю код Perl, многое осталось неясным. Процесс воспроизведения выглядит следующим образом:

Скачиваем версию exiftool 12.23

root@kitploit:~
    
    
    wget https://codeload.github.com/exiftool/exiftool/zip/refs/tags/12.23 -O exiftool-12.23.zip
    

Распаковываем и устанавливаем

root@kitploit:~
    
    
    $ unzip exiftool-12.23.zip && cd exiftool-12.23
    $ perl Makefile.PL
    $ make test
    $ sudo make install
    

Конечно, если вы не хотите его устанавливать, вы можете просто поместить файл exiftool из каталога exiftool-12.23 в каталог, доступный в переменной окружения, и тогда можно будет использовать инструмент exiftool напрямую, так как Perl — интерпретируемый язык, похожий на Python.

Создаем вредоносное изображение. Сначала устанавливаем необходимые инструменты

root@kitploit:~
    
    
    $ sudo apt-get update
    $ sudo apt-get install djvulibre-bin