Два исследователя компьютерной безопасности произвели обратный инжиниринг официального клиента DropBox. Несмотря на то, что код приложения написан на языке Python, программа изначально была зашифрована и приведена в совершенно нечитабельный вид. Анализ усложняло то, что официальный клиент DropBox содержит изменённый интерпретатор Python, который выполняет специально закодированный байткод.
Проанализировав код, разработчики расшифровали SSL-трафик между клиентом и сервером DropBox и проследили всю цепочку работы программы, включая двухфакторную аутентификацию, что позволило им написать собственный открытый клиент для сервиса. Используемые в процессе исследования инструменты опубликованы на GitHub, в ближайшее время ожидается публикация кода с реализацией прототипа открытого клиента к DropBox.
Все шаги, предпринятые для расшифровки клиента, описаны в обширном документе (PDF), который выложен в свободный доступ, что позволит другим квалифицированных исследователям попытаться провести обратный инжиниринг клиентов других компаний, написанных с использованием Python: NASA, Minecraft, Django, OpenStack и множество сервисов корпорации Google. Документ содержит информацию об успешной распаковке, расшифровке и декомпиляции "замороженных" Python-приложений.