SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 19.12.2016 12:25:07

tfox
Участник
Зарегистрирован: 09.02.2015
Сообщений: 3

Это SQL-инъекция на сервер? Что делать?

Всем привет.

У меня виртуальный сервер на Ubuntu 14 (Nginx+Apache+MySql) Сайты на WordPress

В error.log сервера apache появляется такая хрень. После, чего сервер становится перегруженым и падает.

Объясните новичку что это такое?
Я на гуглил, что это атака в ввиде SQL -инъекции. Это так? Как с этим бороться?

Буду Вам благодарен за любой совет?


[Mon Dec 19 10:43:17.992197 2016] [:error] [pid 25428] [client 37.232.180.93:40030] \xd0\x91\xd0\xb0\xd0\xb7\xd0\xb0 \xd0\xb4\xd0\xb0\xd0\xbd\xd0\xbd\xd1\x8b\xd1\x85 WordPress \xd0\xb2\xd0\xbe\xd0\xb7\xd0\xb2\xd1\x80\xd0\xb0\xd1\x82\xd0\xb8\xd0\xbb\xd0\xb0 \xd0\xbe\xd1\x88\xd0\xb8\xd0\xb1\xd0\xba\xd1\x83 Lost connection to MySQL server during query \xd0\xb2 \xd0\xbe\xd1\x82\xd0\xb2\xd0\xb5\xd1\x82 \xd0\xbd\xd0\xb0 \xd0\xb7\xd0\xb0\xd0\xbf\xd1\x80\xd0\xbe\xd1\x81 SELECT * FROM my_posts WHERE ID = 245 LIMIT 1, \xd0\xb2\xd1\x8b\xd0\xbf\xd0\xbe\xd0\xbb\xd0\xbd\xd0\xb5\xd0\xbd\xd0\xbd\xd1\x8b\xd0\xb9 require('wp-blog-header.php'), require_once('wp-includes/template-loader.php'), do_action('template_redirect'), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, twentytwelve_content_width, is_page_template, get_page_template_slug, get_post, WP_Post::get_instance

[Mon Dec 19 10:43:17.992445 2016] [:error] [pid 29003] [client 46.163.173.103:40111] \xd0\x91\xd0\xb0\xd0\xb7\xd0\xb0 \xd0\xb4\xd0\xb0\xd0\xbd\xd0\xbd\xd1\x8b\xd1\x85 WordPress \xd0\xb2\xd0\xbe\xd0\xb7\xd0\xb2\xd1\x80\xd0\xb0\xd1\x82\xd0\xb8\xd0\xbb\xd0\xb0 \xd0\xbe\xd1\x88\xd0\xb8\xd0\xb1\xd0\xba\xd1\x83 Lost connection to MySQL server during query \xd0\xb2 \xd0\xbe\xd1\x82\xd0\xb2\xd0\xb5\xd1\x82 \xd0\xbd\xd0\xb0 \xd0\xb7\xd0\xb0\xd0\xbf\xd1\x80\xd0\xbe\xd1\x81 SELECT DISTINCT(label) FROM my_wp_rp_tags WHERE post_id=14549 ORDER BY weight desc;, \xd0\xb2\xd1\x8b\xd0\xbf\xd0\xbe\xd0\xbb\xd0\xbd\xd0\xb5\xd0\xbd\xd0\xbd\xd1\x8b\xd0\xb9 require('wp-blog-header.php'), require_once('wp-includes/template-loader.php'), include('/themes/iconic-one/single.php'), get_header, locate_template, load_template, require_once('/themes/iconic-one/header.php'), wp_head, do_action('wp_head'), call_user_func_array, wp_rp_head_resources

Неактивен

 

#2 19.12.2016 13:00:01

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3878

Re: Это SQL-инъекция на сервер? Что делать?

Это не инъекции, а просто зафиксирован запрос (простой), при котором сервер упал по внешним причинам. Вот текст аналогичной ошибки на английском:
http://stackoverflow.com/questions/3755 … -for-query

SELECT option_value FROM wp_options WHERE option_name =
'_wp_session_3a7889923217a8890a3a44f073b9f57f' LIMIT 1
made by require('wp-blog-header.php'), require_once('wp-load.php'),
require_once('wp-config.php'), require_once('wp-settings.php'),
do_action('plugins_loaded'), call_user_func_array, NF_Session->init,
WP_Session::get_instance, WP_Session->__construct,
WP_Session->read_data, get_option


require_once относятся не к запросу, а к тексту ошибки (место в коде, где она произошла).

Неактивен

 

#3 19.12.2016 16:38:23

gotlib
Участник
Зарегистрирован: 29.09.2016
Сообщений: 12

Re: Это SQL-инъекция на сервер? Что делать?

А что у него за \xd0\x91\xd0 ? Это какие-то символы ?

цитата написал:

require_once относятся не к запросу, а к тексту ошибки (место в коде, где она произошла).

А почему нет номера строки, как обычно у пхп-ошибок ?

Неактивен

 

#4 19.12.2016 17:38:26

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3878

Re: Это SQL-инъекция на сервер? Что делать?

Полагаю, что это перевод на русский язык "made by", скорее всего в юникоде. Обработчик ошибки мог быть переопределен вордпрессом.

Неактивен

 

#5 05.01.2017 00:01:17

anseme
Участник
Зарегистрирован: 04.01.2017
Сообщений: 8

