Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Eine Datei verstecken (https://www.delphipraxis.net/31644-eine-datei-verstecken.html)

egal 12. Okt 2004 08:28


Eine Datei verstecken
 
Ich muss eine Datei bei der Installation vrstecken. Wie kann man es realisieren? Ich programmiere mit Delphi und als Installationprogramm verwende InstallShield. thanks! 8)

Sharky 12. Okt 2004 08:31

Re: Eine Datei verstecken
 
Zitat:

Zitat von egal
Ich muss eine Datei bei der Installation vrstecken. ...

Was verstehst Du denn unter "eine Datei verstecken?"

fiasko 12. Okt 2004 08:33

Re: Eine Datei verstecken
 
Zitat:

Zitat von Sharky
Zitat:

Zitat von egal
Ich muss eine Datei bei der Installation vrstecken. ...

Was verstehst Du denn unter "eine Datei verstecken?"

Ich schätze mal er meint das Hidden Attribut der Dateien. Auf Kommandozeilenebene gibt es den Befehl attrib dafür... den kann man sicher irgendwie vom Installer aus aufrufen.

Welchen Sinn macht es aber die Datei zu verstecken? Wenn der Nutzer will sieht er sie ja trotzdem...

egal 12. Okt 2004 08:36

Re: Eine Datei verstecken
 
Zitat:

Zitat von Sharky
Zitat:

Zitat von egal
Ich muss eine Datei bei der Installation vrstecken. ...

Was verstehst Du denn unter "eine Datei verstecken?"

Dass diese Datei unsichtbar ist und nicht ganz schnell herausfinden kann, wo diese Datei sich befindet. Kann man eine Datei mit dll verstecken? Das habe ich irgendwo gelesen, dass es möglich ist, aber wie, da habe ich keine Ahnung :evil:

fiasko 12. Okt 2004 08:39

Re: Eine Datei verstecken
 
Zitat:

Zitat von egal
Kann man eine Datei mit dll verstecken?

:wiejetzt: WTH meinst du denn damit? Und warum darf niemand wissen wo die Datei steckt :gruebel: ?

egal 12. Okt 2004 08:48

Re: Eine Datei verstecken
 
Zitat:

Zitat von fiasko
Zitat:

Zitat von egal
Kann man eine Datei mit dll verstecken?

:wiejetzt: WTH meinst du denn damit? Und warum darf niemand wissen wo die Datei steckt :gruebel: ?

Jetzt geht los, wie ich schon früher vermutet habe-warum, wieso, weshalb usw. :stupid:
Ich bin kein hacker, ich will einfach eine Datei bei der Installation verstecken, das ist keine exe-Datei, das ist nur eine einfache Textdatei. Und über Dll, wie gesagt, das habe ich irgendwo gelesen, es kann aber auch ein Blödsinn sein, das weiß ich nicht.

alcaeus 12. Okt 2004 08:54

Re: Eine Datei verstecken
 
Hi egal,

du kannst mit entsprechenden Routinen das Hidden-Attribut der Dateien setzen bzw. löschen. Wieviel Sinn das macht sei dahingestellt, denn ich lasse mir auch versteckte Dateien im Explorer anzeigen.
Wie du die Datei versteckst, siehst du z.B. hier.

Greetz
alcaeus

Shaman 12. Okt 2004 09:00

Re: Eine Datei verstecken
 
Hoi

Schreib dir eine Funktion, die einen zufälligen Pfad aus der gesamten Verzeichnisstruktur generiert und speicher die Datei dort ab. Findet kein Mensch mehr. :mrgreen:

Gruss
Shaman

Sharky 12. Okt 2004 09:10

Re: Eine Datei verstecken
 
Hai egal,
wenn es dir darum geht das keine wissen soll was in der Datei steht; und Du sie deswegen "versteckst" überlege dir doch einfach ob es nicht besser ist den Text darin zu verschlüsseln.

himitsu 12. Okt 2004 09:12

Re: Eine Datei verstecken
 
Zitat:

Zitat von Shaman
Hoi

Schreib dir eine Funktion, die einen zufälligen Pfad aus der gesamten Verzeichnisstruktur generiert und speicher die Datei dort ab. Findet kein Mensch mehr. :mrgreen:

Gruss
Shaman

Also ich würde die Finden ... wenn man weiß was so auf'm System los ist, dann ist das kein Problem.

Shaman 12. Okt 2004 09:18

