banner

[Rule] Rules  [Home] Main Forum  [Portal] Portal  
[Members] Member Listing  [Statistics] Statistics  [Search] Search  [Reading Room] Reading Room 
[Register] Register  
[Login] Loginhttp  | https  ]
 
Forum Index Thảo luận bảo mật Nhờ tư vấn về bảo mật (DDos - X-Flash)  XML
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 13/11/2010 09:21:23 (+0700) | #1 | 224813
[Avatar]
1mp0ss1bl3
Member

[Minus]    0    [Plus]
Joined: 14/02/2008 21:32:58
Messages: 41
Location: ...
Offline
[Profile] [PM]
Chào mọi người,

Cả tuần nay, website của mình bị X-Flash DDOS 1 cách dồn dập. Qua nhiều nguồn tham khảo, nhất là HVA, mình đã áp dụng các biện pháp sau để hạn chế và ngăn chặn bớt. Tuy nhiên, kết quả vẫn thê thảm smilie .

Sơ lược những gì mình đã làm:

- Tối ưu TCP/IP stack ở kernel.
- Thay đổi tham số Apache.
- Cản lọc bớt ở iptables.
- Cài đặt mod-security, mod-evasive và cản lọc ở Apache.

Cụ thể như sau:

1. Dấu hiệu nhận biết:

- Thông tin các cú SYN server:

Code:
netstat -nat | grep SYN

tcp        0      0 69.64.56.140:80         1.53.25.120:56472       SYN_RECV
tcp        0      0 69.64.56.140:80         113.23.71.96:64553      SYN_RECV
tcp        0      0 69.64.56.140:80         123.20.119.94:42780     SYN_RECV
tcp        0      0 69.64.56.140:80         58.186.67.208:3426      SYN_RECV
tcp        0      0 69.64.56.140:80         118.71.152.184:11671    SYN_RECV
tcp        0      0 69.64.56.140:80         118.69.35.164:62809     SYN_RECV
tcp        0      0 69.64.56.140:80         113.168.15.135:3827     SYN_RECV
tcp        0      0 69.64.56.140:80         123.20.119.94:42839     SYN_RECV
tcp        0      0 69.64.56.140:80         118.69.35.164:63879     SYN_RECV
tcp        0      0 69.64.56.140:80         113.23.71.96:61159      SYN_RECV
tcp        0      0 69.64.56.140:80         118.69.35.164:61049     SYN_RECV
tcp        0      0 69.64.56.140:80         118.69.35.164:60983     SYN_RECV
tcp        0      0 69.64.56.140:80         123.20.119.94:42781     SYN_RECV
tcp        0      0 69.64.56.140:80         118.69.35.164:61595     SYN_RECV
tcp        0      0 69.64.56.140:80         113.23.71.96:64531      SYN_RECV
tcp        0      0 69.64.56.140:80         113.168.15.135:4934     SYN_RECV
tcp        0      0 69.64.56.140:80         118.69.35.164:65243     SYN_RECV
tcp        0      0 69.64.56.140:80         118.69.35.164:60111     SYN_RECV
tcp        0      0 69.64.56.140:80         118.69.35.164:59943     SYN_RECV
tcp        0      0 69.64.56.140:80         113.168.15.135:4933     SYN_RECV
tcp        0      0 69.64.56.140:80         113.23.71.96:64205      SYN_RECV
tcp        0      0 69.64.56.140:80         113.161.94.195:51861    SYN_RECV
tcp        0      0 69.64.56.140:80         113.23.71.96:60131      SYN_RECV
tcp        0      0 69.64.56.140:80         118.69.35.164:64899     SYN_RECV
tcp        0      0 69.64.56.140:80         113.23.71.96:64279      SYN_RECV


- 1 phần access log của apache:

Code:
58.187.103.83 - - [13/Nov/2010:08:56:45 +0700] "GET / HTTP/1.1" 403 745 "http://xuongphim.com/ver11/mediaplayer.swf" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.44 Safari/534.7"
58.187.103.83 - - [13/Nov/2010:08:56:46 +0700] "GET / HTTP/1.1" 403 744 "http://xuongphim.com/ver11/mediaplayer.swf" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.44 Safari/534.7"
58.187.103.83 - - [13/Nov/2010:08:56:46 +0700] "GET / HTTP/1.1" 403 745 "http://xuongphim.com/ver11/mediaplayer.swf" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.44 Safari/534.7"
58.187.103.83 - - [13/Nov/2010:08:56:46 +0700] "GET / HTTP/1.1" 403 744 "http://xuongphim.com/ver11/mediaplayer.swf" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.44 Safari/534.7"
58.187.103.83 - - [13/Nov/2010:08:56:46 +0700] "GET / HTTP/1.1" 403 745 "http://xuongphim.com/ver11/mediaplayer.swf" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.44 Safari/534.7"
58.187.103.83 - - [13/Nov/2010:08:56:47 +0700] "GET / HTTP/1.1" 403 744 "http://xuongphim.com/ver11/mediaplayer.swf" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.44 Safari/534.7"
58.187.103.83 - - [13/Nov/2010:08:56:47 +0700] "GET / HTTP/1.1" 403 745 "http://xuongphim.com/ver11/mediaplayer.swf" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.44 Safari/534.7"
58.187.103.83 - - [13/Nov/2010:08:56:47 +0700] "GET / HTTP/1.1" 403 744 "http://xuongphim.com/ver11/mediaplayer.swf" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.44 Safari/534.7"
58.187.103.83 - - [13/Nov/2010:08:56:48 +0700] "GET / HTTP/1.1" 403 745 "http://xuongphim.com/ver11/mediaplayer.swf" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.44 Safari/534.7"
58.187.103.83 - - [13/Nov/2010:08:56:48 +0700] "GET / HTTP/1.1" 403 709 "http://xuongphim.com/ver11/mediaplayer.swf" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.44 Safari/534.7"
58.187.103.83 - - [13/Nov/2010:08:56:48 +0700] "GET / HTTP/1.1" 403 744 "http://xuongphim.com/ver11/mediaplayer.swf" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.44 Safari/534.7"
58.187.103.83 - - [13/Nov/2010:08:56:49 +0700] "GET / HTTP/1.1" 403 744 "http://xuongphim.com/ver11/mediaplayer.swf" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.44 Safari/534.7"
58.187.103.83 - - [13/Nov/2010:08:56:49 +0700] "GET / HTTP/1.1" 403 744 "http://xuongphim.com/ver11/mediaplayer.swf" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.44 Safari/534.7"
58.187.103.83 - - [13/Nov/2010:08:56:49 +0700] "GET / HTTP/1.1" 403 744 "http://xuongphim.com/ver11/mediaplayer.swf" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.44 Safari/534.7"
58.187.103.83 - - [13/Nov/2010:08:56:50 +0700] "GET / HTTP/1.1" 403 744 "http://xuongphim.com/ver11/mediaplayer.swf" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.44 Safari/534.7"
58.187.103.83 - - [13/Nov/2010:08:56:50 +0700] "GET / HTTP/1.1" 403 744 "http://xuongphim.com/ver11/mediaplayer.swf" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.44 Safari/534.7"
58.187.103.83 - - [13/Nov/2010:08:56:50 +0700] "GET / HTTP/1.1" 403 744 "http://xuongphim.com/ver11/mediaplayer.swf" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.44 Safari/534.7"
58.187.103.83 - - [13/Nov/2010:08:56:51 +0700] "GET / HTTP/1.1" 403 744 "http://xuongphim.com/ver11/mediaplayer.swf" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.44 Safari/534.7"
58.187.103.83 - - [13/Nov/2010:08:56:51 +0700] "GET / HTTP/1.1" 403 744 "http://xuongphim.com/ver11/mediaplayer.swf" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.44 Safari/534.7"
58.187.103.83 - - [13/Nov/2010:08:56:52 +0700] "GET / HTTP/1.1" 403 709 "http://xuongphim.com/ver11/mediaplayer.swf" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.44 Safari/534.7"
123.20.23.64 - - [13/Nov/2010:09:06:08 +0700] "GET / HTTP/1.1" 400 735 "http://secuyou.co.cc/logo.swf" "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; SIMBAR={75530FC6-8C96-11DD-BA4E-AA56B0F29AA1}; GTB0.0; ShopperReports 3.0.487.0; SRS_IT_E879027FB476585334AA97)"
117.0.8.153 - - [13/Nov/2010:09:18:08 +0700] "GET / HTTP/1.1" 400 735 "http://secuyou.co.cc/logo.swf" "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0)"
123.26.252.3 - - [13/Nov/2010:09:23:38 +0700] "GET / HTTP/1.1" 400 735 "http://secuyou.co.cc/logo.swf" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727)"



