DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Rund um die Sicherheit des Systems und die Applikationen
Anonymous
 

DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Post by Anonymous »

Hallo, auf einer meiner Root Server läuft eine DDOS Attacke?!, scheinbar aus einem Botnetz,jedoch haben alle den selben Referer. Wer kann mir Tipps geben , wie ich die Attacken unterbinden kann? Vorzugsweise eben halt über den Referer?!

hier ist ein screen aus der Log datei:

http://img221.imageshack.us/img221/1421/attackys9.jpg
User avatar
Joe User
Project Manager
Project Manager
Posts: 11183
Joined: 2003-02-27 01:00
Location: Hamburg
 

Re: DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Post by Joe User »

Das ist kein (D)DoS, sondern nur ein (harmloser) Spamversuch. Wenn Deine WebApps keine bekannten Sicherheitslücken aufweisen, ist Alles OK und falls doch, so sind diese umgehend zu fixen. Das einzige Problem, dass Du hast, ist ein suboptimal konfigurierter HTTPd (vermutlich sogar das komplette System)...
amd64
Posts: 11
Joined: 2007-08-24 16:59
 

Re: DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Post by amd64 »

Was kann man gegen DDos attacken machen? wie kann man den Server schützen? weil ich weiss ganz genau,dass auf mein Server kommen Attacken, wenn Angriff kommt , Server ist Überlastet, wenn kein glaub, können wir testen, ich ein Programm, DDos , auf der meine Seite ,war ein Admin, ich habe ihn rausgeschmissen, und der tut jetzt mir standlicht Probleme, mit DDos Attacken,

Wer weisst ganz genau ,wie Mann sein eigenen Server schützen kann? ein Firewall oder Scripts , es muss was da gegen sein ,Hilfe

CPU AuthenticAMD, Dual-Core AMD Opteron(tm) Processor 1218 HE
Version psa v8.2.1_build82070918.10 os_Fedora Core 6
OS Linux 2.6.16.53-070731a
DDR 4 GB


Danke , ich hoffe wir finden gemeinsam ein Lösung
amd64
Posts: 11
Joined: 2007-08-24 16:59
 

Re: DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Post by amd64 »

Was wie?
Komplizierte und unverständöiche Satzkonstrukte sind eigentlich mein Ding.
Gegen DOS Attacken hilft nur eine guter Provider.
Du hast erstmal keine Chance dagegen.

Falls Deine Maschine in einem RZ steht, zudem Du Zugang hast, kannst Du das Problem mit einer externen firewall etwas eindämmen.
Setzt allerdings eine sehr gute Anbindungen Deines Rechners innerhal des RZ's vorraus.
ich weiss ,das so was gibst , sonnst würde ich nicht Fragen ;) ich habe sogar getestet.;) Provider ,hmm .wenn du ein Root Server hast , kannst du gleich vergessen, weil du Admin bist , und muss deine Maschine selbst Konfigurieren , also , wer kann was dagegen machen? wer weisst?
gierig
Posts: 297
Joined: 2002-10-15 16:59
Location: WHV
 

Re: DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Post by gierig »

is zwar Offtoppic, aber AM64 bis du Engländer ? Deine Texte
klingen nach Google übersetzungen.

BacktoTopic:
Über was für Atacken reden wir den überhaubt ?
Ein (D)Dos soll Idialerweise dafür sorgen das ein dienst oder der ganze Server nicht mehr Reagiert. Maßgeblich passiert das indem massenhaft
Anfragen generiert werden die auf den Dienst/Server losgelassen werden.
Diese Anfragen Ereichen ohne Eingriff in das Netzwerk auch deinen
Root Server sofern Du ihn nicht selber Auschaltest.

Lokal auf dem Server kann man dabei recht Wenig tun, schon garnicht
wenn mann nicht weiß wie und mit welcher Technik angeriffen wird.


Ansosnten für den Einstieg:
http://en.wikipedia.org/wiki/Denial-of-service_attack
amd64
Posts: 11
Joined: 2007-08-24 16:59
 

Re: DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Post by amd64 »

nein.ich bin kein Engländer

so viel ich weiss , es ist ein HTTP -DDos Attacken ,und einer bekannte von mir
hat es gemacht,wenn sein Server attackiert wird, Firewall blockt gleich IP u Paketen

ein Beispiel, Skripts für Debian -Anti Dos

Code: Select all

]As you suggested:

You can obtain it at:
http://www.prism-hosting.com/AntiDoS

Log in as root and run:
wget http://www.prism-hosting.com/AntiDoS

Move this to somewhere like /root/AntiDoS, and chown it to user root, and then do:
chmod +x AntiDoS

