Взлом мог быть разрушительным, но с ним справились почти идеально.

Время от времени вы слышите об одном из этих масштабных взломов Интернета, который показывает, насколько хрупка наша сетевая инфраструктура.

На этой неделе чуть не повторилось.

Около 80% веб-сайтов в той или иной форме используют язык программирования PHP. Как и многие другие языки, он имеет открытый исходный код, что означает, что код языка общедоступен и доступен для редактирования.

Конечно, существуют средства защиты, гарантирующие, что никто не сможет войти и изменить исходный код языка. Но на этой неделе эти средства защиты не сработали.

Хакеры смогли изменить код PHP, чтобы любой, у кого есть определенный пароль («zerodium»), мог запускать любой код на веб-сайте, работающем на PHP. Таким образом, они могли бы взломать большую часть Интернета, если бы эта попытка увенчалась успехом.

К счастью, разработчики заметили изменение в течение нескольких часов и исправили его. Затем хакеры попытались во второй раз, но, конечно, теперь люди были начеку и сразу заметили. Именно тогда разработчики решили, что пришло время внедрить более постоянное исправление.

Видите ли, как и многие проекты по программированию, особенно проекты с открытым исходным кодом, PHP полагается на технологию под названием Git для контроля версий. С Git авторизованные пользователи могут вносить изменения в код, но все предыдущие версии сохраняются. Вы можете точно видеть, что и где было изменено, и даже выбрать, сохранить или отклонить изменения.

GitHub, вероятно, является самым известным хостом для проектов, использующих Git, и на GitHub есть репозиторий PHP. Но до сих пор этот репозиторий был просто копией основного, который размещался на сервере, специфичном для PHP.

По словам разработчиков, на этом частном сервере Git должна быть какая-то уязвимость, которая позволила хакерам изменить код PHP. Поэтому они сделали простую и, вероятно, умную вещь: они отключили частный сервер и решили с этого момента просто разместить репозиторий на GitHub.

На заре Git для PHP, возможно, имело смысл иметь собственную технологию для размещения проекта. Но вся цель GitHub — безопасно размещать такие проекты, и у них гораздо больше ресурсов, предназначенных для защиты от хакеров. Переключение просто имело смысл.

Итак, это была страшная неделя для PHP. Но благодаря быстрым и решительным действиям разработчиков Интернет стал намного безопаснее.