Re: Eine Datei verstecken
 
Hoi

Na klar, mit allen Unter- und Unterunterordnern... Das sind doch tausende. Dann noch den Namen und Zeitstempel der Datei zufällig setzen und Du kannst sie suchen gehen. :wink:

Gruss
Shaman

fiasko 12. Okt 2004 09:20

Re: Eine Datei verstecken
 
Zitat:

Zitat von Shaman
Hoi

Na klar, mit allen Unter- und Unterunterordnern... Das sind doch tausende. Dann noch den Namen und Zeitstempel der Datei zufällig setzen und Du kannst sie suchen gehen. :wink:

Lol, man überwacht einfach welche Dateien der Installer/das Programm zugreift und fertig. Vorallem dumm wenn die Datei im tmp-Verzeichnis landet :mrgreen:

Shaman 12. Okt 2004 09:24

Re: Eine Datei verstecken
 
Zitat:

Zitat von fiasko
Lol, man überwacht einfach welche Dateien der Installer/das Programm zugreift und fertig

Ja, stimmt. Aber das wäre unsportlich :mrgreen:

egal 12. Okt 2004 09:25

Re: Eine Datei verstecken
 
Zitat:

Zitat von Shaman
Schreib dir eine Funktion, die einen zufälligen Pfad aus der gesamten Verzeichnisstruktur generiert und speicher die Datei dort ab. Findet kein Mensch mehr. :mrgreen:

Für Code wäre ich besonders dankbar! :lol:

egal 12. Okt 2004 09:27

Re: Eine Datei verstecken
 
Zitat:

Zitat von Sharky
Hai egal,
wenn es dir darum geht das keine wissen soll was in der Datei steht; und Du sie deswegen "versteckst" überlege dir doch einfach ob es nicht besser ist den Text darin zu verschlüsseln.

Das mache ich schon, aber ich will noch dazu diese Datei gut verstecken

Shaman 12. Okt 2004 09:27

Re: Eine Datei verstecken
 
Ich fände es auch witzig. Wenn mir nichts besseres in Sinn kommt, mach ich das heute Abend :drunken:

egal 12. Okt 2004 09:30

Re: Eine Datei verstecken
 
Zitat:

Zitat von Shaman
Ich fände es auch witzig. Wenn mir nichts besseres in Sinn kommt, mach ich das heute Abend :drunken:

ok, dann warte ich ab :mrgreen:

himitsu 12. Okt 2004 09:36

Re: Eine Datei verstecken
 
@Shaman
1. ich hab ein Refferenzsystem ... da brauch ich nur vergleichen lassen :P
2. wenn man nach max. 2 Monaten alles neu aufspielt, dann lernt man sein System kennen (in- und auswendig)

Luckie 12. Okt 2004 12:02

Re: Eine Datei verstecken
 
IOch fände das ehrlicg gesagt nicht so prikelnd, wenn ein Programm seine Dateien überall auf der Festplatte verstreut installiert. Und wenn ich eine Datei in einem verzeichnis finde, wo ich mir sicher bin, dass sie da nicht hingehört, dann ist die auch ganz schnell gelöscht. Zu dem erweckt das beim Benutzer den Verdacht, dass er eine Virus hätte, wenn da plötzlich irgendwo mysteriöse Dateien auftauchen. Und wenn ich rausfinden würde, dass die Datei von deinem Programm käme, dann wäre Schluss mit lustig.

Warum reicht verschlüsseln nicht? Nimm einen guten Algorithmus aus dem DEC und gut ist. Im Prinzip dürfte schon Hier im Forum suchenRC4 reichen. das ist ein einfacher, aber recht effizienter Algorithmus.

Shaman 12. Okt 2004 20:31

Re: Eine Datei verstecken
 