- Chụp package để phân tích: tcpdump -s0 -i eth0 -p tcp port 80

Xem những gói HTTP thì thấy thông tin sau:

Code:
GET / HTTP/1.1

Accept: */*

Accept-Language: en-US

Referer: http://secuyou.co.cc/logo.swf

x-flash-version: 10,1,85,3

Accept-Encoding: gzip, deflate

User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; GTB6.6)

Host: vuvu.mobi

Connection: Keep-Alive

Cookie: PHPSESSID=66ff22765d9540838022fda33fb8ee19

GET / HTTP/1.1

Host: vuvu.mobi

Connection: keep-alive

Referer: http://xuongphim.com/ver11/mediaplayer.swf

Accept: */*

User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.44 Safari/534.7

Accept-Encoding: gzip,deflate,sdch

Accept-Language: en-US,en;q=0.8

Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3

Cookie: __gads=ID=96466adc00e47a3b:T=1285772916:S=ALNI_MZ8BbwCmt_STaXhaQdpAbHkRO75pg; __utmz=87422111.1285772931.1.1.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmctr=phim%20%22huyen%20thoai%20tran%20chan%22; __utma=87422111.1139690866.1285772924.1285772924.1285772924.1



HTTP/1.1 403 Forbidden

Date: Thu, 11 Nov 2010 15:45:35 GMT

Server: Apache/2.2.8 (Ubuntu) mod_ssl/2.2.8 OpenSSL/0.9.8g mod_python/3.3.1 Python/2.5.2 PHP/5.2.4-2ubuntu5.12 with Suhosin-Patch mod_perl/2.0.3 Perl/v5.8.8

Content-Length: 403

Keep-Alive: timeout=5, max=2

Connection: Keep-Alive

Content-Type: text/html; charset=iso-8859-1



<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>403 Forbidden</title>
</head><body>
<h1>Forbidden</h1>
<p>You don't have permission to access /
on this server.</p>
<hr>
<address>Apache/2.2.8 (Ubuntu) mod_ssl/2.2.8 OpenSSL/0.9.8g mod_python/3.3.1 Python/2.5.2 PHP/5.2.4-2ubuntu5.12 with Suhosin-Patch mod_perl/2.0.3 Perl/v5.8.8 Server at vuvu.mobi Port 80</address>
</body></html>
GET / HTTP/1.1

Host: vuvu.mobi

Connection: keep-alive

Referer: http://xuongphim.com/ver11/mediaplayer.swf

Accept: */*

User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.44 Safari/534.7

Accept-Encoding: gzip,deflate,sdch

Accept-Language: en-US,en;q=0.8

Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3

Cookie: __gads=ID=96466adc00e47a3b:T=1285772916:S=ALNI_MZ8BbwCmt_STaXhaQdpAbHkRO75pg; __utmz=87422111.1285772931.1.1.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmctr=phim%20%22huyen%20thoai%20tran%20chan%22; __utma=87422111.1139690866.1285772924.1285772924.1285772924.1



HTTP/1.1 403 Forbidden

Date: Thu, 11 Nov 2010 15:45:36 GMT

Server: Apache/2.2.8 (Ubuntu) mod_ssl/2.2.8 OpenSSL/0.9.8g mod_python/3.3.1 Python/2.5.2 PHP/5.2.4-2ubuntu5.12 with Suhosin-Patch mod_perl/2.0.3 Perl/v5.8.8

Content-Length: 403

Keep-Alive: timeout=5, max=1

Connection: Keep-Alive

Content-Type: text/html; charset=iso-8859-1



<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>403 Forbidden</title>
</head><body>
<h1>Forbidden</h1>
<p>You don't have permission to access /
on this server.</p>
<hr>
<address>Apache/2.2.8 (Ubuntu) mod_ssl/2.2.8 OpenSSL/0.9.8g mod_python/3.3.1 Python/2.5.2 PHP/5.2.4-2ubuntu5.12 with Suhosin-Patch mod_perl/2.0.3 Perl/v5.8.8 Server at vuvu.mobi Port 80</address>
</body></html>
GET / HTTP/1.1

Host: vuvu.mobi

Connection: keep-alive

Referer: http://xuongphim.com/ver11/mediaplayer.swf

Accept: */*

User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.44 Safari/534.7

Accept-Encoding: gzip,deflate,sdch

Accept-Language: en-US,en;q=0.8

Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3

