ݺߣ

ݺߣShare a Scribd company logo
Безопасность!
CVE-2018-1000208
Удаление файлов
Причина
• Нету проверки на пути вида ../../

• Ошибка в параметрах

return $this->modx->cacheManager->deleteTree($topicDirectory, array(

'extensions' => '.msg.php'

));
Решение
public function clear($topic)

{

$topicDirectory = $this->directory . ltrim($this->sanitizePath($topic), '/');



return $this->modx->cacheManager->deleteTree(

realpath($topicDirectory),

array(

'extensions' => array('.msg.php')
)

);

}

https://github.com/modxcms/revolution/pull/13980/files
CVE-2018-1000207
Неправильное использование phpthumb
$query = [
'ctx' => $ctx,
'cache_filename' => '../../' . $file,
‘thumbnailFormat' => 'php',
‘f' => 'php',
‘useRawIMoutput' => '1',
'src' => 'index.php',
'IMresizedData' => $payload,
'config_prefer_imagemagick' => '0'
];
$out = $modx . '/connectors/system/
phpthumb.php?' . http_build_query($query);
Причина
/* iterate through properties */

foreach ($this->config as $property => $value) {

$this->setParameter($property,$value);

}
Исправление
$allowed = array(

'src', 'new', 'w', 'h', 'wp', 'hp', 'wl', 'hl', 'ws', 'hs',

'f', 'q', 'sx', 'sy', 'sw', 'sh', 'zc', 'bc', 'bg', 'fltr',

'goto', 'err', 'xto', 'ra', 'ar', 'aoe', 'far', 'iar', 'maxb',
'down',

'md5s', 'sfn', 'dpi', 'sia', 'phpThumbDebug'

);

https://github.com/modxcms/revolution/pull/13979/files
2.6.5
Gallery
1.7.1
security@modx.com
Сообщество
История
• 2011 - Сайт modx.by

• 2012 - Drink Up MODX Belarus

• 2013 - MODX Club

• 2014 - Первый MODX Meetup Minsk

• 2015 - Второй MODX Meetup Minsk, международный

• 2016 - что-то делали тихонько

• 2017 - MODXpo 2017!

• 2018 - эту историю делаем мы!
Новый формат
• Настоящие митапы, встречи раз в 2 месяца

• Ежегодная международная конференция
МЫ ИЩЕМ
ДОКЛАДЧИКОВ
MODX 3: Что нового?
https://modx.by
facebook.com/modxby
vk.com/modxby
modxby
twitter.com/modxby
meetup.com/modxby
telegram/modxby
modx.pro
t.me/ru_modx
29 сентября 2018https://modx.moscow
MODX 3
История
И вклад Sterc
modx3.org
Required budget
Scope of the Project Plan € 134.540,-

Scope of Extra Features € 75.355,-

Total required € 209.895,-

Pledged funding
Subsidy € 34.176,-

MODX LLC € 63.200,-

STERC € 25.000,-

modmore € 13.500,-

Sponsors € 15.555,-

Donations € 4.735,46

Total pledged € 156.166,46
Login screen
MODX 3: Что нового?
Dashboard
MODX 3: Что нового?
UX improvements
MODX 3: Что нового?
Extract dependencies
"require": {

"php": ">=5.6",

"xpdo/xpdo": "^3.0@dev",

"league/flysystem": "^1.0",

"league/flysystem-aws-s3-v3": "^1.0",

"league/flysystem-cached-adapter": "^1.0",

"phpmailer/phpmailer": "^6.0",

"smarty/smarty": "^3.1",

"james-heinrich/phpthumb": "^1.7",

"erusev/parsedown": "^1.7",

"pelago/emogrifier": "^2.0"

},
Composer & Flysystem
composer create-project modx/revolution www 3.x-dev
Local, Azure, AWS S3, DigitalOcean Spaces, Dropbox, 

FTP, Memory, Null / Test, Rackspace, ReplicateAdapter, 

SFTP, WebDAV, PHPCR, ZipArchive
Template preview
MODX 3: Что нового?
Better upload
workflow
MODX 3: Что нового?
New emails
MODX 3: Что нового?
• Markdown для описаний и истории изменений в
пакетах

• Биндинг @EVAL удален, как небезопасный

• Более гибкое управление корзиной

• Возможность видеть элементы внутри категорий

• Улучшена логика статических элементов
Нам нужны
тестировщики!
И разработчики тоже
github.com/modxcms/revolution
Планы
• Автообновление (на базе UpgradeMODX от Bob Ray)

• Закончить рефакторинг (#13900)

• Реализовать новый установщик самого MODX (дизайн
есть).

• Протестировать имеющиеся 44 PR и выпустить 2.7 и
MODX 3 beta.
Что дальше?
• Разделение ядра на компоненты (core, cms, manager,
api и т.д.)

• Реализация REST-full API 

• Постепенный уход от ExtJS
https://github.com/modxcms/mab-recommendations
MODX 3: Что нового?
Иван Климчук
just google it!

More Related Content

MODX 3: Что нового?