Delphi-Quellcode:
function GetRandomPath: string;
  function GetRandomDir(const Dir: string): string;
  var
    DirList: TStringList;
    SR: TSearchRec;
  begin
    Result:= Dir;
    if FindFirst(Dir + '*.*', faAnyFile, SR) = 0 then try
      DirList:= TStringList.Create;
      try
        repeat
          if SR.Attr and faDirectory = faDirectory then
            if (SR.Name <> '.') and (SR.Name <> '..') then
              DirList.Add(SR.Name);
        until FindNext(SR) <> 0;
        if DirList.Count > 0 then
          Result:= GetRandomDir(Dir + DirList[Random(DirList.Count)] + '\')
      finally
        DirList.Free;
      end;
    finally
      FindClose(SR);
    end;
  end;
var
  Buffer: array[0..255] of Char;
  I, L: Integer;
  FixedDrives: TStringList;
begin
  FixedDrives:= TStringList.Create;
  try
    L:= GetLogicalDriveStrings(SizeOf(Buffer), Buffer);
    for I:= 0 to (L-3) shr 2 do
      if GetDriveType(PChar(Buffer[I shl 2] + ':\')) = DRIVE_FIXED then
        FixedDrives.Add(Buffer[I shl 2] + ':\');
    Result:= GetRandomDir(FixedDrives[Random(FixedDrives.Count)]);
  finally
    FixedDrives.Free;
  end;
end;
Damit generierst Du dir einen zufälligen Pfad. Aber eben, nur zum Spass, man weiss ja nicht, wie's in dem Ordner mit den Schreibrechten aussieht. Und vielleicht ists ja tatsächlich mal der Temp-Ordner :zwinker:

Gruss
Shaman

c113plpbr 13. Okt 2004 13:53

Re: Eine Datei verstecken
 
Es gibt da noch nen paar andere möglichkeiten & methoden eine datei zu verstecken ... also nicht über attribute, sondern, man muss den programmen vorgaukeln, dass diese datei einfach nicht existiert ... nur ... gaaanz sicher ist das wieder auch nicht, da es natürlich auch wieder möglichkeiten gibt, dies auszuhebeln ... aber, für die meisten benutzer gibt es die datei dann _wirklich_ nimmer ;)
Dies wäre dann mit einer DLL möglich ...

Allerdings will und werde ich diesen Code nicht herausgeben, da dieser dann schon fast in den Bereich Virus/Trojaner fällt ...

ciao, Philipp

PS: Ich gebe ja zu ... ich hab mich mal damit etwas intensiver beschäftigt ... aber ohne böse hintergedanken :angel2:

egal 13. Okt 2004 14:13

Re: Eine Datei verstecken
 
Zitat:

Zitat von Luckie
IOch fände das ehrlicg gesagt nicht so prikelnd, wenn ein Programm seine Dateien überall auf der Festplatte verstreut installiert.

Ich überlege mir gerade, vielleicht reicht nur die Verschlüsselung doch :-D

egal 13. Okt 2004 14:15

Re: Eine Datei verstecken
 
Zitat:

Zitat von Shaman
Damit generierst Du dir einen zufälligen Pfad. Aber eben, nur zum Spass, man weiss ja nicht, wie's in dem Ordner mit den Schreibrechten aussieht. Und vielleicht ists ja tatsächlich mal der Temp-Ordner :zwinker:

Danke, muss es nur ausprobieren und überlegen, ob ich es wirklich benutze, weil mir Temp-Ordner gar nicht gefällt :mrgreen:

egal 13. Okt 2004 14:18

Re: Eine Datei verstecken
 
Zitat:

Zitat von c113plpbr
Dies wäre dann mit einer DLL möglich ...

Allerdings will und werde ich diesen Code nicht herausgeben, da dieser dann schon fast in den Bereich Virus/Trojaner fällt ...

Aha, das kann man doch mit Dll machen. Schade, dass du den code nicht veröffentlichen will, aber vielleicht privat? :P

c113plpbr 13. Okt 2004 17:07

Re: Eine Datei verstecken
 
Zitat:

Zitat von egal
Zitat:

Zitat von c113plpbr
Dies wäre dann mit einer DLL möglich ...

Allerdings will und werde ich diesen Code nicht herausgeben, da dieser dann schon fast in den Bereich Virus/Trojaner fällt ...

Aha, das kann man doch mit Dll machen. Schade, dass du den code nicht veröffentlichen will, aber vielleicht privat? :P

Sorry, but ... no chance ...

Ich wurde schon von mehreren gefragt, hab aber bisher immer abgelehnt. Dazu würde mich persönlich ein programm, dass seine dateien mit virus oder trojaner -methoden versteckt _verdammt_ nerven ... nur so ...

ciao, Philipp

negaH 14. Okt 2004 01:02

Re: Eine Datei verstecken
 
Mann, was ist daran so besonders geheim.

Im WEB kann man an jeder Ecke das Dateiformat von Ausführbaren Dateien downloaden, auch von DLL's. Wenn man das gemacht hat steht dann dort klipp und klar drinnen, das der Windows Module Loader sich nur über die Header orientiert. Im Klartext heist das, baue eine stinknormale DLL mit irgendwelchem verwirrenden aber sinnvoll aussehender Funktionalität. Dann kopierste einfach deine, hoffentlich verschlüsselte Textdatei, hinten an die DLL dran. Ganz am Ende dieser Datei schreibst du noch die Größe in Bytes der vorher rangehangenen Daten rein. Nun kannst du ganz einfach diese DLL in dein Programmvrzeichnis oder sonstwo hin installieren (ich würde den System Ordner nehmen), öffnest sie per TFileStream, liest die Größe der daten am Ende der Datei aus und positionierst den Stream vom Ende der datei um diese x Bytes. Dann lädst du deine daten aus dem Stream.

Einfacher gehts nicht, und wenn das Anti-Viren-Experten NICHT wissen sollten, dann wird es für mich auch verständlich warum soviele Anfänger Viren programieren können.

Allerdings, warum nicht diese Daten verschlüsselt in deine EXE als Resource einbinden ??
Ich vermute mal das dies Datei ein Lizensierungs Schlüssel enthält. Solche Tricks halten aber keinen erfahrenen Programierer auf. Stell die vor deinem geistigen Auge einen Menschen vor der DEINE Program vollständig in einer Sandbox laufen lässt. Ein Zugriff auf diese DLL entgeht dem dann nicht mehr, eher das Gegenteil -> er wird sich fragen "warum lädt der eine DLL als normales File und nicht als Modul ?"

Gruß Hagen

PS: Nicht das Wissen ist gefährlich, viel gefährlicher ist es Wissen nicht zu teilen.

c113plpbr 14. Okt 2004 15:25

Re: Eine Datei verstecken
 
Zitat:

Zitat von negaH
Mann, was ist daran so besonders geheim.

War das auf meinen Post bezogen? Wenn ja, ich meinte etwas ganz anderes ... API/Function-Hooking sagt dir bestimmt was, oder? Damit kann man nämlich dateien _wirklich_ verstecken ... (und dazu braucht man meist ne dll ... wobei es theoretisch auch mit ner exe funktionieren könnte ...)
Damit versteckt man aber einzelne (oder mehrere) Dateien (macht sie unsichtbar), und man versteckt dabei nicht Dateien in Dateien.

ciao, Philipp

negaH 14. Okt 2004 16:34

Re: Eine Datei verstecken
 
Ja und ? meine Aussage bleibt bestehen. Denn für sowas sucht man im WEB und findet dann Madshi's Komponenten. Diese sind frei verfügbar und erlauben das Kernel-Hooking.
Denoch, in einer Sandbox ist das irrelevant, weil da eine solche Anwendung nur die Kernel-Funktionen der Sandbox hookt, aber eben nicht die Kernel Funktionen des Betriebssystemes auf dem die Sandbox läuft. Ergo, auch das hilft nichts.

Nein, was mich stört bei solchen Aussagen wie "ich weis wie es geht, aber ich verate es dir nicht, weil du damit Viren programmieren könntest" ist:

1.) Viren lassen sich selbst mit Visual Basic programmieren, sie sind nicht zwangsläufig von Geheim-Wissen abhängig
2.) Da du die Tricks kennst musst auch du sie irgendwoher haben (in den meisten Fällen ist es nämlich kein selbst-erfundenes Wissen)
3.) d.h. ein anderer Programmierer hat dir das Wissen vermittelt und sich nicht so pingelig angestellt
4.) dieser Programmierer hat es dir unter anderem verraten damit man dieses Wissen verbreitet
5.) Viren als solches sind nicht die wirkliche Gefahr, sondern die Systeme die schlecht und unsicher sind und somit erst die Basis für Viren bilden, diese Systeme sind die eigentliche Ursache. Also: statt sich mit Schmerzmitteln vollzupumpen sollte man einfach zum Zahnarzt gehen.
6.) die meisten Leute die behaupten sie hätten Wissen, es aber nicht teilen wollen, sind Menschen die genau Wissen das sie dieses Wissen nicht besitzen oder nur als Halbwissen haben.
7.) Wenn man sein Wissen NICHT teilen möchte dann sollte man auch nicht öffentlich rumschreien das man dieses Wissen hat. Foren, wie dieses hier, sind eine Platform mit dem Ziele Wissen zu verbreiten,und meiner Meinung nach nicht primär um sich persänlich zu profilieren.
8.) Wissen als solches ist nicht absolut und Personenbezogen. Das was der Eine erfinden oder entdecken kann, kann der Andere mit der Zeit auch selber neu entdecken/erfinden.