Now edit your root cron:
vi /var/spool/cron/root

Somewhere add the following line:
*/5 * * * * /root/AntiDoS/AntiDoS

The save/quit using command ":wq"

This cron will make the script run every 5 minutes, doing a quick check. The script executes in milliseconds, so there is no penalty to running this script. You could infact make it run every 2 minutes by changing */5 to */2.

You can check the following files for log data:
/var/log/antidos.run
/var/log/antidos.ban

The ban log will tell u which IP's were banned and how many connections they had open. You will have to manually unban these if u need them removed. Generally this script has worked perfectly for me, only banned abusive ip's.

[php]#!/usr/bin/php -q
/*
* ----------------------------------------------------------------
* AUTHOR: David Goodchild
* DATE: 15th June 2005
* FILE: AntiDoS
* PURPOSE: Detect malicious behaviour using netstat, and ban
* offending IP
* CONTACT: david@prism-hosting.com
* COPYRIGHT: Copyright to Prism Hosting 2005
* DONATE: If you liked this script and thought it helped you,
* please feel free to make a small donation via
* paypal to: david@thewishingtree.me.uk
*
* You might wonder what the point in donating would
* be, well the main purpose of donating would be
* either as a small thank-you or as an encouragement
* for me to develop this further so that it might be
* improved to help you, the user.
*
* COMMENTS: Please send suggestions and comments to
* david@thewishingtree.me.uk
*
* VERSION: 1.0
* ----------------------------------------------------------------------
*/

// CONFIGURATION VARIABLES:

// The following variable is the one that will need tweaking per server.
// If legitament IP's are being banned raise this number. Or if it isn't
// having the desired effect, lower this number.
$maxConnsPerIP = 80;

// Probably best not editing any of the following. Unless you wish to
// Add more ports. An example of adding more ports:
// $ports = array(25, 80, 443);
// If more ports are added, it is advisable to increase $maxConnsPerIP.
$ports = array(80);

// These do not normally need changed, however please check them!

// The root directory where the logs will reside.
$logRoot = "/var/log/";

// The name of the log containing all ban information.
// Set to 0 to disable.
$logNameBan = "antidos.ban";

// The name of the log containing run information.
// Set to 0 to disable.
$logNameRun = "antidos.run";

// Location of netstat
$netstatCmd = "/bin/netstat -neepa";

// Location of information from netstat, this must be set!
$netstatOutput = "./netstat.out";

// The APF deny command.
$apfDeny = "/usr/local/sbin/apf -d ";

// The APF deny_hosts.rules file
$apfDenyHostRules = "/etc/apf/deny_hosts.rules";

// Format of date, using PHP's date() function (www.php.net)
$dateFormat = "m.d.y g:i a";




// DO NOT EDIT BELOW THIS LINE
// ----------------------------------------------------------------------

// Define an object to store all the info.
class NetStatInfo
{
var $proto;
var $recvq;
var $sendq;
var $localaddr = array();
var $foreignaddr = array();
var $state;
var $user;
var $inode;
var $pid;
var $program;

function NetStatInfo()
{
// Empty Contructor
}
}

// Storage container for all the NetStatInfo's
$connections = array();
$num = 0;

// Run the netstat command: "/bin/netstat -neepa > netstat.out"
exec($netstatCmd . " > " . $netstatOutput);

// Read the file into an array of lines
$lines = file($netstatOutput);

// Parse each line
foreach ($lines as $line_num => $line)
{
// Only parse line if the first 3 chars are TCP (or UDP?)
if (eregi("(tcp)|(udp)", $line))
{
// A very important line, DO NOT TOUCH!
$regexp = "(tcp|udp|raw)([[:space:]]+)([0-9]+)([[:space:]]+)([0-9]+)([[:space:]]+)([0-9.:*]+)([[:space:]]+)([0-9.:*]+)([[:space:]]+)([A-Za-z0-9_]+)([[:space:]]+)([0-9]+)([[:space:]]+)([0-9]+)([[:space:]]+)(.+)";

$args = array();
if (eregi($regexp, $line, $args))
{
$connections[$num] = new NetStatInfo();

$localaddr = explode(":", $args[7]);
$foreignaddr = explode(":", $args[9]);

$connections[$num]->proto = $args[1];
$connections[$num]->recvq = $args[3];
$connections[$num]->sendq = $args[5];
$connections[$num]->localaddr[0] = $localaddr[0];
$connections[$num]->localaddr[1] = $localaddr[1];
$connections[$num]->foreignaddr[0] = $foreignaddr[0];
$connections[$num]->foreignaddr[1] = $foreignaddr[1];
$connections[$num]->state = $args[11];
$connections[$num]->user = $args[13];
$connections[$num]->inode = $args[15];
// TODO: Parse program info, into program name and pid (seperator = /)
$connections[$num]->pid = $args[17];
$connections[$num]->program = $args[17];

$num++;
}
}
}

