Highscore auf den FTP-Server laden

Übersicht BlitzBasic Codearchiv

Neue Antwort erstellen

Kabelbinder

Sieger des WM-Contest 2006

Betreff: Highscore auf den FTP-Server laden

BeitragMo, Jul 04, 2005 17:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi

Ich hab hier ein paar Funktionen für euch, mit denen ihr Highscores auf einen FTP-Server Laden und downloaden könnt. Auch solche Highscores kann jeder, der Internet hat zugreifen und somit stehen nur die wirklich BESTEN darin.

also hier die Funktionen:
Code: [AUSKLAPPEN]
Global way,ground,port,servip$

Function connect_for_upload(file$)
ground = OpenTCPStream("home.arcor.de",21)
WriteLine ground,"USER blitzload"
WriteLine ground,"PASS silvercrow"

If way <> 0 Then CloseTCPStream way
WriteLine ground,"PASV"
Repeat
pro$ = ReadLine(ground)
Until Left$(pro$,3)="227"
mail$ = pro$

in = Instr(mail$,"(")+1
adr$ = Mid$(mail$,in,loc_of_xth(mail$,4,",")-in)
servip$ = Replace$(adr$,",",".")

beh$ = Right$(mail$,Len(mail$)-(loc_of_xth(mail$,4,",")))
faktor1 = Int(Left$(beh$,Instr(beh$,",")-1))
faktor2 = Int(Mid$(beh$,Instr(beh$,",")+1,Instr(beh$,")")-Instr(beh$,",")))
port = faktor1*256 + faktor2

way = OpenTCPStream(servip$,port)
WriteLine ground,"STOR "+file$
End Function

Function connect_for_download(file$)
ground = OpenTCPStream("home.arcor.de",21)
WriteLine ground,"USER blitzload"
WriteLine ground,"PASS silvercrow"

If way <> 0 Then CloseTCPStream way
WriteLine ground,"PASV"
Repeat
pro$ = ReadLine(ground)
Until Left$(pro$,3)="227"
mail$ = pro$

in = Instr(mail$,"(")+1
adr$ = Mid$(mail$,in,loc_of_xth(mail$,4,",")-in)
servip$ = Replace$(adr$,",",".")

beh$ = Right$(mail$,Len(mail$)-(loc_of_xth(mail$,4,",")))
faktor1 = Int(Left$(beh$,Instr(beh$,",")-1))
faktor2 = Int(Mid$(beh$,Instr(beh$,",")+1,Instr(beh$,")")-Instr(beh$,",")))
port = faktor1*256 + faktor2

way = OpenTCPStream(servip$,port)
WriteLine ground,"RETR "+file$
End Function

Function disconnect()
WriteLine ground,"QUIT"
CloseTCPStream way
way = 0
CloseTCPStream ground
End Function

Function write_net_line(cont$)
WriteLine way,cont$
End Function

Function read_net_line$()
Return ReadLine(way)
End Function

Function loc_of_xth(word$,xth,tres$)
pkt = 0
chary = 0
spit = 0
Repeat
chary = chary + 1
If Mid$(word$,chary,Len(tres$))=tres$ Then pkt = pkt + 1
If pkt = xth Then spit = 1
Until spit = 1
Return chary
End Function


Es werden die Globals way,ground,servip$ und port benötigt, sowie die zusatzFunktion loc_of_xth(), die ja auch dabei ist

und etwas hochzuladen müsst ihr zunächst mit connect_for_upload() mit dem Namen der Datei, wie sie hinterher auf dem Server heißen soll verbinden. Dann könnt ihr mit write_net_line() und Parameter Zeilen hochladen (leider gibts nur Zeilen)

Für Download einfach andersrum: mit connect_for_download() und der Datei, die ihr vom Server runterladen woll als Parameter. und dann einfach read_net_line um Zeilen zu lesen.

vor jedem Wechsel zwischen Lese- und Schreibvorgang muss man wieder ausloggen mit disconnect()

Der Nachteil an dieser Funktion ist, dass man das Passwort zum Server einfach aus dem quelltext entnehmen kann. mit etwas Ahnung kann dann ein jeder auf den Server zugreifen und eure Scores löschen oder verändern. Ihr solltet bei seriösen Spielen lieber eigene speicherplätz einrichten.

viel Spaß.
<Wing Avenger Download> ◊◊◊ <Macrophage Download>
  • Zuletzt bearbeitet von Kabelbinder am Mi, Aug 31, 2005 11:17, insgesamt 2-mal bearbeitet

bruZard

BeitragMo, Jul 04, 2005 17:48
Antworten mit Zitat
Benutzer-Profile anzeigen
Gucke Dir mal i.Score an ... das kommt ohne FTP ZUgang aus Wink
PIV 2,4GHz - 1GB DDR 333 - ATI Radeon9600 - WinXP - DX9.0c - BMax 1.14 - B3D 1.91 - 1280x1024x32

User posted image

D2006

Administrator

BeitragMo, Jul 04, 2005 22:23
Antworten mit Zitat
Benutzer-Profile anzeigen
Übrigens gibt es einige Programme, die den kompletten Netzwerk-Datenverkehr abhören können. Somit kann man sehr leicht sowohl Username und Passwort abfangen. Wäre ja schön blöd, dass so zu machen, zu mal es wie bruZard beschrieb mit PHP einfacher geht und mit i.Score wohl am einfachsten.

MfG
D2006

Kabelbinder

Sieger des WM-Contest 2006

BeitragSa, Jul 09, 2005 15:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Hm, ich frag mich, wo die Intension liegen soll, Datenprotokolle von Freewarespielen abzuhören.

Also die Functionen waren nur dafür gedacht, dass halt jeder einfach die Highscores von seinen Spielen für jedermann zugänlich machen kann, auch wenn er noch nicht TCP und sowas beherrscht. Zwar auf primitive Art, aber immernoch besser als garnicht.

i-score hab ich bei google nicht gefunden. Ist das auch ne Funktone, oder so?
<Wing Avenger Download> ◊◊◊ <Macrophage Download>

Sebastian

Betreff: Re: Highscore auf den FTP-Server laden

BeitragSa, Jul 16, 2005 11:27
Antworten mit Zitat
Benutzer-Profile anzeigen
Kabelbinder hat Folgendes geschrieben:

WriteLine ground,"USER blitzload"
WriteLine ground,"PASS silvercrow"


Da liegt der Grund sowas abzuhöhren !

Wenn jemand das pwd und den Username hat kann er beliebig daten auf deinen Webserver hochladen. Er könnte sogar einfach mal alles löschen ....

Aber ich das jetzt hier nicht all zu breit treten, denn das Prob hat jedes FTP tool.
 

m a j o r

BeitragDi, Jul 19, 2005 9:05
Antworten mit Zitat
Benutzer-Profile anzeigen
Ähm, ich denk mal wenn du nicht ssl benutzt, dann hast du das Problem mit jeder Website!?
Und ich weiß gar nicht, was ihr habt, er wollte ein FTP-Highscore-Prog vorstellen und hat es gemacht. Man kann ihm doch jetzt aber nicht die Unsicherheiten des FTP-Protokolls vorwerfen, für die er gar nix kann ^^

bruZard

BeitragDi, Jul 19, 2005 10:02
Antworten mit Zitat
Benutzer-Profile anzeigen
m a j o r hat Folgendes geschrieben:
Ähm, ich denk mal wenn du nicht ssl benutzt, dann hast du das Problem mit jeder Website!?
Und ich weiß gar nicht, was ihr habt, er wollte ein FTP-Highscore-Prog vorstellen und hat es gemacht. Man kann ihm doch jetzt aber nicht die Unsicherheiten des FTP-Protokolls vorwerfen, für die er gar nix kann ^^


Nicht das FTP Protokoll ist unsicher, sondern die Art wie er es verwendet.
Er liefert jedem Menschen mit seinem Programm seine FTP Zugangsdaten im Klartext mit. Das ist unsicher.
PIV 2,4GHz - 1GB DDR 333 - ATI Radeon9600 - WinXP - DX9.0c - BMax 1.14 - B3D 1.91 - 1280x1024x32

User posted image
 

lettorTrepuS

BeitragDi, Jul 19, 2005 10:46
Antworten mit Zitat
Benutzer-Profile anzeigen
-aus Sicherheitsgründen gelöscht- Diese Information ist mit Ihrer Sicherheitsfreigabe leider nicht erhältlich, Bürger.

Eingeproggt

BeitragDo, Apr 05, 2007 22:10
Antworten mit Zitat
Benutzer-Profile anzeigen
Dieser stinkige, alte Thread...

Naja, dachte, es ist besser, den auszugraben, als einen neuen aufzumachen.

Es geht darum, dass ichs nicht raff Very Happy

Genauer gesagt habe ich die Funktionen kopiert (hab sie schön eingerückt^^) und den Benutzer, die Adresse und das Passwort geändert.
Dann rufe ich die Funktionen so auf:
Code: [AUSKLAPPEN]

connect_for_download("ips.txt")
While Not KeyHit(1)
   DebugLog read_net_line$()
Wend


Und stelle plötzlich (über Filezilla) fest, dass meine Datei überschrieben wurde (weshalb ich auch lauter leere Stringsgelesen hab mit obigen Code)

Also ich werd jetzt die Datei nochmal hochladen.
Kann mir jemand sagen, warum ich sie überhaupt überschrieben hab?
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9

Smily

BeitragFr, Apr 06, 2007 0:24
Antworten mit Zitat
Benutzer-Profile anzeigen
Den Code oben kannst du eigentlich - sry - in die Tonne treten. Aus den hier schon mehrfach genannten gründen.

Für Onlinehighscores ist es besser HTTP statt FTP zu benutzen.
Oder wenn du einen Server hast, der dir gehört einen ganz anderen port mit prog auf dem server, welches die Daten vom Client auswertet.

Bei der Methode des Threatstarters brauch man einfach nur mit Wireshark o.ä. die Zugangsdaten Sniffen und sich im FTP einloggen - und dann die Highscore-Datei beliebig verändern ^^

Ich werd bei gelegenheit mal ein eigenes Online-highscore Script schreiben und hier im Codearchiv verewigen Wink

Gruß, Smily0412
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets

"Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!"
stummi.org

pirahni

BeitragSa, Apr 05, 2008 15:23
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,
ich habe den code mal ausprobiert. Bei mir startet das Programm und zeigt mir nur diese doofe sanduhr Sad Bitte um Hilfe.
Leicht verständliche Informatiktutorials:
http://www.youtube.com/VascoLange

Neue Antwort erstellen


Übersicht BlitzBasic Codearchiv

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group