Cookie: __gads=ID=96466adc00e47a3b:T=1285772916:S=ALNI_MZ8BbwCmt_STaXhaQdpAbHkRO75pg; __utmz=87422111.1285772931.1.1.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmctr=phim%20%22huyen%20thoai%20tran%20chan%22; __utma=87422111.1139690866.1285772924.1285772924.1285772924.1



HTTP/1.1 403 Forbidden

Date: Thu, 11 Nov 2010 15:45:36 GMT

Server: Apache/2.2.8 (Ubuntu) mod_ssl/2.2.8 OpenSSL/0.9.8g mod_python/3.3.1 Python/2.5.2 PHP/5.2.4-2ubuntu5.12 with Suhosin-Patch mod_perl/2.0.3 Perl/v5.8.8

Content-Length: 403

Connection: close

Content-Type: text/html; charset=iso-8859-1



<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>403 Forbidden</title>
</head><body>
<h1>Forbidden</h1>
<p>You don't have permission to access /
on this server.</p>
<hr>
<address>Apache/2.2.8 (Ubuntu) mod_ssl/2.2.8 OpenSSL/0.9.8g mod_python/3.3.1 Python/2.5.2 PHP/5.2.4-2ubuntu5.12 with Suhosin-Patch mod_perl/2.0.3 Perl/v5.8.8 Server at vuvu.mobi Port 80</address>
</body></html>


- Số cú X-Flash bị cản bởi mod-security:

Code:
cat /etc/modsecurity/logs/modsec_debug.log | grep Pattern | wc -l
7084


Đúng ra còn nhiều hơn nhưng do 1 số đã bị chặn bởi mod-evasive.

2. Thông số thay đổi ở kernel:

Code:
sysctl -a

net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_synack_retries = 3
net.ipv4.tcp_max_syn_backlog = 2048


3. Thông số thay đổi ở apache:

Code:
Timeout 200
KeepAlive On
MaxKeepAliveRequests 500
KeepAliveTimeout 5

<IfModule mpm_prefork_module>
    StartServers          20
    MinSpareServers       20
    MaxSpareServers      50
    ServerLimit         500
    MaxClients          500
    MaxRequestsPerChild  10000
</IfModule>


4. Cản lọc bớt ở iptables mình dùng bộ rule sau:

Code:
iptables -N SYN_FLOOD
iptables -A INPUT -p tcp --syn --dport 80 -j SYN_FLOOD
iptables -A SYN_FLOOD -m limit --limit 2/m --limit-burst 20 -j RETURN
iptables -A SYN_FLOOD -j DROP


5. Pattern dùng ở apache module:

Code:
mode-security

[code]SecRule REQUEST_HEADERS_NAMES "x-flash-version" "deny,status:400"
SecRule "HTTP_REFERER" "http://secuyou.co.cc/logo.swf"
SecRule "HTTP_REFERER" "http://xuongphim.com/ver11/mediaplayer.swf"

mode-evasive

DOSHashTableSize 3097
DOSPageCount 2
DOSSiteCount 10
DOSPageInterval 1
DOSSiteInterval 1
DOSBlockingPeriod 3600
DOSLogDir /var/log/apache2/mod_evasive


Thông tin con dedicated server:

Code:
cat /proc/cpuinfo

processor       : 6
vendor_id       : GenuineIntel
cpu family      : 6
model           : 23
model name      : Intel(R) Xeon(R) CPU           E5405  @ 2.00GHz
stepping        : 10
cpu MHz         : 1995.002
cache size      : 6144 KB

free -m 

             total       used       free     shared    buffers     cached
Mem:          7995       1385       6609          0         55        195
-/+ buffers/cache:       1135       6860
Swap:         1953        203       1749


Tình trạng hiện tại, chặn/chụp được nhưng cũng không ai vào được site hết smilie

Nhờ mọi người xem giúp có sai hoặc thiếu sót gì chỉ giúp mình. Sẵn tiện cảm ơn các bài viết của anh conmale và loạt bài kí sự đã giúp mình hiểu được nhiều điều.

Thân
To achieve the impossible, one must thing the absurd - to look where everyone else has looked, but to see what no else has seen.
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 13/11/2010 09:48:13 (+0700) | #2 | 224816
CoolMD
Elite Member

[Minus]    0    [Plus]
Joined: 30/06/2003 17:55:22
Messages: 49
Offline
[Profile] [PM]
Mình nghĩ bạn check lại phần iptable rule

iptables -N SYN_FLOOD
iptables -A INPUT -p tcp --syn --dport 80 -j SYN_FLOOD
iptables -A SYN_FLOOD -m limit --limit 2/m --limit-burst 20 -j RETURN
iptables -A SYN_FLOOD -j DROP
 


Định danh rồi rồi drop luôn hỉ
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 13/11/2010 10:16:58 (+0700) | #3 | 224818
[Avatar]
lQ
Moderator

Joined: 29/03/2005 17:06:20
Messages: 494
Offline
[Profile] [PM]
Chạy crontab Phân tích những access log gần nhất của Apache; đứa nào request nhiều thì DROP trên iptables luôn.
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 13/11/2010 10:20:58 (+0700) | #4 | 224819
[Avatar]
1mp0ss1bl3
Member

[Minus]    0    [Plus]
Joined: 14/02/2008 21:32:58
Messages: 41
Location: ...
Offline
[Profile] [PM]
@CoolMD: Xin lỗi, mình không hiểu ý bạn lắm.

@lQ: Mình đã áp dụng cách này, nhưng làm vậy block list của iptables thì nhiều mà kết quả thì vẫn vậy. Vì nguồn tấn công đến từ rất nhiều IP.

Thanks các bạn đã góp ý.
To achieve the impossible, one must thing the absurd - to look where everyone else has looked, but to see what no else has seen.
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 13/11/2010 11:02:22 (+0700) | #5 | 224823
[Avatar]
lQ
Moderator

Joined: 29/03/2005 17:06:20
Messages: 494
Offline
[Profile] [PM]
Tui nghĩ cách tui đề xuất đơn giản và có thể xử lý tốt với nguồn DDoS lên đến 300 zombies. Bạn cứ thử rồi theo dõi so sánh performance (CPU, memory, IO, bandwidth...) trước và sau khi áp dụng xem sao.

Àh nhớ iptables có thêm thì cũng nên có *bớt* nhé smilie.
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 13/11/2010 14:38:06 (+0700) | #6 | 224825
huynhtronghoan
Member

