AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi IP & Port Umleitung (mit uallcollection)? HILFE
Thema durchsuchen
Ansicht
Themen-Optionen

IP & Port Umleitung (mit uallcollection)? HILFE

Ein Thema von InfixIterator · begonnen am 15. Okt 2008 · letzter Beitrag vom 22. Okt 2008
Antwort Antwort
Seite 1 von 2  1 2      
InfixIterator

Registriert seit: 25. Nov 2007
16 Beiträge
 
#1

IP & Port Umleitung (mit uallcollection)? HILFE

  Alt 15. Okt 2008, 16:24
Hallo,

Ich würde gerne von einem Programm die IP und Port zu einer anderen IP umleiten (mit Delphi).
Wäre sowas Möglich? Wenn ja wie?

Habe im Internet gegoogelt und bin auf die uallcollection gestoßen, die recht viel versprechend klingt.
Aber ich habe keine Ahnung wie man die Benutzt oder dafür verwenden könnte.
Wenn jemand davon Ahnung hat oder sogar ein Code Schnipsel hat, wäre ich seh Dankbar!


___________________________________
Mein Problem ist nämlich folgendes:
Ich habe ein irc Tool für unseren irc Server, da aber unser irc Server bald umziehen wird, ändert sich die IP (und Port auch).
Da mein Freund, welcher das Programm geschrieben hatte, die IP und den Port fest ins Programm geschrieben hatte, lässt es sich nun nicht mehr ändern.
Mein Freund findet nun nicht mehr den Source und vermutet er hat ihn ausversehen gelöscht :/

Meine erste Idee war evtl. mit einem Hexeditor die IP/Port zu ändern, da aber die längen von Ip und Port unterschiedlich sind, denke ich wird es nicht gehen.

Meine zweite Idee war:
Es gibt ja Sniffer und einige wie zum Beispiel WPE können den Text nicht nur auslesen, sondern auch ändern und weiter senden.
Solche Programme müssen doch irgendwie die Daten abfangen und wieder weiter senden.
Könnte man sowas nicht auch mit der uallcollection machen? Daten abfangen und zu einer anderen Adresse senden?


Vielen Dank schonmal im voraus!
  Mit Zitat antworten Zitat
Benutzerbild von littleDave
littleDave

Registriert seit: 27. Apr 2006
Ort: München
556 Beiträge
 
Delphi 7 Professional
 
#2

Re: IP & Port Umleitung (mit uallcollection)? HILFE

  Alt 15. Okt 2008, 17:15
Wie wäre es, wenn du einfach das IRC-Tool "crackst"? Wenn die IP fest im Programm-Code ist, wirst du die sicher leicht in der exe finden. Dann einfach die alte IP und den Port ersetzen und fertig. Ich denke, dass ist viel einfacher als die Umleitung.

Oder du änderst die Host-Datei in C:\WINDOWS\system32\drivers\etc\ (weiß aber nicht, ob das auch mit dem Port funktioniert)
Jabber: littleDave@jabber.org
in case of 1 is 0 do external raise while in public class of object array else repeat until 1 is 0
  Mit Zitat antworten Zitat
brechi

Registriert seit: 30. Jan 2004
823 Beiträge
 
#3

Re: IP & Port Umleitung (mit uallcollection)? HILFE

  Alt 15. Okt 2008, 17:32
Mit der uallCollection ist es möglich aber ich denke dafür schon zu viel. Upp das Programm, sag mir die IP und ich änder das schnell mit einem Hexeditor.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#4

Re: IP & Port Umleitung (mit uallcollection)? HILFE

  Alt 15. Okt 2008, 19:01
Zitat von InfixIterator:
Meine erste Idee war evtl. mit einem Hexeditor die IP/Port zu ändern, da aber die längen von Ip und Port unterschiedlich sind, denke ich wird es nicht gehen.
Das kann nicht sein. Eine IPv4 Adresse ist immer 32 Bit à 4 Oktetts. Ind egal welche Zahl im Werte Bereich eines Interegr dargetsellt wird, es sind immer 32 Bit. Selbiges gilt für den Port. Da ist es aber nur, glaube ich, ein 16 Bit Integer.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
InfixIterator

Registriert seit: 25. Nov 2007
16 Beiträge
 
#5

Re: IP & Port Umleitung (mit uallcollection)? HILFE

  Alt 16. Okt 2008, 00:48
erstmal: vielen Dank für die schnelle Hilfe!

@brechi danke für die Hilfe,
ich darf das Programm aber nicht uploaden, da du/ihr sonst mit unserem Server rumspielen könntet.

@littleDave ich habe keine Ahnung wie man Crackt :/

@Luckie das was ich meinte ist die länge der IP Adresse
bsp: 123.1.1.123 wird zu 321.321.321.321 und schon ist die größe der Adresse um 4 Zeichen gewachsen :/

Hatte das ebend auch mal im Hexeditor geändert, aber er scheint das Programm nun komplett zerschossen zu haben (da es ja nun um paar Bytes größer ist durch die veränderte länge der IP Adresse).
Jedenfalls gibt mir der Hexeditor beim ändern der IP-Adresse folgenden Hinweis aus:
"Diese Operation verändert die Dateigröße"
Wenn ich nun die veränderte Datei starte kommt eine seltsame Fehlermeldung:
"Exception EReadError" und das Programm schließt sich wieder.
(Ist nicht so schlimm habe mir vorsichtshalber vorher eine Sicherheitskopie gemacht :)

Muss man da evtl. irgendwo dem Programm sagen, dass es größer bzw kleiner wird?
Oder macht der da irgendwo Sprungbefehle, die ich zerstört habe?

Naja ich probiere es zur Zeit dann doch noch mal mit der uallcollection.
Gibt es denn für die uallcollection denn eine art Tutorial/Hilfe/Snippet? Die Sammlung ist nämlich sehr groß und ich weiss nicht direkt wo ich anfangen soll.
Müsste man das Programm erst irgendwie hooken um die IP und Port umzuleiten? oder geht das auch anders?

Vielen Dank nochmal für eure nette und schnelle Hilfe :)
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#6

Re: IP & Port Umleitung (mit uallcollection)? HILFE

  Alt 16. Okt 2008, 09:11
Zitat von InfixIterator:
@Luckie das was ich meinte ist die länge der IP Adresse
bsp: 123.1.1.123 wird zu 321.321.321.321 und schon ist die größe der Adresse um 4 Zeichen gewachsen :/
Wenn die IP Adresse natürlich als Zeichenkette in der Exe steht, dann hast du natürlich recht.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
brechi

Registriert seit: 30. Jan 2004
823 Beiträge
 
#7

Re: IP & Port Umleitung (mit uallcollection)? HILFE

  Alt 16. Okt 2008, 11:03
@InfixIterator

Nimm mal hxd ( http://mh-nexus.de/en/hxd/ ) dann überschreibst du wieder die IP Adresse mit der neuen (auch wenn die größer ist) und nach der IP Adresse mach ein 0x00 (also hex 0). So wie du das jetzt gemacht hsat verändert der die Größe der Exe-Datei. Das ist definitiv falsch. Du musst die Daten danach überschreiben, wenn du Glück hast werden die nicht gebraucht.
  Mit Zitat antworten Zitat
InfixIterator

Registriert seit: 25. Nov 2007
16 Beiträge
 
#8

Re: IP & Port Umleitung (mit uallcollection)? HILFE

  Alt 17. Okt 2008, 00:15
Benutze schon HxD :)

habe grade mit der 00 und dem überschreiben rum experimentiert.
Alles führte aber zu einem Absturz mit der Meldung "Exception EReadError"

Denke mal so geht es nicht...

Für jede weitere Hilfe mit der uallcollection wäre ich sehr erfreut und dankbar ^^
  Mit Zitat antworten Zitat
Volle

Registriert seit: 25. Nov 2003
Ort: Stuttgart
100 Beiträge
 
Delphi 7 Personal
 
#9

Re: IP & Port Umleitung (mit uallcollection)? HILFE

  Alt 17. Okt 2008, 08:35
Wenn ich das richtig gelesen hab ist die IP als string gespeichert oder?

Mal n versuch waere:

Die ip mit irgendeiner anderen, gleichlangen, zeichenkette zu ueberschreiben ( z.b. anstatt 123.1.1.123 schreibst dasistntest )
und dann in der Hosts datei die "domain" dasistntest auf die gewuenschte IP umleiten zu lassen.

klar das is richtig schlampig aber ich denke es koennte funktionieren.
Ok vielleicht auch nicht da die binary vielleicht die eingegebene IP garnicht mehr per dns lookup aufloest, ich weis nich was da beim kompilieren weggeworfen wird, aber ich wuerds einfach mal probieren ...

[edit]
habs grad mal ausprobiert, also bei mir funktioniert es.
Habs leider nur in ner anwendung die in c++ geschrieben ist testen koennen ( mitm TTcpClient). wuerde mal sagen das ist ein versuch wert. Port konnte ich auch ändern, wobei der hier auch als AnsiString übergeben wird und nicht als integer, von daher duerfte es vielleicht ein wenig schwerer sein als bei den indys.
[/edit]
cYa n' sTay [ S ! C ]
  Mit Zitat antworten Zitat
InfixIterator

Registriert seit: 25. Nov 2007
16 Beiträge
 
#10

Re: IP & Port Umleitung (mit uallcollection)? HILFE

  Alt 22. Okt 2008, 00:31
@Volle ich versteh leider nicht wirklich was du meinst oder wie ich es umsetzen soll.
wo ist der host und wie kann ich ihm sagen er soll da was umleiten?
Kannst du das bitte nochmal für doofe, wie mich, erklären?

In der Zwischenzeit hatte ich mich noch etwas mit hooks beschäftigt und gegoogelt
und bin dabei grad auf folgendes gestoßen:
http://www.delphipraxis.net/internal...ct.php?t=58716
Da geht es um einen Sniffer der die Winsocket hookt.
Leider ist AppSniff unvollständig (Source sowie Funktionen fehlen) und kann auch keine ip umleiten.

Jedenfalls weiss ich nun das ich wahrscheinlich die Winsock irgendwie hooken müsste und dann dort die Packete zur alten IP abfange und zur neuen senden muss. (und beim empfang ebenso nur zurück ;)
Habe Winsock mal gesucht und es befindet sich unter:
C:\WINDOWS\system32\wsock32.dll
Nur ich frage mich jetzt wie kann man Funktionen/Prozeduren aus einem gehookten Programm bekommen? oder anders: Wie bekomme ich die IPs raus um die entsprechende umzuleiten? :/

naja ich google mal weiter
Falls ihr noch was wisst, scheut nicht es mir zu sagen ;)

Danke schonmal im voraus



edit:
ich bin grad noch auf folgendes interessante gestoßen:
http://tech.itdb.cn/n/200608/10/n20060810_46271.shtml
den Quelltext lese ich mir morgen mal durch :)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:28 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz