To jsem fakt ani nechtěl vědět...
# /bin/cgi
Content-Type: text/html
<html><head><title>PHP/FI</title></head><body><h1>PHP/FI Version 2.0.1</h1>by Rasmus Lerdorf (<a href="mailto:rasmus@lerdorf.on.ca">rasmus@lerdorf.on.ca</a>)<p>The PHP/FI Web Site is at <a href="http://php.iquest.net/">http://php.iquest.net/</a><p>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.<p>
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.<p>
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.<p>
<hr><b><i>Unix version:</i></b> XXX YYY 2.6.32.68 #1 Thu May 26 12:26:37 EEST 2016 mips unknown
<hr><b><i>Environment:</i></b><pre>USER=ubnt
HOME=/etc/persistent
SSH_TTY=/dev/pts/0
PS1=XM.v5.6.6#
LOGNAME=ubnt
TERM=xterm-256color
PATH=/usr/bin:/bin:/usr/sbin:/sbin
SHELL=/bin/sh
PWD=/var/etc/persistent
SSH_CONNECTION=
PHP_SELF=
</pre>
<hr>
<b>Working Directory:</b> <i>/var/etc/persistent</i><br>
<b>Include Path:</b> <i>.</i><br>
<b>FlatFile support enabled</b><br>
soubor "cgi" je binárka z firmwaru AirOS (fw verze 5.6.3), samozřejmě se vyskytuje i v nišších verzích, kde je zranitelná.
Ta zmínka o php2
a) Vychází z popisu chyby na exploitdb - It's possible to overwrite any file (and create new ones) on AirMax systems, because the "php2" (maybe because of a patch) don't verify
B) Pokud si tu binárku "cgi" pustíte, tak je to php interpret.
Můžete si zkusit napsat i primitivní soubor.php a pak jej spustit
#/bin/cgi soubor.php
Pokud jej pustíte bez parametru, uvidíte zde ten vypsaný výpis.
V čem je problém, vyjma té zranitelnosti, že AirOS používá "staré phpko?" Pro jeho potřeby stačí.
V čem je problém?
Těch zranitelností tam může být(a nejspíš je) víc. Takto stará verze se někde léta válí bez povšimnutí a jakékoliv údržby. Pak si nekdo všimne, že ji nějaký mamlas nacpal do nového zařízení a začne se o to zajímat... Samozřejmě, že má během krátké doby doslova žně nedostatků té dávno neudržované verze...
Já chápu, proč to použili - je to jednoduché a malé. Ale takové uvažování je v tomto případě velmi krátkozraké.
Ja uz se delsi dobu snazim rozbalit, upravit a pote zase zabalit UBNT firmware.
Bezvysledne.
Ptal jsem se i tady na foru: http://forum.root.cz/index.php?topic=13244
Vite nekdo, jak na to?
Dost by mi to pomohlo, nejenom kvuli motherfucker viru.
"Spravny postup: Flashnout OpenWRT!"
A prijit tim o moznosti TDMA, centralizovane spravy, atd... Opravdu "spravny" postup ;-))
Zamyslete se proc UBNT investovalo do HW locku (FW rozezna origos UBNT HW od generickeho) a dojde Vam ze spousta lidi by spis rada udelala pravy opak.
Aloha ve spolek
jestli-ze opravdu nemuzete provest upgrade, tak dle meho nazoru firewall urcite staci(doporucuji upgrade+firewall), pokud se teda bavime o chybe zranitelne skrz webserver.
(cetl jsem, ze snad ve firmwarech 5.3 a nizsich byl i firewall neucinny - NECHAPU UBNT?)
1. na wlan casti firewallem riznu vse, krom treba nejakych IP
2. Pres IP alias, nebo pres IP alias na tagged vlan, muzu nahodit servisniIP, kterou nahodim na LAN a firewall nastavim tak, ze muzu z lanu pristupovat pouze na tu servisni IP(/30), ktera je samozrejme rozdilna od toho, co zakos pouziva jako default gw, zbytek drop
A nebo z lanu pristup zakazu uplne, a kdyz se neco stane, tak jedine factory-reset(neni uplne prakticke, nutny fyzicky pristup k antene -> zabere spoustu casu)
takze asi tak
M.