[Minus]    0    [Plus]
Joined: 15/04/2005 23:04:57
Messages: 4
Offline
[Profile] [PM]
Mới dùng Firebug để xem 1 chút thì thấy thằng xuongphim này nó gọi đến 1 cái file cấu hình: http://secuyou.co.cc/site.xml để load lên site nào nó cần DDOS. Mà cái domain secuyou.co.cc này chỉ mới đựoc đăng ký vài ngày thôi, chắc là đã và đang quyết tâm triệt hạ quá. Hix, hiện tại vuvu.mobi đang là nạn nhân liên tục bi request này 1 cách đều đặn.

Với lực lượng vài ngàn user online có nghĩa là có khoảng vài ngàn zombies cùng lúc tấn công, server không chết mới là lạ.

xuongphim này đã rất có 1 đống popup và quảng cáo tùm lum, bi giờ lại thêm cái trò này nữa, biến tất cả các user thành công cụ để tấn công người khác.

ACE nên cẩn thận khi vào site này khi vô tình trở thành công cụ để người ta lợi dụng. hix.
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 13/11/2010 18:40:01 (+0700) | #7 | 224831
myquartz
Member

[Minus]    0    [Plus]
Joined: 04/01/2005 04:58:30
Messages: 563
Offline
[Profile] [PM]
Bạn thử áp dụng giải pháp sau:
1. Tắt KeepAlive đi (Off) nó, cái này sẽ giúp cho mỗi child process của httpd giải phóng tài nguyên ngay khi kết thúc request và đón thêm connection khác. Tuy nó sẽ làm khách hàng truy cập chậm hơn 1 chút nhưng ko tệ quá đâu.

2. Sửa config và thêm 1 đoạn cho httpd như sau:
Code:
RewriteEngine On
RewriteBase   /
RewriteCond  %{HTTP_REFERER} xuongphim\.com
RewriteRule  ^/ /youarevictim.html  [L]

<Location /youarevictim.html>
        AuthType Basic
        AuthName "Xin ra khoi xuongphim.com"
        # (Following line optional)
        AuthBasicProvider file
        AuthUserFile /tmp/passwords
        Require user victim
</Location>


3. Tạo 1 file password để bắt phải xác thực:

Code:
htpasswd -c /tmp/passwords victim


Mật khẩu thì bạn đặt đại 1 chuỗi nào đó chỉ bạn biết.

Cách này, nghĩa là nó ép những client vào xuongphim.com mà laij refer sang web của bạn, thì trình duyệt sẽ bật hộp thoại bắt xác thực. Càng nhiều request gửi đến, việc xác thực càng nhiều, mọi người sẽ khó chịu với nó mà có sức ép với chủ site (bị hack hoặc cố tình) buộc họ phải thay đổi.
Cửa sổ xác thực cũng giúp ngăn chỉ có request đầu tiên là tới, các request kế tiếp sẽ phải cancel hộp thoại hoặc ok đại.
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 14/11/2010 15:26:46 (+0700) | #8 | 224871
[Avatar]
conmale
Administrator

Joined: 07/05/2004 23:43:15
Messages: 9353
Location: down under
Offline
[Profile] [PM]
Mấy cái này thì trị không khó đâu. Nếu đã dùng mod_security và iptables thì có thể kết hợp hai cái này một cách dễ dàng. Quan trọng nhất là phải dùng mod_security 2.x thì mới trị được dùng mod_security 1.9.x thì bó tay.

1. Trên httpd.conf (phần virtual host của site đang bị tấn công), thêm mấy dòng này:
Code:
SecAction "phase:1,t:none,pass,nolog,initcol:global=global,initcol:ip=%{remote_addr}"
SecRule REQUEST_URI "^/$" "nolog,phase:1,setvar:ip.ddos=+1,deprecatevar:ip.ddos=30/60,expirevar:ip.ddos=120"
SecRule IP:DDOS "@gt 10" "phase:1,log,msg:'DDoS_from_%{REMOTE_ADDR}',exec:/path/to/blocker.sh"
SecRule IP:DDOS "@gt 5" "phase:1,log,drop,msg:'DDoS'"


2. Nội dung của file blocker.sh như sau:
Code:
#!/bin/bash
/bin/echo +$REMOTE_ADDR >/proc/net/xt_recent/BLACKLIST


3. Trên iptables nên có vài dòng tạo bảng "BLACKLIST" như sau:
Code:
iptables -N blacklist
iptables -A blacklist -j LOG --log-prefix "BLACKLISTING: "
iptables -A blacklist -m recent --name BLACKLIST --set -j DROP
iptables -A INPUT -m recent --name BLACKLIST --update --seconds 60 -j blacklist
chown <account_run_apache> /proc/net/xt_recent/BLACKLIST


* nếu kernel vẫn dùng "recent" table dạng cũ thì phải:
chown <account_run_apache> /proc/net/ipt_recent/BLACKLIST

và blocker.sh phải đổi thành:
/bin/echo +$REMOTE_ADDR >/proc/net/ipt_recent/BLACKLIST

/path/to/blocker.sh nên là một nơi nào đó account chạy apache có thể thấy và execute được và nội dung blocker.sh phải chính xác (từng dấu và khoảng trống như trên) thì mới chạy được.
What bringing us together is stronger than what pulling us apart.
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 14/11/2010 17:38:03 (+0700) | #9 | 224875
huynhtronghoan
Member

[Minus]    0    [Plus]
Joined: 15/04/2005 23:04:57
Messages: 4
Offline
[Profile] [PM]
conmale ơi, vì lượng online user của xuongphim rất lớn, tầm 2500-4000 (http://whos.amung.us/stats/l7ujg4dannls/), thì liệu dùng iptables & mod security của apache có chống đỡ nổi hông, vì số lương IP rải rác khắp nơi và lượng truy cập đồng thời lại cao nữa. Anh có cao kiến gì để phòng thủ trong trường hợp này không.

myquartz ơi, cách của bạn rất tuyệt.

Cám ơn 2 bạn nhiều nhé.
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 14/11/2010 23:08:05 (+0700) | #10 | 224892
[Avatar]
Mr.uot
Member

[Minus]    0    [Plus]
Joined: 16/08/2010 12:56:29
Messages: 2
Location: x-cafe
Offline
[Profile] [PM] [WWW] [Yahoo!]
e vào xưởng phim xong cũng bị dínhsmilie(
nó ra cái này đây

A username and password are being requested by http://vuvu.mobi. The site says: "Xuongphim dang loi dung ban de phat tan virus tan cong DDOS vao vuvu.mobi.Thong tin cua ban dang bi xam pham,vui long dung truy cap ngay lap tuc."  

đành restore lại máy ngay
[size=+1]Hạnh Phúc Nhất Cuộc Đời Mình Là Được Cầm Tay smilie Người Ấy Dù Chỉ Một Lần smilie [/size]
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 15/11/2010 03:22:52 (+0700) | #11 | 224898
[Avatar]
conmale
Administrator

Joined: 07/05/2004 23:43:15
Messages: 9353
Location: down under
Offline
[Profile] [PM]

huynhtronghoan wrote:
conmale ơi, vì lượng online user của xuongphim rất lớn, tầm 2500-4000 http://whos.amung.us/stats/l7ujg4dannls/), thì liệu dùng iptables & mod security của apache có chống đỡ nổi hông, vì số lương IP rải rác khắp nơi và lượng truy cập đồng thời lại cao nữa. Anh có cao kiến gì để phòng thủ trong trường hợp này không.

myquartz ơi, cách của bạn rất tuyệt.

Cám ơn 2 bạn nhiều nhé. 


Cách tốt nhất là bồ thử nghiệm và đưa ra kết luận xem "có chống đỡ nổi không". Đặc biệt, bồ cần hiểu chính xác những gì tớ đưa ra là gì (và có tác dụng gì). Tớ không có thói quen đưa ra giải pháp cho vui smilie .

PS: cỡ mod_security và iptables mà còn sợ "đỡ không nổi" thì mấy giải pháp dùng "basic auth" và "rewrite" trên apache thì làm sao mà chịu nổi.

Đừng dùng mod_evasive vì nó đang đóng góp cho việc "từ chối dịch vụ" đó.
What bringing us together is stronger than what pulling us apart.
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 15/11/2010 11:15:11 (+0700) | #12 | 224910
huynhtronghoan
Member

[Minus]    0    [Plus]
Joined: 15/04/2005 23:04:57
Messages: 4
Offline
[Profile] [PM]
Hôm qua ngồi xem hết 1 lượt về "Ký sự các vụ DDoS đến HVA" thì mới sáng ra 1 số điều hay + thêm những hàm ý "sâu xa" của conmale về sức mạnh của iptables & mod security thì đã thấy yên tâm hơn rồi, sẽ có cách giải quyết vụ này. smilie
Để nghiên cứu và thử nghiệm rồi sẽ báo cáo kết quả cho anh em biết. smilie
Cám ơn conmale.
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 15/11/2010 12:53:09 (+0700) | #13 | 224920
[Avatar]
xnohat
Moderator

Joined: 30/01/2005 13:59:19
Messages: 1210
Location: /dev/null
Offline
[Profile] [PM] [Email] [WWW] [Yahoo!] [MSN]
Nick "gac_kiem28";
Tên "Nguyễn Trường Sang";
Ngày sinh "15 dec 1991";
yahoo "gac_kiem28@yahoo.com";

Định danh của người tấn công chăng ?
iJust clear, "What I need to do and how to do it"/i
br
brBox tán gẫu dời về: http://www.facebook.com/hvaonline
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 15/11/2010 13:05:49 (+0700) | #14 | 224923
[Avatar]
1mp0ss1bl3
Member

[Minus]    0    [Plus]
Joined: 14/02/2008 21:32:58
Messages: 41
Location: ...
Offline
[Profile] [PM]
Code:
Nick "gac_kiem28";
Tên "Nguyễn Trường Sang";
Ngày sinh "15 dec 1991";
yahoo "gac_kiem28@yahoo.com";


Cái này xnohat thấy trong action-script của cái Flash từ xuongphim phải không? smilie

@Anh conmale: Tối qua em có thử cách của anh nhưng có lỗi với file blocker.sh nên em tạm thời chưa apply. Để chiều về em thử lại và sẽ báo kết quả sau. Phía cty mẹ mới đổi cái gì mà bị tịt hết rồi, vào HVA cũng không được smilie
To achieve the impossible, one must thing the absurd - to look where everyone else has looked, but to see what no else has seen.
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 15/11/2010 14:09:39 (+0700) | #15 | 224927
myquartz
Member

[Minus]    0    [Plus]
Joined: 04/01/2005 04:58:30
Messages: 563
Offline
[Profile] [PM]

conmale wrote:

huynhtronghoan wrote:
conmale ơi, vì lượng online user của xuongphim rất lớn, tầm 2500-4000 http://whos.amung.us/stats/l7ujg4dannls/), thì liệu dùng iptables & mod security của apache có chống đỡ nổi hông, vì số lương IP rải rác khắp nơi và lượng truy cập đồng thời lại cao nữa. Anh có cao kiến gì để phòng thủ trong trường hợp này không.

myquartz ơi, cách của bạn rất tuyệt.

Cám ơn 2 bạn nhiều nhé. 


Cách tốt nhất là bồ thử nghiệm và đưa ra kết luận xem "có chống đỡ nổi không". Đặc biệt, bồ cần hiểu chính xác những gì tớ đưa ra là gì (và có tác dụng gì). Tớ không có thói quen đưa ra giải pháp cho vui smilie .

PS: cỡ mod_security và iptables mà còn sợ "đỡ không nổi" thì mấy giải pháp dùng "basic auth" và "rewrite" trên apache thì làm sao mà chịu nổi.

Đừng dùng mod_evasive vì nó đang đóng góp cho việc "từ chối dịch vụ" đó. 


Hihì, cách của em không phải để chống đỡ cuộc tấn công, mà tấn công lại bằng các hộp thoại cho các user vào site bị dính x-flash. Đây là cách để gây khó chịu cho user, user phàn nàn với chủ site và giảm sự hấp dẫn của site, kết quả là chủ site phải loại bỏ flash lỗi và sẽ giảm sức ép lên mình. Em thấy bên xuongphim.com đã loại bỏ flash tấn công vuvu.mobi rồi đó, hacker có thể tìm site khác để tránh kiểm tra refer, ta lại chạy đua với họ.
Cái này vẫn phải kết hợp với mod_security và iptables. Ngoài ra, để hiệu quả hơn thì cần là việc chạy đua vũ trang nữa, tăng sức mạnh phần cứng của mình lên, tối ưu hệ thống hơn. Ví dụ với 4000 client của xuongphim.com, thì máy chủ của ta sẽ phải gánh được tầm bằng ấy. Chứ nếu chỉ gánh được tầm 1000 là xong đời mình trước khi gây khó chịu cho user.
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 15/11/2010 16:58:18 (+0700) | #16 | 224937
thekill
Member

[Minus]    0    [Plus]
Joined: 25/12/2007 20:43:43
Messages: 1
Offline
[Profile] [PM]
Mình cũng bị 1 số site ddos mình nhưng nó ddos theo phương thức khác.
http://www.autokiemthe.com/
http://www.kiemthe.info/
Attack mình liên tục.
Mỗi lần truy cập vào website đó thì rất nhiều request đến các host trên server của mình.
Xin hỏi conmale mình phải làm cách nào để chặn các site như thế này.
Mình đã chặn Referer các domain trên nhưng vẫn không ăn thua gì.
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 15/11/2010 20:31:08 (+0700) | #17 | 224944
[Avatar]
h0itm
Member

[Minus]    0    [Plus]
Joined: 06/11/2010 05:15:09
Messages: 8
Offline
[Profile] [PM]

1mp0ss1bl3 wrote:
Code:
Nick "gac_kiem28";
Tên "Nguyễn Trường Sang";
Ngày sinh "15 dec 1991";
yahoo "gac_kiem28@yahoo.com";


Cái này xnohat thấy trong action-script của cái Flash từ xuongphim phải không? smilie

@Anh conmale: Tối qua em có thử cách của anh nhưng có lỗi với file blocker.sh nên em tạm thời chưa apply. Để chiều về em thử lại và sẽ báo kết quả sau. Phía cty mẹ mới đổi cái gì mà bị tịt hết rồi, vào HVA cũng không được smilie  


Bạn xem thử kernel bao nhiêu, hình như cái này kernel mới nó mới có smilie
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 15/11/2010 21:28:23 (+0700) | #18 | 224946
[Avatar]
quanta
Moderator

Joined: 28/07/2006 14:44:21
Messages: 7265
Location: $ locate `whoami`
Offline
[Profile] [PM]

h0itm wrote:

1mp0ss1bl3 wrote:

@Anh conmale: Tối qua em có thử cách của anh nhưng có lỗi với file blocker.sh nên em tạm thời chưa apply. Để chiều về em thử lại và sẽ báo kết quả sau. 

Bạn xem thử kernel bao nhiêu, hình như cái này kernel mới nó mới có smilie 

Kiểm tra lại xem kernel của bạn đã enable recent module cho iptables chưa:
Code:
$ grep -i recent /path/to/.config
Let's build on a great foundation!
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 15/11/2010 21:36:19 (+0700) | #19 | 224949
[Avatar]
1mp0ss1bl3
Member

[Minus]    0    [Plus]
Joined: 14/02/2008 21:32:58
Messages: 41
Location: ...
Offline
[Profile] [PM]
Kernel mình đang sử dụng "ipt_recent". Script đó chạy lúc đầu không sao nhưng được 1 lúc mod_security báo lỗi như thế này

Code:
[15/Nov/2010:21:13:02 +0700] [vuvu.mobi/sid#3ef61f8][rid#45d93a8][/][1] Exec: Execution failed while reading output: /home/www-data/blocker.sh (End of file found)
[15/Nov/2010:21:13:02 +0700] [vuvu.mobi/sid#3ef61f8][rid#45d93a8][/][1] Failed to execute: /home/www-data/blocker.sh
[15/Nov/2010:21:13:02 +0700] [vuvu.mobi/sid#3ef61f8][rid#45d93a8][/][1] Access denied with connection close (phase 1). Operator GT matched 5 at IP:ddos. [file "/var/www/vhosts/vuvu.mobi/conf/httpd.include"] [line "94"] [msg "DDoS"]


Đoán là do cái "ip_list_tot=100" quá ít nên tăng lên 3000 nhưng thử lại thì vẫn còn lỗi đó.

Đang check kĩ lại...
To achieve the impossible, one must thing the absurd - to look where everyone else has looked, but to see what no else has seen.
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 16/11/2010 02:09:47 (+0700) | #20 | 224961
[Avatar]
conmale
Administrator

Joined: 07/05/2004 23:43:15
Messages: 9353
Location: down under
Offline
[Profile] [PM]

1mp0ss1bl3 wrote:
Kernel mình đang sử dụng "ipt_recent". Script đó chạy lúc đầu không sao nhưng được 1 lúc mod_security báo lỗi như thế này

Code:
[15/Nov/2010:21:13:02 +0700] [vuvu.mobi/sid#3ef61f8][rid#45d93a8][/][1] Exec: Execution failed while reading output: /home/www-data/blocker.sh (End of file found)
[15/Nov/2010:21:13:02 +0700] [vuvu.mobi/sid#3ef61f8][rid#45d93a8][/][1] Failed to execute: /home/www-data/blocker.sh
[15/Nov/2010:21:13:02 +0700] [vuvu.mobi/sid#3ef61f8][rid#45d93a8][/][1] Access denied with connection close (phase 1). Operator GT matched 5 at IP:ddos. [file "/var/www/vhosts/vuvu.mobi/conf/httpd.include"] [line "94"] [msg "DDoS"]


Đoán là do cái "ip_list_tot=100" quá ít nên tăng lên 3000 nhưng thử lại thì vẫn còn lỗi đó.

Đang check kĩ lại... 


Hello em,
"ip_list_tot" nằm trên kernel. Nó là một biến cho phép ipt_recent chứa tổng số IP để theo dõi nhiều hay ít. Nếu có quá nhiều IP tấn công thì nên gia tăng con số này (nhưng cẩn thận xét xem số physical memory trên server có đủ nhiều hay không trước khi gia tăng). "ip_list_tot" không có liên quan trực tiếp gì tới việc mod_security "gọi" cái script "blocker.sh" đâu em. Cho dù "ip_list_tot" có giá trị là 100 và lúc ấy danh sách IP được đưa vô bảng BLACLKLIST đã lên tới con số 100 đi chăng nữa, nếu em thực thi lệnh "blocker.sh" bằng tay thì IP mới vẫn được chèn vô bảng ấy.

Thật sự, "ip_list_tot" chỉ có giá trị và hiệu lực cụ thể đối với -m recent ngay trên iptabes.

Đôi khi em thấy log của apache / mod_security cảnh bảo "Failed to execute" nhưng thật sự cái script này vẫn đã thực thi. Để xác minh có đúng điều này xảy ra hay không, em thử chèn thêm 1 dòng trong "blocker.sh":

/bin/echo +$REMOTE_ADDR >> /tmp/badip.txt

Sau đó tail dòng cuối cùng của /tmp/badip.txt để tìm IP cuối được blocker.sh thực thi rồi thử:
cat /proc/net/ipt_recent/BLACKLIST | grep <ip>

Mấy dòng logs ở trên chứng tỏ mod_security của em chạy ngon lành rồi đó. Bây giờ chỉ cần kiểm tra xem các IP bị blacklisted do mod_security tường trình có được đưa vô BLACKLIST hay không là xong.

Source của mod_security ở phần thực thi script bên ngoài:

Code:
static apr_status_t msre_action_exec_execute(modsec_rec *msr, apr_pool_t *mptmp,
        msre_rule *rule, msre_action *action)
    {
        #if defined(WITH_LUA)
        if (action->param_data != NULL) { /* Lua */
            msc_script *script = (msc_script *)action->param_data;
            char *my_error_msg = NULL;
   
            if (lua_execute(script, NULL, msr, rule, &my_error_msg) < 0) {
                msr_log(msr, 1, "%s", my_error_msg);
                return 0;
            }
        } else
        #endif
        { /* Execute as shell script. */
            char *script_output = NULL;
    
            int rc = apache2_exec(msr, action->param, NULL, &script_output);
            if (rc != 1) {
                msr_log(msr, 1, "Failed to execute: %s", action->param);
                return 0;
            }
        }
    
        return 1;
    }


ở đây, rc có thể có giá trị hồi báo không phải là 1 cho nên được tường trình là "Failed to execute" nhưng thực sự cái script đó đã được thực thi và trước đó log cảnh báo "Execution failed while reading output" có nghĩa là mod_security không thể read được đoạn "script_output" mà thôi. Điều quan trọng em cần lưu ý là cái script "blocker.sh" đó có path cho phép account chạy apache truy cập được và thực thi được. /proc/net/ipt_recent/BLACKLIST cũng được gán quyền để account chạy apache có thể "write" vô đó.

@myquartz: tớ biết giải pháp của bồ nhằm cảnh báo các nạn nhân bị biến thành công cụ ddos kẻ khác nhưng giải pháp này không lâu dài được. Chủ nhân của cái trò x-flash này chỉ cần có một thay đổi nhỏ là các nạn nhân sẽ không nhận được thông điệp nào nữa. Những biện pháp cản referer, cản headers.... dần dà sẽ mất tác dụng vì những giá trị này có thể biến thiên liên tục.
What bringing us together is stronger than what pulling us apart.
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 21/11/2010 21:52:03 (+0700) | #21 | 225306
[Avatar]
1mp0ss1bl3
Member

[Minus]    0    [Plus]
Joined: 14/02/2008 21:32:58
Messages: 41
Location: ...
Offline
[Profile] [PM]
Hi anh conmale,

Đúng như anh nói, script đã được thực thi thành công nhưng do không thấy output nên mod_security mới báo lỗi đó.
Sau khi apply cách của anh và monitor server trong khoảng 4 tiếng, em thấy cần phải thêm thắt và tuỳ chỉnh thêm 1 vài chổ để server có thể chịu đựng 1 cách bền bỉ và lâu dài. Tuy nhiên, trong khi vẫn đang tìm kiếm các thông số thích hợp thì bên tấn công họ đã ngừng nên tạm thời em chưa thể khẳng định được gì nhiều smilie
Sau việc này em học được khá nhiều kinh nghiệm nhất là 2 điểm sau:

- Phải hiểu rõ các công cụ mà mình đang sử dụng.
- Không có thông số nào là chính xác cho tất cả các trường hợp.

Cảm ơn anh conmale, lQ và myquartz đã giúp đỡ.

Thân
To achieve the impossible, one must thing the absurd - to look where everyone else has looked, but to see what no else has seen.
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 22/11/2010 14:58:26 (+0700) | #22 | 225347
[Avatar]
c0ngit
Member

[Minus]    0    [Plus]
Joined: 21/07/2009 19:26:10
Messages: 11
Location: C:/
Offline
[Profile] [PM] [WWW] [Yahoo!] [MSN] [ICQ]
Đơn giản nếu tấn công kiểu như vậy nên cấm IP đó luôn không nữa thì viết 1 cái htaccess để cấm trong khoảng nào
tuy nhiên dùng cái này thi hơi nguy hiểm! tốt nhất là dùng biện pháp bảo mật bằng tường lửa
• I-SHIFT.VN •
Be Yourself
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 25/11/2010 10:13:07 (+0700) | #23 | 225445
lequi
Member

[Minus]    0    [Plus]
Joined: 29/04/2007 18:13:32
Messages: 77
Offline
[Profile] [PM]

c0ngit wrote:
Đơn giản nếu tấn công kiểu như vậy nên cấm IP đó luôn không nữa thì viết 1 cái htaccess để cấm trong khoảng nào
tuy nhiên dùng cái này thi hơi nguy hiểm! tốt nhất là dùng biện pháp bảo mật bằng tường lửa 


X-Flash được chèn vào 1 web, lúc này các khách truy cập vô tình trở thành kẻ tấn công.
Vậy cấm ai đây bạn ?
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 25/11/2010 10:21:31 (+0700) | #24 | 225446
[Avatar]
xnohat
Moderator

Joined: 30/01/2005 13:59:19
Messages: 1210
Location: /dev/null
Offline
[Profile] [PM] [Email] [WWW] [Yahoo!] [MSN]

lequi wrote:

c0ngit wrote:
Đơn giản nếu tấn công kiểu như vậy nên cấm IP đó luôn không nữa thì viết 1 cái htaccess để cấm trong khoảng nào
tuy nhiên dùng cái này thi hơi nguy hiểm! tốt nhất là dùng biện pháp bảo mật bằng tường lửa 


X-Flash được chèn vào 1 web, lúc này các khách truy cập vô tình trở thành kẻ tấn công.
Vậy cấm ai đây bạn ? 


bạn c0ngit nói cũng không phải sai

Đoạn shell mà conmale tư vấn cho chủ thớt

Code:
#!/bin/bash
 /bin/echo +$REMOTE_ADDR >/proc/net/xt_recent/BLACKLIST


Đoạn này liên tục cập nhật các IP đang bị lợi dụng DoS vào một danh sách

Sau đó ta sẽ cập nhật danh sách này vào iptables khoảng 60s ( 1 phút ) một lần, để iptables DROP cuộc tấn công của các ip này.

Việc thêm vào nên cần đi cùng với việc bớt ra , làm đúng thì công tác trên cũng cản lọc được đáng kể các cuộc tấn công
iJust clear, "What I need to do and how to do it"/i
br
brBox tán gẫu dời về: http://www.facebook.com/hvaonline
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 25/11/2010 13:57:21 (+0700) | #25 | 225463
zjm_zjm
Member

[Minus]    0    [Plus]
Joined: 26/07/2009 01:53:09
Messages: 159
Location: hhhhhh
Offline
[Profile] [PM] [WWW] [Yahoo!] [MSN] [ICQ]

quanta wrote:

h0itm wrote:

1mp0ss1bl3 wrote:

@Anh conmale: Tối qua em có thử cách của anh nhưng có lỗi với file blocker.sh nên em tạm thời chưa apply. Để chiều về em thử lại và sẽ báo kết quả sau. 

Bạn xem thử kernel bao nhiêu, hình như cái này kernel mới nó mới có smilie 

Kiểm tra lại xem kernel của bạn đã enable recent module cho iptables chưa:
Code:
$ grep -i recent /path/to/.config
 


Để enable iprecent thì làm thế nào nhỉ, mình chưa biết vấn đề này.
Đừng gọi mình gà smilie
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 25/11/2010 16:46:50 (+0700) | #26 | 225470
[Avatar]
1mp0ss1bl3
Member

[Minus]    0    [Plus]
Joined: 14/02/2008 21:32:58
Messages: 41
Location: ...
Offline
[Profile] [PM]
@zjm_zjm: Dùng lệnh mobprobe để liệt kê, thêm, bớt các loadable modules. Còn cụ thể các options thế nào thì bạn google là ra thôi.

@lequi: Điều bạn nói chính là cái khó nhất của vấn đề. Để xác định được chính xác cần cấm ai, cho phép ai cần phải trải qua 1 quá trình chuẩn bị và phân tích kĩ lưỡng. Trong trường hợp của mình, do chủ quan và thiếu kiến thức bảo mật, nên những thông tin khi server hoạt động bình thường mình không có. Đến khi server bị tấn công, mình rất khó xác định được đâu là các tham số thích hợp do đó cứ bị lẩn quẩn ở chổ "try and try". smilie

Topic này /hvaonline/posts/list/20/32553.html đã chỉ ra rõ điều trên.

Thân
To achieve the impossible, one must thing the absurd - to look where everyone else has looked, but to see what no else has seen.
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 25/11/2010 18:02:14 (+0700) | #27 | 225475
[Avatar]
quanta
Moderator

Joined: 28/07/2006 14:44:21
Messages: 7265
Location: $ locate `whoami`
Offline
[Profile] [PM]

1mp0ss1bl3 wrote:
@zjm_zjm: Dùng lệnh mobprobe để liệt kê, thêm, bớt các loadable modules. Còn cụ thể các options thế nào thì bạn google là ra thôi.
 

Nếu nó đang disable thì trước tiên cần recompile kernel đã.

`modprobe -l` có thể thay bằng lsmod, `modprobe -r` có thể thay bằng rmmod. Bạn đọc man page có đủ cả.
Let's build on a great foundation!
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 04/10/2011 22:13:22 (+0700) | #28 | 248145
mapthulu
Member

[Minus]    0    [Plus]
Joined: 10/06/2011 12:16:42
Messages: 28
Offline
[Profile] [PM]
Xin chào các anh,

Em áp dụng luật từ đoạn anh comale đưa vào, nhưng không thể hoạt động được. Em có tìm hiểu thì ở đây có nói là Apache chạy SuExec sẽ không chạy được (bài cuối cùng): http://www.webhostingtalk.com/archive/index.php/t-357782.html

Cấu hình cho iptables
Code:
iptables -N MOD_SECURITY
iptables -A MOD_SECURITY -j LOG --log-prefix "MOD_SECURITY: "
iptables -A MOD_SECURITY -m recent --name MOD_SECURITY_CHECK --set -j DROP
iptables -A INPUT -m recent --name MOD_SECURITY_CHECK --update --seconds 120 -j MOD_SECURITY

Các luật trên nạp vào iptables thành công
Đã chown nobody.nobody /proc/net/ipt_recent/MOD_SECURITY_CHECK để cho tất cả user đều chạy được

Phần lệnh cho chạy ModSecurity
Code:
SecAction "phase:1,t:none,pass,nolog,initcol:global=global,initcol:ip=%{remote_addr}"
SecRule &REQUEST_HEADERS:Accept "@eq 0" "phase:1,id:20002,log,setvar:ip.ddos=+1,deprecatevar:ip.ddos=30/60,expirevar:ip.ddos=120"
SecRule IPsmilieDOS "@gt 0" "phase:1,log,msg:'DDoS_from: %{REMOTE_ADDR}',exec:/root/check/fw/blocker_modsec.sh"

Cũng đã chown nobody.nobody cho /root/check/fw/blocker_modsec.sh

Khi xem qua ghi nhận lại từ mod_security báo về thì
Code:
Exec: Execution failed while reading output: /root/check/fw/blocker_modsec.sh (End of file found)
Failed to execute: /root/check/fw/blocker_modsec.sh
Access denied with connection close (phase 1). Operator GT matched 0 at IP:ddos. [file "/usr/local/apache/conf/modsec2.user.conf"] [line "51"] [msg "DDoS_from: 113.180.94.59"]

Theo như vậy và bài ở trên của anh comale thì đã được thực thi thành công.
Tuy nhiên em xem thử nội dung của /proc/net/ipt_recent/MOD_SECURITY_CHECK thì rỗng.

Em xin cảm ơn đã xem
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 05/10/2011 07:00:49 (+0700) | #29 | 248148
[Avatar]
conmale
Administrator

Joined: 07/05/2004 23:43:15
Messages: 9353
Location: down under
Offline
[Profile] [PM]
Account nào đó chạy apache có thể access /root/check/fw/blocker_modsec.sh được không?
What bringing us together is stronger than what pulling us apart.
[Up] [Print Copy]
  [Discussion]   Nhờ tư vấn về bảo mật (DDos - X-Flash) 05/10/2011 08:07:34 (+0700) | #30 | 248156
mapthulu
Member

[Minus]    0    [Plus]
Joined: 10/06/2011 12:16:42
Messages: 28
Offline
[Profile] [PM]
Cảm ơn anh đã hồi âm,

Đoạn anh tô đỏ, em hiểu đã hiểu vấn đề là thư mục root nên các user khác không thể "dòm ngó" được.

Em thử chuyển đoạn blocker_modsec.sh sang thư mục /home thì cũng chưa thực thi được

Cấu hình Apache và PHP của em như sau:
_Apache: SuExec
_PHP: SuPHP

Do vậy, nếu mình đưa vào từng thư mục đúng với /home/$user đó thì không thể (hệ thống bên em là share hosting khá nhiều user)
[Up] [Print Copy]
[digg] [delicious] [google] [yahoo] [technorati] [reddit] [stumbleupon]
Go to: 
 Users currently in here 
1 Anonymous

Powered by JForum - Extended by HVAOnline
 hvaonline.net  |  hvaforum.net  |  hvazone.net  |  hvanews.net  |  vnhacker.org
1999 - 2013 © v2012|0504|218|