Современный PHP уже не про магические кавычки. Ругать его сейчас практически не за что. Тем не менее, популярность и низкий порог входа делают своё. И много кодеров, до сих пор, продолжают тянуть устаревшую жуть языка.
С одной из них, приходится сталкиваться время от времени. Ею является эмуляция Register Globlas. То ли из-за банальной лени, то ли из-за распиздяйства, разработчиком в проект добавляется костыль аля extract($_GET) или $$v в цикле. Например:
https://expressionengine.com/?this=1
https://www.whmcs.com/members/?this=1
https://www.1c-bitrix.ru/auth/?this=1
К чему такие финты приводят, можно почитать на нашем форуме - $this - это специальная переменная. А теперь взгляните на скриншот и попробуйте найти уязвимость.
Ответ: https://expressionengine.com/?protected=1&_SERVER=1
Тем самым, в условном проекте использующем эту ветку CI, можно зануллить глобальную переменную $is_installed и переустановить приложение.
Вот так, гвозди можно забивать микроскопом. Но как всегда, во всём обвинят PHP 🤷♂️