das EINZIGSTE Argument was ich persönlich gelten lasse wäre das man ein bestimmtes fachspezifisches Wissen einfach nicht an einen Anfänger weitergeben kann. Damit er also zB. deine angesprochenen Tricks verstehen kann müsstest du ein ganzes Buch darüber schreiben, und das kostet eben Zeit. Und wir alle wissen ja das Zeit Geld ist.

Sorry, falls meine klaren Worte dich verletzen sollten, das ist garantiert nicht mein Ziel gewesen.

Gruß hagen

c113plpbr 14. Okt 2004 18:06

Re: Eine Datei verstecken
 
Hab ich behauptet, dass man das nicht umgehen kann? Nein, ich hab sogar gesagt, dass es möglich ist. Außerdem hab ich auch nicht behauptet, dass es die ultimative methode ist, da sich eigentlich alles irgendwie umgehen lässt, man braucht meist nur etwas phantasie ... ;)
Übrigens ... die MadCodeHook-Lib verbietet derartige spielchen ...

Es ist einfach grundsätzlich so, dass manche leute die einen solchen code finden, ihn für böse zwecke benutzen, und ich dies nicht unterstützen möchte. :roll:
zu 1: da geb ich dir recht, übrigens, das wissen ist nicht geheim, ich möchte nur, dass die DP von sowas frei bleibt.
zu 2: Naja, ich habe die grundlagen des API-Hookings von anderen erlernt, das ist klar, und die Libs hab ich natürlich auch nicht selbst geschrieben, ABER ich habe mir dieses Dateiversteckzeugs SELBER erarbeitet, und keineswegs irgendwelchen code irgendwoher kopiert!
zu 3: siehe 2. ...
zu 4: siehe 2. ...
zu 5: häää? übrigens: ich bin nicht für die sicherheit von systemen zuständig ... :roll:
zu 6: ich hab das zeug, und verstehe es soweit auch ... oder muss ich hier nun unbedingt beispiele in die welt setzen, um dies zu beweisen?
zu 7: ok, meinetwegen, ich wollte ihm damit aber eigentlich nur sagen, dass er da mit einer dll nicht so falsch lag ...
zu 8: sicher ... ich habs ja auch selber erarbeitet