Re: Это SQL-инъекция на сервер? Что делать?

Используйте для Wordpress плагин или просто руками пропишите в .htaccess

# 6G FIREWALL/BLACKLIST
# @ <a href="https://perishablepress.com/6g/">https://perishablepress.com/6g/</a>

# 6G:[QUERY STRINGS]
<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{QUERY_STRING} (eval\() [NC,OR]
    RewriteCond %{QUERY_STRING} (127\.0\.0\.1) [NC,OR]
    RewriteCond %{QUERY_STRING} ([a-z0-9]{2000,}) [NC,OR]
    RewriteCond %{QUERY_STRING} (javascript:)(.*)(<img src="img/smilies/wink.png" width="15" height="15" alt="wink" /> [NC,OR]
    RewriteCond %{QUERY_STRING} (base64_encode)(.*)(\() [NC,OR]
    RewriteCond %{QUERY_STRING} (GLOBALS|REQUEST)(<img src="img/smilies/neutral.png" width="15" height="15" alt="neutral" />\[|%) [NC,OR]
    RewriteCond %{QUERY_STRING} (<|%3C)(.*)script(.*)(>|%3) [NC,OR]
    RewriteCond %{QUERY_STRING} (\\|\.\.\.|\.\./|~|`|<|>|\|) [NC,OR]
    RewriteCond %{QUERY_STRING} (boot\.ini|etc/passwd|self/environ) [NC,OR]
    RewriteCond %{QUERY_STRING} (thumbs?(_editor|open)?|tim(thumb)?)\.php [NC,OR]
    RewriteCond %{QUERY_STRING} (\'|\")(.*)(drop|insert|md5|select|union) [NC]
    RewriteRule .* - [F]
</IfModule>

# 6G:[REQUEST METHOD]
<IfModule mod_rewrite.c>
    RewriteCond %{REQUEST_METHOD} ^(connect|debug|move|put|trace|track) [NC]
    RewriteRule .* - [F]
</IfModule>

# 6G:[REFERRERS]
<IfModule mod_rewrite.c>
    RewriteCond %{HTTP_REFERER} ([a-z0-9]{2000,}) [NC,OR]
    RewriteCond %{HTTP_REFERER} (semalt.com|todaperfeita) [NC]
    RewriteRule .* - [F]
</IfModule>

# 6G:[REQUEST STRINGS]
<IfModule mod_alias.c>
    RedirectMatch 403 (?i)([a-z0-9]{2000,})
    RedirectMatch 403 (?i)(https?|ftp|php)<img src="img/smilies/hmm.png" width="15" height="15" alt="hmm" />
    RedirectMatch 403 (?i)(base64_encode)(.*)(\()
    RedirectMatch 403 (?i)(=\\\'|=\\%27|/\\\'/?)\.
    RedirectMatch 403 (?i)/(\$(\&)?|\*|\"|\.|,|&|&amp;?)/?$
    RedirectMatch 403 (?i)(\{0\}|\(/\(|\.\.\.|\+\+\+|\\\"\\\")
    RedirectMatch 403 (?i)(~|`|<|>|<img src="img/smilies/neutral.png" width="15" height="15" alt="neutral" />;|,|%|\\|\s|\{|\}|\[|\]|\|)
    RedirectMatch 403 (?i)/(<img src="img/smilies/neutral.png" width="15" height="15" alt="neutral" />\$&|_mm|cgi-|etc/passwd|muieblack)
    RedirectMatch 403 (?i)(&pws=0|_vti_|\(null\)|\{\$itemURL\}|echo(.*)kae|etc/passwd|eval\(|self/environ)
    RedirectMatch 403 (?i)\.(aspx?|bash|bak?|cfg|cgi|dll|exe|git|hg|ini|jsp|log|mdb|out|sql|svn|swp|tar|rar|rdf)$
    RedirectMatch 403 (?i)/(^$|(wp-)?config|mobiquo|phpinfo|shell|sqlpatch|thumb|thumb_editor|thumbopen|timthumb|webshell)\.php
</IfModule>

# 6G:[USER AGENTS]
<IfModule mod_setenvif.c>
    SetEnvIfNoCase User-Agent ([a-z0-9]{2000,}) bad_bot
    SetEnvIfNoCase User-Agent (archive.org|binlar|casper|checkpriv|choppy|clshttp|cmsworld|diavol|dotbot|extract|feedfinder|flicky|g00g1e|harvest|heritrix|httrack|kmccrew|loader|miner|nikto|nutch|planetwork|postrank|purebot|pycurl|python|seekerspider|siclab|skygrid|sqlmap|sucker|turnit|vikspider|winhttp|xxxyy|youda|zmeu|zune) bad_bot
   
    # Apache < 2.3
    <IfModule !mod_authz_core.c>
        Order Allow,Deny
        Allow from all
        Deny from env=bad_bot
    </IfModule>

    # Apache >= 2.3
    <IfModule mod_authz_core.c>
        <RequireAll>
            Require all Granted
            Require not env bad_bot
        </RequireAll>
    </IfModule>
</IfModule>

# 6G:[BAD IPS]
<Limit GET HEAD OPTIONS POST PUT>
    Order Allow,Deny
    Allow from All
    # uncomment/edit/repeat next line to block IPs
    # Deny from 123.456.789
</Limit>



Подробнее: https://perishablepress.com/6g/

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson