Zurück tutorials.de > Programming > .NET > .NET Café

 
 
Hallo und herzlich willkommen! Tutorials.de ist eine Hilfe-Community mit dem Motto User helfen Usern. Als Gast verfügst Du über Schreibrechte in unseren Foren und Blogs. Du kannst dich aber gerne auch kostenlos registrieren und Teil unserer Gemeinschaft werden! Viel Spaß & Erfolg bei der Vermehrung deines Wissens :-)

Themen: 242.975 | Beiträge: 1.352.293 | Mitglieder: 169.418 (Stand 28.01.10) | Fragen zur Nutzung von Tutorials.de? Nutzungsregeln | Kontaktformular | Impressum

Jubiläums-Countdown 23.02 23.03 23.04 23.05 23.06 23.07 23.08 23.09


4 kostenlose Bücher bei unserer Buch-Verschenkaktion 03/2010
  AntwortAntworten (über Gastzugang)    
  AntwortAntworten (über Gastzugang)    
 
Themen-Optionen Ansicht
Alt 29.01.10, 17:40   #1 (permalink)
Mitglied Bronze
 
Registriert seit: Nov 2009
Beiträge: 43
Renommee-Modifikator: 1
Afritus hat eine blütenweiße Weste

Frage Verschlüsselter FTP-Upload

Hi Leute!
Ich kann nun eine Datei ganz einfach auf einen FTP-Server hochladen mit folgendem Befehl:
Code:
My.Computer.Network.UploadFile( _
 "test.txt", _
 "ftp://ftp-server/test.txt", "user", "password", False, 25000)
Nun kann man aber mit Programmen wie SniffPass (loggt Netzwerkverkehr mit) ganz einfach den Benutzernamen bzw. das Passwort des FTP-Server herausfinden, auf den die Datei hochgeladen wird. So könnten fremde Benutzer meines Programmes die FTP-Daten meines FTP-Servers herausfinden.
Nun wollte ich fragen, wie man Benutzername und Passwort so verschlüsseln kann, dass die Datei ohne Probleme hochgeladen wird und gleichzeitig via z.B. SniffPass niemand das Passwort herausfinden kann...

MfG
Markus
  Afritus ist offline  
 
Alt 01.02.10, 18:12   #2 (permalink)
admin | crazy-weasel
 
Benutzerbild von Alexander Schuc tutorials.de Administrator 
 
Registriert seit: Aug 2001
Ort: Österreich, Stmk, Graz
Beiträge: 2.626
Renommee-Modifikator: 38
Alexander Schuc genießt hohes AnsehenAlexander Schuc genießt hohes AnsehenAlexander Schuc genießt hohes AnsehenAlexander Schuc genießt hohes AnsehenAlexander Schuc genießt hohes AnsehenAlexander Schuc genießt hohes AnsehenAlexander Schuc genießt hohes AnsehenAlexander Schuc genießt hohes Ansehen

AW: Verschlüsselter FTP-Upload

Bei FTP allein wirst kein Glück haben, da dieses Protokol nunmal unverschlüsselt ist. Eine Alternative wäre zum Beispiel FTP über SSL

Statt der von dir verwendeten Methode schau dir mal die FtpWebRequest Klasse an. Dort kannst du EnableSsl auf True setzen, und schon ist deine Verbindung gesichert.

Der FTP Server muss dies jedoch auch unterstützen.

lg,..
__________________
[SC:10] tutorials.de Skihasen - User auf der Piste! - Aktuelle Platzierungen

With the first link the chain is forged. The first speech censored, the first thought forbidden, the first freedom denied, chains us all irrevocably.
Aaron Satie

Legends... are the spice of the universe, Mr. Data, because they have a way of sometimes coming true.
Captain Jean-Luc Picard, Stardate ~41294.5

Tutorials.de chattet.
Klickt oben auf Chat, oder verbindet zu irc.tutorials.de - Channel #Tutorials.de

(moo)blog furred.net // BlogEngine.net Extensions
  Alexander Schuc ist offline  
 
Folgender User bedankt sich bei Alexander Schuc:
Afritus (02.02.10)
Alt 02.02.10, 09:18   #3 (permalink)
Mitglied Platin
 
Benutzerbild von Konstantin Gross  
 
Registriert seit: Sep 2003
Ort: Kassel (Hessen)
Beiträge: 705
Renommee-Modifikator: 16
Konstantin Gross ist ein sehr geschätzer Mensch

AW: Verschlüsselter FTP-Upload

Hey,

nur mal am Rande, auch wenn du die Tipps vom Alex beherzigst, kann der Benutzer deines Programmes trotzdem das Passwort rausbekommen!

Schau dir den .NET Reflector an.

Btw:
Hallo weasel =)
__________________
Internetseite:
http://www.texturenland.de

Blog:
http://blog.texturenland.de

Codesnippets:
.NET-Snippets

- Sollte ich bei einer Frage weitergeholfen haben, würde ich mich über eine positive Bewertung freuen -
  Konstantin Gross ist offline  
 
Folgender User bedankt sich bei Konstantin Gross:
Afritus (02.02.10)
Alt 02.02.10, 20:34   #4 (permalink)
Mitglied Bronze
 
Registriert seit: Nov 2009
Beiträge: 43
Renommee-Modifikator: 1
Afritus hat eine blütenweiße Weste

AW: Verschlüsselter FTP-Upload

Vielen Dank erstmal für die schnellen Antworten!

Ich habe nun FtpWebRequest verwendet (falls es das is, denke schon):
Code:
Dim clsRequest As System.Net.FtpWebRequest = _
            DirectCast(System.Net.WebRequest.Create("ftp://server/test.txt"), System.Net.FtpWebRequest)
        clsRequest.Credentials = New System.Net.NetworkCredential("user", "password")
        clsRequest.Method = System.Net.WebRequestMethods.Ftp.UploadFile

        Dim bFile() As Byte = System.IO.File.ReadAllBytes("test.txt")

        Dim clsStream As System.IO.Stream = _
            clsRequest.GetRequestStream()
        clsStream.Write(bFile, 0, bFile.Length)
        clsStream.Close()
        clsStream.Dispose()
Ich verstehe aber leider nicht, wie ich das auf EnableSSL stelle (FTP-Daten lassen sich mit der obigen Version weiterhin herausfinden). Außerdem ist mir nicht ganz klar, was der .NET Reflector damit zu tun hat. Sry für meine Dämlichkeit was Visual Basic anbelangt
  Afritus ist offline  
 
Alt 02.02.10, 20:50   #5 (permalink)
admin | crazy-weasel
 
Benutzerbild von Alexander Schuc tutorials.de Administrator 
 
Registriert seit: Aug 2001
Ort: Österreich, Stmk, Graz
Beiträge: 2.626
Renommee-Modifikator: 38
Alexander Schuc genießt hohes AnsehenAlexander Schuc genießt hohes AnsehenAlexander Schuc genießt hohes AnsehenAlexander Schuc genießt hohes AnsehenAlexander Schuc genießt hohes AnsehenAlexander Schuc genießt hohes AnsehenAlexander Schuc genießt hohes AnsehenAlexander Schuc genießt hohes Ansehen

AW: Verschlüsselter FTP-Upload

Wenn du auf EnableSsl klickt, hast ein Beispiel damit.

Konstantin meinte, dass sich das Passwort mit Reflector rausfinden lässt, da es in deiner Assembly (deinem kompilierten Programm) unverschlüsselt steht.
Wenn du das Programm nicht weitergibst, ist das jedoch kein Problem.


Hi Konstantin. Gratulation zum Sonderpreis bei den dotnet-snippets
__________________
[SC:10] tutorials.de Skihasen - User auf der Piste! - Aktuelle Platzierungen

With the first link the chain is forged. The first speech censored, the first thought forbidden, the first freedom denied, chains us all irrevocably.
Aaron Satie

Legends... are the spice of the universe, Mr. Data, because they have a way of sometimes coming true.
Captain Jean-Luc Picard, Stardate ~41294.5

Tutorials.de chattet.
Klickt oben auf Chat, oder verbindet zu irc.tutorials.de - Channel #Tutorials.de

(moo)blog furred.net // BlogEngine.net Extensions
  Alexander Schuc ist offline  
 
Alt 02.02.10, 21:31   #6 (permalink)
Mitglied Bronze
 
Registriert seit: Nov 2009
Beiträge: 43
Renommee-Modifikator: 1
Afritus hat eine blütenweiße Weste

AW: Verschlüsselter FTP-Upload

