Keine gute Idee. Dies lie�e sich relativ leicht umgehen. Eine
M�glichkeit ist z.b. IP Spoofing:
http://de.wikipedia.org/wiki/IP-Spoofing
Gru�,
Torsten
Bei DynDNS braucht es nicht einmal Spoofing, sondern lediglich
eine Verzᅵgerung beim Update des DynDNS-Nameservers nach einem
Wechsel der IP-Adresse. Die Chance, dass der aktuelle Inhaber
der veralteten dynamischen Adresse in diesem Zeitfenster genau
diesen Webserver kontaktiert, ist zwar minimal, dafᅵr hat der
"Admin" dieses Servers gute Chancen, sich selbst auszusperren.
--
Time flies like an arrow, fruit flies like a Banana.
http://www.eternal-september.org
Die L�sung ist suboptimal, da bei jedem Seiten-/Programmaufruf erst ein
DNS-Lookup gemacht werden muss. Bei stark besuchten Seiten kann das ganz
sch�n blockieren, zumal dyndns.org wegen der kurzen TTL kaum vom
DNS-Server gecached werden kann.
Wenn Du es vern�nftig machen willst, w�re es besser, wenn Du eine
Authentifizierung machst und dar�ber dann Deine Adminrechte steuerst.
>>> Als Anf�nger frage ich mich nun, wie sicher diese L�sung ist:
>>>
>>> $home = gethostbyname("subdomain.dyndns.org");
>>> $host = $_SERVER['REMOTE_ADDR'];
>>>
>>> if ($home == $host) {
>>> $admin = true;
>>> }
>>>
>>> if ($admin == true) {
>>> ...
>>> }
>>>
>>> Was meint ihr?
>> Keine gute Idee. Dies lie�e sich relativ leicht umgehen. Eine
>> M�glichkeit ist z.b. IP Spoofing:
>> http://de.wikipedia.org/wiki/IP-Spoofing
>
> OK, er kann mir gef�lschte Pakete schicken. Aber woher weiss er,
> wie meine tempor�re IP-Adresse lautet, wenn er den Dyndns-Account
> nicht kennt?
Jetzt wei� ich nicht, ob ich dich auf "Security By Obskurity", "Man in
the Middle", "Sniffing", "Social Engineering", "Brute Force" oder etwas
ganz anderes verweisen soll...
Gru�,
Torsten
>> $home = gethostbyname("subdomain.dyndns.org");
>> $host = $_SERVER['REMOTE_ADDR'];
>>
>> if ($home == $host) {
>> $admin = true;
>> }
> Keine gute Idee. Dies lie�e sich relativ leicht umgehen. Eine
> M�glichkeit ist z.b. IP Spoofing:
> http://de.wikipedia.org/wiki/IP-Spoofing
Hm. Wie soll das bei TCP gehen? Es geht doch um http, oder? Dazu braucht
man eine TCP-Verbindung. Die wird mittels eines Handshake hergestellt,
bei dem Pakete an die genannte IP geschickt werden. Man m�sste zumindest
die Sequenznummern erraten und das halte ich f�r einen recht aufw�ndigen
Angriff. Also da w�rde ich mir normalerweise keine Gedanken drum machen.
Auf die Sache mit dem dyndns schon eher, halte f�r den "normalen
Hausgebrauch" aber auch f�r untragisch, denn wenn man schaut, was da f�r
Zuf�lle zusammenkommen m�ssen, damit die Sicherheitsl�cke ausgenutzt
werden kann, dann ist die Wahrscheinlichkeit schon *sehr* gering.
Was ist eigentlich mit Browserzertifikaten? Hat damit schon mal jemand
gespielt? Ich wollte das schon immer mal machen, bin aber nie dazu
gekommen....
Gr��e, Matthias
> Aber woher weiss er,
> wie meine tempor�re IP-Adresse lautet, wenn er den Dyndns-Account
> nicht kennt?
88.78.101.195
Gr��e, Mat*Das war einfach*thias
Das h�ngt von der Implementierung ab. Bei einigen Windowssystemen war
das recht einfach.
> Also da w�rde ich mir normalerweise keine Gedanken drum machen.
Ich habe ja auch noch einige Andere genannt und daher ein *z.b.* vor das
IP Spoofing gesetzt.
Gru�,
Torsten
Klaus Ketelaer schrieb:
> ich bin auf eine Idee gekommen, wie ich Code in meinen Seiten
> ausführen kann, der nur mir als Admin zur Verfügung steht.
>
> Als Anfänger frage ich mich nun, wie sicher diese Lösung ist:
>
> $home = gethostbyname("subdomain.dyndns.org");
> $host = $_SERVER['REMOTE_ADDR'];
>
> if ($home == $host) {
> $admin = true;
> }
>
> if ($admin == true) {
> ...
> }
Unabhängig von den Problemen auf die schon hingewiesen wurde, musst Du
Dir vor Augen halten, dass Du die Authentifizierung begrenzt auf "ich
befinde mich in Deinem Netzwerk". D.h. wenn Du über einen Router ins
Netz gehst, geniesst jeder bei Dir im Netzwerk vorhandene Host diese
Privilegien. Das ist sicher nicht in Deinem Sinne.
Und wenn Du Deine administrativen Aufgaben von unterwegs erfüllen
möchtest, bräuchtest Du sowieso noch eine zweite Möglichkeit Dich zu
authentifizieren.
Ergo: Für sowas eine Session + User + Passwort zu benutzen braucht nicht
viel mehr Codezeilen als Dein Beispiel und ist sicherer, personenbezogen
und einfacher zu handhaben.
Grüße,
Nico
Stimmt. Ich halte die hier gebrachten Gegenargumente auch fuer zwar
gueltig, aber wenig praxisrelevant. Wenn jemand so wichtig ist, dass
sich IP-Spoofing lohnt, dann bewegt er sich schon laengst auf einer ganz
anderen Ebene, als bei derartigen Abfragen.
Insgesamt kann man wohl sagen: ok, es ist kein grosses Risiko, aber es
_bringt_ auch kaum etwas. Eine simple Passwortabfrage, sei es per PHP
oder per .htaccess ist auch nicht komplizierter und irgendwie deutlich
eleganter.
> Was ist eigentlich mit Browserzertifikaten? Hat damit schon mal jemand
> gespielt? Ich wollte das schon immer mal machen, bin aber nie dazu
> gekommen....
Ja, habe ich. Geht im Prinzip soweit auch ganz gut, aber wenn man dann
doch einmal ungeplant von woanders aus ins Netz muss, ist das eklig. Und
ebenso umstaendlich ist es, wenn man von daheim einmal ausprobieren
moechte, wie andere Leute die Seite sehen...
Servus,
Stefan
--
http://kontaktinser.at/ - die kostenlose Kontaktboerse fuer Oesterreich
Geht nicht!? Gibt's nicht! Stefan.
(Sloganizer)