// Counter array - for every new ip found - it will be added to the array, and its counter incremented
// i.e. $counter[0][0] = 192.168.1.100
// $counter[0][1] = 13
$counter = array();
$num_conns = $num;
$num = 0;

// Flag to determine if the IP was found in the counter.
$found = false;

// Check for multiple connections on the following local ports.
// *** Now a configuration setting at top

// Determine if there are multiple records!
for ($i = 0; $i < $num_conns; $i++)
{
$found = false;
for ($j = 0; $j < count($counter); $j++)
{
if ($counter[$j][0] == $connections[$i]->foreignaddr[0]
&& in_array($connections[$i]->localaddr[1], $ports)
&& ($connections[$i]->status != "TIME_WAIT"))
{
// IP already exists in counter array, (incr. count)
$counter[$j][1]++;
$found = true;
}
}

if (!$found)
{
if (in_array($connections[$i]->localaddr[1], $ports))
{
// IP wasn't found in counter array, so add it.
$counter[$num] = array();
$counter[$num][0] = $connections[$i]->foreignaddr[0];
$counter[$num][1] = 1;

$num++;
}
}
}

// Flag to denote an IP was banned
$banned = false;

$bancount = 0;

// Use the counter array to ban any users over X connections
for ($i = 0; $i < count($counter); $i++)
{
if ($counter[$i][1] > $maxConnsPerIP)
{
// BAN IP IN APF
exec($apfDeny . $counter[$i][0]);

// Add comment to APF deny_hosts.rules
$apfComment = "echo "# {AntiDoS - ".$counter[$i][0]."t- ".$counter[$i][1]." open connectionst- ".date($dateFormat)."}"";
exec($apfComment . " >> " . $apfDenyHostRules);

$banned = true;

$logComment = "echo "** Banned " . $counter[$i][0] . " - " . $counter[$i][1] . " open connections. (" . date($dateFormat) . ")" >> " . $logRoot . $logNameBan;
exec($logComment);

$bancount++;
}
}

if ($banned)
{
exec("echo "tBanned a total of $bancount IPs." >> " . $logRoot . $logNameRun);
exec("echo "tRestarting APF" >> " . $logRoot . $logNameRun);
exec("service apf restart");
}

exec("echo -e "Test complete: ".date($dateFormat)."n----------------" >> " . $logRoot . $logNameRun);

?>
und ich brauche für Linux 10.2 und Fedore Core 6
Roger Wilco
Posts: 5923
Joined: 2004-05-23 12:53
 

Re: DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Post by Roger Wilco »

AMD64 wrote:so viel ich weiss , es ist ein HTTP -DDos Attacken ,und einer bekannte von mir
hat es gemacht,wenn sein Server attackiert wird, Firewall blockt gleich IP u Paketen
Das gepostete Skript bringt bei einer richtigen DoS- oder gar DDoS-Attacke nichts. Die angreifenden Hosts werden lediglich mit APF via Netfilter/iptables "gesperrt". Wenn Netfilter greift, sind die Pakete aber schon am Netzwerkinterface deines Servers angelangt und beschäftigen das System. Bei einer "kleinen" DoS-Attacke mag das noch helfen, aber sobald mal 50+ Rechner beteiligt sind, hilft das auch nichts mehr.
AMD64 wrote:und ich brauche für Linux 10.2 und Fedore Core 6
Ich sehe keinen Grund, weshalb das Skript nicht unter einer beliebigen Linux Distribution lauffähig sein sollte. Installation von APF vorausgesetzt.
EdRoxter
Posts: 483
Joined: 2006-01-06 03:23
Location: Neben Bonn
 

Re: DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Post by EdRoxter »

OT:
AMD64 wrote:auf der meine Seite ,war ein Admin, ich habe ihn rausgeschmissen, und der tut jetzt mir standlicht Probleme, mit DDos Attacken,
Wie wär's mit einer Anzeige? Das wäre wohl am Wirksamsten.
User avatar
daemotron
Administrator
Administrator
Posts: 2641
Joined: 2004-01-21 17:44
 

Re: DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Post by daemotron »

Knoblauch soll auch helfen. Aber nicht, wenn der Angreifer ein ITler ist. Gegen die hilft nur eine MOTD mit BOfH-Geschichten, dann sind se abgelenkt und greifen nicht mehr an.

//EDIT//
Sorry, war unqualifiziert von mir. Knoblauch hilft genauso wenig wie ein Paketfilter auf dem angegriffenen Host.
guwapo
Posts: 42
Joined: 2007-01-21 15:07
 

Re: DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Post by guwapo »

@Topic:

das ist definitiv keine DDoS Attacke, sondern einfach nur eine Spamattacke. "3.dl.am" (übrigens eine illegale Seite) ist nicht ganz unbekannt dafür. Er setzt auf seine Hauptseite (gut besucht) einen 1x1 iframe mit deine URL, die dann natürlich somit von ganz vielen Besuchern aufgerufen wird.

Ähnlichen effekt kann man mit sog. Besuchertauschsystemen erzielen. Dass ein vServer oder einfachen Sharedwebspace davon in die Knie geht mag noch einleuchten, aber warum man mit einem ROOT-Server mit sowas nicht klar kommt, bleibt mir ein Rätsel...


Egal.. das nächste mal kuckst du einfach welche URL aufgerufen wird (ich möchte mal lieber nicht spekulieren warum diese eingeschwärzt ist ;) ) und tust da per JS einen Framebrecher rein :)

Damit werden Besucher von 3.dl.am direkt zu dir weitergeleitet :)
EdRoxter
Posts: 483
Joined: 2006-01-06 03:23
Location: Neben Bonn
 

Re: DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Post by EdRoxter »

Wieder OT (qualifizierte Antworten wurden m.E. schon genug gegeben):
Warum tut der Betreiber sowas? Als einzig halbwegs nachvollziehbarer Grund würde mir jetzt einfallen, unliebsame Konkurrenz zu belästigen. Nicht, dass ich das irgendwem unterstellen wollte...
guwapo
Posts: 42
Joined: 2007-01-21 15:07
 

Re: DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Post by guwapo »

EdRoxter wrote:Wieder OT (qualifizierte Antworten wurden m.E. schon genug gegeben):
Warum tut der Betreiber sowas? Als einzig halbwegs nachvollziehbarer Grund würde mir jetzt einfallen, unliebsame Konkurrenz zu belästigen. Nicht, dass ich das irgendwem unterstellen wollte...
der Typ besitzt eine ziehmlich illegale Seite, über solche Kinder willst du dir doch keine Gedanken machen warum sie irgendwas tun, oder?

Konkurrenz hat er sicherlich keine, er will einfach nur andere schädigen.
amd64
Posts: 11
Joined: 2007-08-24 16:59
 

Re: DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Post by amd64 »

Oct 20 23:31:51 s15258521 dhclient: DHCPREQUEST on eth0 to 87.106.128.249 port 67
Oct 20 23:31:54 s15258521 kernel: possible SYN flooding on port 80. Sending cookies.
Oct 20 23:32:02 s15258521 dhclient: DHCPREQUEST on eth0 to 87.106.128.249 port 67

und was kann man dagegen machen? mein Server fast immer überlastet:

IP immer per Hand bannen? nein, das ist doch kein wert , es muss irgendwie Automatik laufen ;)
User avatar
Joe User
Project Manager
Project Manager
Posts: 11183
Joined: 2003-02-27 01:00
Location: Hamburg
 

Re: DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Post by Joe User »

Die "Automatik" (SYN Cookies) läuft doch schon...?
amd64
Posts: 11
Joined: 2007-08-24 16:59
 

Re: DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Post by amd64 »

Joe User wrote:Die "Automatik" (SYN Cookies) läuft doch schon...?
nein-leider nicht, das habe mit Hand geblockt, aber ich kann das nicht Eden mal machen, ich weiss <es gibt ein Anti Dos Skripts ,aber wie und was, ich hebe keine Ahnung
User avatar
Joe User
Project Manager
Project Manager
Posts: 11183
Joined: 2003-02-27 01:00
Location: Hamburg
 

Re: DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Post by Joe User »

Ähm, Du hast doch selbst folgende Logzeile gepostet:

Code: Select all

Oct 20 23:31:54 s15258521 kernel: possible SYN flooding on port 80. Sending cookies.
Also sind SYN-Cookies aktiviert und werden nötigenfalls auch gesetzt. Wo ist jetzt Dein exaktes Problem? Was willst Du mit einem "Anti-DDoS-Script" genau erreichen? Welche Logzeilen stören Dich?
amd64
Posts: 11
Joined: 2007-08-24 16:59
 

Re: DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Post by amd64 »

Joe User wrote:Ähm, Du hast doch selbst folgende Logzeile gepostet:

Code: Select all