Ich habe den Einbau dieses EnableSSL in jeglichen Varianten ausprobiert, doch zeigt es mir bei der Ausführung des Programmes immer sofort einen Fehler an, obwohl in Visual Studio kein Fehler gefunden wurde.
Hier meine Version:
Code:
Dim instance As Net.FtpWebRequest
    Dim value As Boolean
   
 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        value = instance.EnableSsl

        instance.EnableSsl = value

        Dim clsRequest As System.Net.FtpWebRequest = _
            DirectCast(System.Net.WebRequest.Create("ftp://server/test.txt"), System.Net.FtpWebRequest)
        clsRequest.Credentials = New System.Net.NetworkCredential("user", "password")
        clsRequest.Method = System.Net.WebRequestMethods.Ftp.UploadFile
       
        Dim bFile() As Byte = System.IO.File.ReadAllBytes("test.txt")
        
        Dim clsStream As System.IO.Stream = _
            clsRequest.GetRequestStream()
        clsStream.Write(bFile, 0, bFile.Length)
        clsStream.Close()
        clsStream.Dispose()

    End Sub
Folgender Fehler (beim Zugreifen auf "value = instance.EnableSsl"):
Code:
NullReferenceException wurde nicht behandelt.
Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.
Ok, mit Programmen wie .NET Reflector tut sich da ein zweites großes Problem auf, da ich sehr wohl vorhabe, das Programm weiterzugeben. Es wird in Zukunft wahrscheinlich von einigen Tausend Leuten verwendet werden... Und ich übertreibe nicht. Würde mir also am Herzen liegen, wenn das Passwort auch mit .NET Reflector nicht herausgefunden werden kann, aber dafür muss ich wohl ein neues Thema aufmachen, oder?
Vielen Dank einstweil

Geändert von Afritus (02.02.10 um 21:46 Uhr).
  Afritus ist offline  
 
Alt 03.02.10, 15:56   #7 (permalink)
Mitglied Diamant
 
Benutzerbild von Shakie  
 
Registriert seit: May 2004
Ort: Europa
Beiträge: 1.602
Renommee-Modifikator: 19
Shakie ist einfach richtig nettShakie ist einfach richtig nett

AW: Verschlüsselter FTP-Upload

Naja du hast noch kein FtpWebRequest-Objekt erzeugt, deswegen kommt der Fehler. Du musst das New-Keyword verwenden um eine Instanz zu erstellen! (oder System.Net.WebRequest.Create)
vbnet Code:
  1.  
clsRequest.EnableSsl = True
könnte funktionieren.
  Shakie ist offline  
 
Alt 03.02.10, 18:00   #8 (permalink)
Mitglied Bronze
 
Registriert seit: Nov 2009
Beiträge: 43
Renommee-Modifikator: 1
Afritus hat eine blütenweiße Weste

AW: Verschlüsselter FTP-Upload

Hab das clsRequest.EnableSsl = True nun zur Sicherheit sogar mehrmals eingebaut. Wenn ich ein "New" vor instance.EnableSsl oder vor Value setze, zeigt er mir an, dass der jeweilige Typ nicht definiert ist. Und System.Net.WebRequest.Create ist doch schon drinnen:

Code:
Public Class Form1
  
    Dim instance As Net.FtpWebRequest
    Dim value As Boolean
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        value = instance.EnableSsl

        instance.EnableSsl = value

        Dim clsRequest As System.Net.FtpWebRequest = _
            DirectCast(System.Net.WebRequest.Create("ftp://server/test.txt"), System.Net.FtpWebRequest)
        clsRequest.EnableSsl = True
        clsRequest.Credentials = New System.Net.NetworkCredential("user", "password")
        clsRequest.Method = System.Net.WebRequestMethods.Ftp.UploadFile
        clsRequest.EnableSsl = True
        ' read in file...
        Dim bFile() As Byte = System.IO.File.ReadAllBytes("test.txt")
        clsRequest.EnableSsl = True
        ' upload file...
        Dim clsStream As System.IO.Stream = _
            clsRequest.GetRequestStream()
        clsStream.Write(bFile, 0, bFile.Length)
        clsStream.Close()
        clsStream.Dispose()

    End Sub
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

        

    End Sub
End Class
Danke
  Afritus ist offline  
 
Alt 03.02.10, 18:38   #9 (permalink)
admin | crazy-weasel
 
Benutzerbild von Alexander Schuc tutorials.de Administrator 
 
