Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]4307[/thread]

IO::Socket -Listen

Leser: 1


<< >> 5 Einträge, 1 Seite
snarf
 2005-05-12 12:36
#37753 #37753
User since
2003-08-14
77 Artikel
BenutzerIn
[default_avatar]
Willkommen in der Welt von DoS-Attacken & Co ... :)

Eine Verbindung beim Eingang zu überprüfen ist IMHO unmöglich, der connect muß ja erst mal durchgeführt werden bevor man feststellen kann, wer dann an der Gegenseite "dran" ist.

Du wirst also nicht umhinkommen, die Connections in der Schleife zu untersuchen und ggf. zu trennen.

Wenn Du über IP's gehen willst und Proxies berücksichtigen willst, dann sollte sich jeder Client bei der Anmeldung an der Server mit seiner eigenen, lokalen IP identifizieren (also die, die dem System bei der Einwahl ins Netz zugewiesen wurde, nicht die IP, über die die Verbindung aufgebaut wurde). Diese IP ist in gewissem Sinne immun gegen die Proxies und Du kannst somit eine Filterung betreiben.

snarf

PS: Und auch hier wirst Du den einen oder anderen treffen, der dieses System mit einem müden Lächeln überlistet ... that's life!
snarf
 2005-05-12 13:01
#37754 #37754
User since
2003-08-14
77 Artikel
BenutzerIn
[default_avatar]
[quote=Froschpopo,12.05.2005, 10:51]aber wenn ich den client dazu auffordere seine ip mitzuschicken, könnte derjenige ja theoretisch auch irgendeine ausgedachte ip schicken... wenn ich mir die greife die er vom isp zugeteilt bekommt hat er ja keinen zugriff mehr darauf...[/quote]
Ja, eine ausgedachte IP wäre z.B. ein Weg, diesen Mechanismus zu Umgehen ... den zweiten Teil Deiner Antwort verstehe ich jetzt gerade nicht wirklich.

Es geht doch nicht darum, zur gefälschten IP zu senden, sondern sie nur zu Filterzwecken heranzuziehen ohne über Proxies zu stolpern. Wenn Du einen Verbindungsaufbau per Hand vorsiehst, sieht es eh ziemlich mau in Sachen Authentifizierung aus. Wenn der Aufbau automatisch erfolgt, dann ist es schon etwas mehr Aufwand, jedesmal eine fake-IP abzuschicken.

Vielleicht solltest Du auch einmal eine Abschätzung machen:
- wie wichtig ist Dein Server
- wie verbreitet / "well-known" ist er
- wie sensibel sind die Daten die darüber laufen
- wie wahrscheinlich ist es, das sich jemand für ein DoS, Data-Faking etc interessiert
... und dann kannst Du Dir überlegen, welchen Aufwand Du betreiben mußt!

Wie schon im anderen Socket-Thread erwähnt: Stell mal genügend Infos über Dein Projekt zusammen ... vor allen inhaltlich qualitative!
Froschpopo
 2005-05-12 02:21
#37755 #37755
User since
2003-08-15
2653 Artikel
BenutzerIn
[default_avatar]
Ich hab nen kleinen Server gebaut.
Jetzt beschäftige ich mich grad mit dem Thema Sicherheit:

Der Server akzeptiert max. 10 Socketverbindungen. Das lege ich mit der IO::Socket-Option Listen fest.
Wenn ich jetzt ein böswilliger Mensch währe, könnte ich ja aus 10 verschiedenen konsolen 10 Verbindungen aufbauen um so die Aufnahme neuer Sockets zu verhindern. So könne man ja theoretisch den Server lahmlegen.

Bisher hab ich das so gemacht, dass ich nach einer neuen Socketverbindung die IP-Adresse mit bereits vorhandenen Verbindungen verglichen hab und im Falle eines doppelten vorkommens die neue Verbindung der IP-Adresse gelöscht hab.
So dass immer nur ein User mit derselben IP-Adresse einbgeloggt werden kann.

Allerdings kann ich das nur machen, wenn der User schon eine Socketverbindung herstellt hat.

Man könnte also theoretisch ein Programm bauen, welches z.b. in einer Schleife den Server mit neuen Socketverbindungen vollspammt und zwar schneller als der Server die IP-Adressen vergleichen und doppelte Sockets löschen kann.

Meine Frage:
Gibt es ne möglichkeit, schon WÄHREND des Verbindungsaufbaus die IP-Adresse des Clients auszulesen um so die Aufnahme als Socket verhindern zu können wenn z.b. bereits eine Verbindung mit selbiger IP besteht ?

Ferner würde mich noch interessieren ob es noch andere Möglichkeiten gibt Clients voneinander zu unterscheiden. Denn die Methode mit der IP hätte ja zur Folge, dass Proxys nichtmehr unterstützt werden könnten bzw zwei Menschen die denselben Proxy verwenden, einer von beiden die Arschkarte bekäme.\n\n

<!--EDIT|Froschpopo|1115850235-->
Froschpopo
 2005-05-12 12:51
#37756 #37756
User since
2003-08-15
2653 Artikel
BenutzerIn
[default_avatar]
aber wenn ich den client dazu auffordere seine ip mitzuschicken, könnte derjenige ja theoretisch auch irgendeine ausgedachte ip schicken... wenn ich mir die greife die er vom isp zugeteilt bekommt hat er ja keinen zugriff mehr darauf...
Froschpopo
 2005-05-12 13:07
#37757 #37757
User since
2003-08-15
2653 Artikel
BenutzerIn
[default_avatar]
hier gehts nur um theorie !
<< >> 5 Einträge, 1 Seite



View all threads created 2005-05-12 12:36.