Oct 20 23:31:54 s15258521 kernel: possible SYN flooding on port 80. Sending cookies.
Also sind SYN-Cookies aktiviert und werden nötigenfalls auch gesetzt. Wo ist jetzt Dein exaktes Problem? Was willst Du mit einem "Anti-DDoS-Script" genau erreichen? Welche Logzeilen stören Dich?
Ich weiss wirklich nicht wie ich schon sagen soll, ein Skript , Also < wenn Server attackiert wird, Ip werden automatisch geblockt, und ich muss nicht das selber machen , per Hand ;)wenn du mir nicht glaubst , können wir testen ,wie dich Eure Forum < Server < Hosting , muss du nur sagen, ich habe extra das Programm besorgt , und getestet, aber mein Server kann nicht schützen
User avatar
Joe User
Project Manager
Project Manager
Posts: 11183
Joined: 2003-02-27 01:00
Location: Hamburg
 

Re: DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Post by Joe User »

Wie heisst denn das Programm und was macht es?

Und nein, das RootForum ist keine Testzielscheibe - Und ja, es würde eine Anzeige erfolgen.
amd64
Posts: 11
Joined: 2007-08-24 16:59
 

Re: DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Post by amd64 »

Joe User wrote:Wie heisst denn das Programm und was macht es?

Und nein, das RootForum ist keine Testzielscheibe - Und ja, es würde eine Anzeige erfolgen.
Wie das Programm heisst , kann ich natürlich nicht sagen ,ich glaube wir verstehen uns , was die macht? wenn das Programm läuft ,dein Server wir tot , es immer überlastet, und die Seite kann nicht geöffnet werden ,was kannst du machen ,Reboot und so schnell wie möglich Log Dateien anschauen und IP Bannen , manuell , aber das kannst doch nicht immer machen oder , also deswegen möchte ich und suche ein AutoBann ,ich werde auch anzeige machen,aber noch nicht
User avatar
Joe User
Project Manager
Project Manager
Posts: 11183
Joined: 2003-02-27 01:00
Location: Hamburg
 

Re: DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Post by Joe User »

AMD64 wrote:Wie das Programm heisst , kann ich natürlich nicht sagen
Doch, kannst Du, wie sollen wir Dir wirksame Gegenmittel nennen, wenn wir nichts Verwertbares über den Angriff wissen?
amd64
Posts: 11
Joined: 2007-08-24 16:59
 

Re: DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Post by amd64 »

Joe User wrote:
AMD64 wrote:Wie das Programm heisst , kann ich natürlich nicht sagen
Doch, kannst Du, wie sollen wir Dir wirksame Gegenmittel nennen, wenn wir nichts Verwertbares über den Angriff wissen?
Ich kann das nicht einfach sagen , so und so , nein , wenn du das wirklich wissen willst, schreib mit PM , dann kann ich besser beschreiben , das ist kein Spielzeug ;)
amd64
Posts: 11
Joined: 2007-08-24 16:59
 

Re: DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Post by amd64 »

matzewe01 wrote:
AMD64 wrote:
Wie das Programm heisst , kann ich natürlich nicht sagen ,ich glaube wir verstehen uns , was die macht?
Ich glaube, ich habe verstanden.
Rrootserver ist nicht das richtige für Dich.
nein hast du nicht , du kannst so was verstehen, wenn deine Server oder Saite angegriffen wird ;) dann kopierst du es gleich um was es geht, nur bloß geschpräche, kann ich auch ;)
Roger Wilco
Posts: 5923
Joined: 2004-05-23 12:53
 

Re: DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Post by Roger Wilco »

Ich kann nicht erklären warum, aber beinahe hätte ich diesen Beitrag kommentarlos in den Papierkorb verschoben. Ist vermutlich schon ein Automatismus...
flo
Posts: 2223
Joined: 2002-07-28 13:02
Location: Berlin
 

Re: DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Post by flo »

och, nicht den ganzen ... aber das pipi-Vergleichen und das gegenseitige Angenöle geht mir auch auf den Senkel ...
User avatar
Joe User
Project Manager
Project Manager
Posts: 11183
Joined: 2003-02-27 01:00
Location: Hamburg
 

Re: DDOS Attacke?! ausm Botnetz aussperren (per Referer)

Post by Joe User »

Das WinNT-Tool flooded nur den HTTPd. Da ich momentan keinen Zugriff auf eine eNTe habe, kann ich nur an Hand der Produktbeschreibung und der geposteten Logzeilen darauf schliessen, dass es sich um simple SYN-Floods und einige asyncrone Requests handelt. Nun sind SYN-Cookies mitlerweile aktiviert, so dass nur noch das Ressourcenmanagment des HTTPd angepasst werden muss...