Registriert seit: Aug 2001
Ort: Österreich, Stmk, Graz
Beiträge: 2.626
Renommee-Modifikator: 38
Alexander Schuc genießt hohes AnsehenAlexander Schuc genießt hohes AnsehenAlexander Schuc genießt hohes AnsehenAlexander Schuc genießt hohes AnsehenAlexander Schuc genießt hohes AnsehenAlexander Schuc genießt hohes AnsehenAlexander Schuc genießt hohes AnsehenAlexander Schuc genießt hohes Ansehen

AW: Verschlüsselter FTP-Upload

Code:
value = instance.EnableSsl

instance.EnableSsl = value
Diese 2 Zeilen gehen aber erst nach dem du mit Create das Objekt erstellt hast, kannst aber auch ganz weglassen.
__________________
[SC:10] tutorials.de Skihasen - User auf der Piste! - Aktuelle Platzierungen

With the first link the chain is forged. The first speech censored, the first thought forbidden, the first freedom denied, chains us all irrevocably.
Aaron Satie

Legends... are the spice of the universe, Mr. Data, because they have a way of sometimes coming true.
Captain Jean-Luc Picard, Stardate ~41294.5

Tutorials.de chattet.
Klickt oben auf Chat, oder verbindet zu irc.tutorials.de - Channel #Tutorials.de

(moo)blog furred.net // BlogEngine.net Extensions
  Alexander Schuc ist offline  
 
Folgender User bedankt sich bei Alexander Schuc:
Afritus (03.02.10)
Alt 10.02.10, 09:45   #10 (permalink)
Mitglied Bronze
 
Registriert seit: Nov 2009
Beiträge: 43
Renommee-Modifikator: 1
Afritus hat eine blütenweiße Weste

AW: Verschlüsselter FTP-Upload

Eine Frage hätte ich noch, ist es möglich, ohne eine teure Library mit SFTP hochzuladen?
Also ein VB.NET-Code der eine Datei via SFTP hochlädt?

Vielen Dank

EDIT: Habs jetz doch hinbekommen. Falls es wen interessiert, es klappt sehr gut mit der kostenlosen Library SharpSSH.

Geändert von Afritus (10.02.10 um 12:28 Uhr).
  Afritus ist offline  
 
 
 
Lesezeichen:


Themen-Optionen
Ansicht
Ähnliche Themen
 
Thema Autor Forum Antworten Letzter Beitrag
seltsamer Fehler bei Passworteingabe bei verschlüsselter swap root und home Partition McMay Linux & Unix 0 26.06.09 19:36
Verschlüsselter Webservice BillaBong PHP 3 21.08.08 10:22
Hilfe! Kopieren verschlüsselter Unterverzeichnisse? Quiddle Sonstige Sprachen 0 16.05.08 09:20
Problem mit verschlüsselter Verbindung und Post-Php Scripten cameeel Hosting & Webserver 0 08.03.07 22:15
upload über upload.aspx NightPain Visual Basic 6.0 0 25.07.06 18:19
» Tools
 
tutorials.de-Tools tutorial.de-Suchfeld tutorial.de-Widget tutorial.de-RSS-Feed tutorial.de-Banner
» Neue Links
 
Hits: 138
»
JHT's Planetary...
(Cinema 4D-Objekte)
Hits: 265
»
Tageslicht ohne GI
(Cinema 4D-Tutorials)
Hits: 153
»
Puzzle
(Cinema 4D-Tutorials)
Hits: 104
»
Lacreme
(Cinema 4D-Tutorials)
Hits: 195
»
Liquid Light
(Cinema 4D-Tutorials)
» Aktuelle Umfrage
 
Bist du mit der Geschwindigkeit der Tutorials.de-Website zufrieden?
Ja, es putzt mir glatt den Staub vom Bildschirm! - 80,51%
157 Stimmen
Nein, ich denke da muss noch nachgebessert werden... - 19,49%
38 Stimmen
Stimmen gesamt: 195
Du darfst bei dieser Umfrage nicht abstimmen.

 

Alle Zeitangaben in WEZ +1. Es ist jetzt 09:32 Uhr.


Powered by vBulletin® Version 3.8.5 (Deutsch) & vBadvanced CMPS v.3.2.0
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.5.0 RC2 ©2010, Crawlability, Inc.
Alle Rechte vorbehalten ©2000 - 2010 tutorials.de
Design by Mark, CSS by Maik & Sven Mintel
Seite generiert in 0,34286 Sekunden mit 26 queries