zur info: dies ist in gewisser weise fachspezifisches wissen, und ich bezweifle, dass dies jeder verstehen würde.

Ich denke, dass mich deine worte nicht allzusehr verletzt haben, aber wehren darf ich mich wohl noch, oder ;)

ciao, Philipp

egal 15. Okt 2004 09:40

Re: Eine Datei verstecken
 
zu c113plpbr und negaH
Es klingt für mich viel zu kompliziert, Leute. API/Hooking. Madshi's-Komponenten usw. da habe ich echt keine Ahnung, ich bin kein erfahrener Programmierer, hab vor kurzem erst meine Ausbildung angefangen.
Das Thema ist natürlich für mich hoch interessant, aber mein Wissen reicht einfach nicht, um zu folgen, was ihr hier alles erzählt. Wenn es irgendwelche Beispiele wäre, dann könnte ich wahrscheinlich damit anfangen, sonst lasse ich einfach die Finger von diesem Thema weg, weil, wie gesagt, es viel zu kompliziert ist. :wall:

c113plpbr 15. Okt 2004 12:57

Re: Eine Datei verstecken
 
Wenn du beispiele willst, dann lad dir doch z.B. die MadCollection von http://www.madshi.net/ runter, da sind MadCodeHook, und noch ein paar beispiele dabei ...

ciao, Philipp

egal 15. Okt 2004 13:30

Re: Eine Datei verstecken
 
Zitat:

Zitat von c113plpbr
Wenn du beispiele willst, dann lad dir doch z.B. die MadCollection von http://www.madshi.net/ runter, da sind MadCodeHook, und noch ein paar beispiele dabei ...

ciao, Philipp

ok, danke für Link. Am WE lade sie runter und dann mal gucken, vielleicht ist es nicht so kompliziert, wie ich dachte. :mrgreen:


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:54 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