Da ich ein m. E. aufwändiges Kalkulationsprogramm erstellt habe und dies
schützen möchte, brauche ich die Möglichkeit, mittels einer Abfrage einen
vergleich des Passwortes durchzuführen.
Das Ergebnis soll dann lauten:
Prüfe, ob das Passwort tatsächlich xyz lautet, wenn nicht, lösche die intern
wichtigen Daten.
Any idea??
THX
Gruß Peter
[..]
> Da ich ein m. E. aufwändiges Kalkulationsprogramm erstellt habe und dies
> schützen möchte, brauche ich die Möglichkeit, mittels einer Abfrage einen
> vergleich des Passwortes durchzuführen.
> Prüfe, ob das Passwort tatsächlich xyz lautet, wenn nicht, lösche die intern
> wichtigen Daten.
Hallo A,
ein aufwendiger, aber dafür _relativ_ sicherer Schutz wäre z.B. die
relevanten Zellen verschlüsselt (z.B. einfaches XOR) in der Datei
abzulegen und erst nach Eingabe eines Passwortes zu entschlüsseln.
Somit nützt es dem Angreifer nicht viel, wenn er Deinen VBA-Code
ausliest, da er zur Entschlüsselung immer noch das Passwort braucht,
welches nur Du kennst und das auch nirgends (in der Datei)
niedergeschrieben ist.
Grüsse
Michael
--
Michael Velten
email: mic...@michnet.de
homepage: http://www.michnet.de
/* Linux - we go where we want */
Der"Feind" bekommt mein Passwort nicht heraus, sondern teilt Excel einfach
mit, dass kein Passwort existiert - Excel glaubt dies und lässt alles mit
sich machen.
Ich vermute, dass in der Programmierung von Excel irgendwo ein Bit sitzt das
zwischen 1=gesperrt und 0=ungesperrt differenziert und von aussen durch
diesen Hack einfach umgeschrieben wird - nicht sehr genial, wenn ich recht
habe.
Noch irgendwelche Ideen.
Vielen Dank an alle für den investierten Hirnschmalz
> Vielleicht habe ich mich unklar ausgedrückt:
Ich denke, ich habe Dich schon richtig verstanden. s.u.
> Der"Feind" bekommt mein Passwort nicht heraus, sondern teilt Excel einfach
> mit, dass kein Passwort existiert - Excel glaubt dies und lässt alles mit
> sich machen.
In meinem vorherigen Posting hab' ich eine Variante beschrieben, der es
"egal" ist ob die Datei mit einem Schreib- / Leseschutz-Kennwort
versehen ist oder nicht, oder ob der Angreifer den Passwortschutz
umgehen kann.
Nochmal die Beschreibung:
Die Daten in der Datei sind alle verschlüsselt (diese Verschlüsselung
beruht auf einem eigenen Algorithmus, welchen Du selber in VBA
programmierst). Der Benutzer muss nun ein Passwort eingeben, welches zur
Entschlüsselung benötigt wird. Es wird nicht geprüft ob das Passwort
richtig ist. Bei falschem Passwort werden die Daten quasi
"zerstört". Dies dürfte allerdings kein Problem darstellen, da Du in
Deinem ersten Posting schriebst, dass bei falscher Passworteingabe die
wichtigen Daten gelöscht werden sollen.
Wenn Du willst kann ich Dir eine Beispieldatei mailen.
[..]
Hallo A. Jablonski,
um Dir meine Idee zu verdeutlichen habe ich hier einen kleines
Beispiel. Folgende Zahlenkolonne befindet sich in Zelle 'A2' und ist
ein verschlüsselter String.
.74.62.49.6.92.66.82.85.92.73.86.79.8.9.18.4.87.69.1.8.17.74.66.71.3.79.23.69.30.4.3.14.9.12.13.6.78.13.29.75.22.69.27.24.4.12.68.
Durch folgendes Makro und dem richtigen Passwort (welches über ein
Formular eingegeben werden muss) kann man diesen String
dechiffrieren.
Die Daten wurden vorher einfach mit dem Passwort, Zeichen für Zeichen
gexort und genau so läuft auch die Dechiffrierung ab.
Hier der Source-Code, da der Angreifer natürlich auch den
VBA-Projektschutz knacken könnte.
Sub Decrypt(k$)
Dim c$, i%, j%, b%, l%, e%, x%, y%, p$
c = [A2].Formula
Do
i = i + 1
Do
j = j + 1
If Mid(c, j, 1) = "." Then
b = j
l = b
Exit Do
End If
Loop
Do
l = l + 1
If Mid(c, l, 1) = "." Then
e = l
Exit Do
End If
Loop
If i Mod (Len(k) + 1) = 0 Then
i = i + 1
End If
x = Mid(c, b + 1, e - b - 1)
y = Asc(Mid(k, i Mod (Len(k) + 1), 1))
p = p & Chr(x Xor y)
Loop Until e >= Len(c)
[A3] = p
End Sub
Kann der Angreifer nun ohne das Passwort etwas mit den Daten in Zelle
'A2' anfangen?
ich muß leider Peter recht geben das Du keine Möglichkeit hast ein
Excelshett 100% zu sichern.
Habe selber schon herum experimentiert und einen Code gescheiben um ein
Paßword zu kacken und war total erstaunt, als ich feststellte, als ich die
geschützte Datei knackte. Mein Programm öffnete die Datei mit einem anderen
Paßword als ich festgelegt habe. Das heist das egal was für ein Paßword man
anlegt Excel mit unterschiedlichen Paßwörter überlistet werden kann. Der
Vorschlag von Michael ist prinzipiell nicht schlech, jedoch nicht viel Wert,
da jemand mit genügende Recherche auch den VBA-Schreibschutz aufheben kann,
und somit lesen kann wie der Inhalt zu entschlüßen ist. Meine Erfahrung hat
gezeigt das es absolut unmöglich ist eine Exceldatei 100% zu sichern.
Alerdings kann man es natürlich den Angreifer so schwer wie Möglich machen.
Dazu geört auch die Methode von Michael.
Gruß Mario
A. Jablonski <AJabl...@t-online.de> schrieb in im Newsbeitrag:
8ohg7t$d1i$16$1...@news.t-online.com...
Hallo Mario,
> Habe selber schon herum experimentiert und einen Code gescheiben um
> ein Paßword zu kacken und war total erstaunt, als ich feststellte, als
> ich die geschützte Datei knackte. Mein Programm öffnete die Datei mit
> einem anderen Paßword als ich festgelegt habe.
Könntest Du mir bitte den Code zur Verfügung stellen?
[..]
> Der Vorschlag von Michael ist prinzipiell nicht schlech, jedoch nicht
> viel Wert, da jemand mit genügende Recherche auch den VBA-Schreibschutz
> aufheben kann, und somit lesen kann wie der Inhalt zu entschlüßen
> ist.
Du hast Dir mein Posting entweder nicht richtig durchgelesen oder nicht
verstanden.
Auszug aus dem letzten Posting:
[..]
Hier der Source-Code, da der Angreifer natürlich auch den
VBA-Projektschutz knacken könnte.
[..]
Ich habe den VBA-Code extra mit angegeben, damit klar werden soll, daß
die Sicherheit nicht auf dem Geheimnis des Codes bzw. des Algorithmus
beruht, sondern auf dem Passwort, welches nirgends in der Datei
niedergeschrieben steht.
> Meine Erfahrung hat gezeigt das es absolut unmöglich ist eine
> Exceldatei 100% zu sichern. Alerdings kann man es natürlich den
> Angreifer so schwer wie Möglich machen. Dazu geört auch die Methode
> von Michael.
Da kann ich Dir nur zustimmen. Es ist unmöglich eine Exceldatei
bzw. irgendwelche anderen Daten 100% zu schützen.
Gruß Peter
Das ein Excelsheet nicht 100-prozentig sicher ist, ist ja wohl nichts
Neues. Das man das Sheet mit verschiedenen Paßwörtern öffnen kann, liegt
an dem eingesetzten Verschlüsselungsverfahren.
Wenn Du wirklich sensible Daten hast, ist es wohl das Beste, diese extra
zu verschlüsseln. Dazu sollte man aber nicht den XOR-Algorithmus
verwenden. So wie Michael schreibt, spielt es dabei keine Rolle, ob der
"Feind" den Algorithmus kennt oder nicht. Ausschlaggebend ist dabei nur
die Kenntnis des Paßwortes, da man die Daten nur mit dessen Kenntnis
zurückübersetzen kann. Man kann natürlich auch diese Methode aushebeln,
aber dazu bedarf es dann schon "größerer" Hilfsmittel.
Gruß
Thomas
In article <96771680...@inet-proxy.gdm.de>,
"Mario Zimmermann" <mario.zi...@gao-munich.com> wrote:
> Hy A,
>
> ich muß leider Peter recht geben das Du keine Möglichkeit hast ein
> Excelshett 100% zu sichern.
> Habe selber schon herum experimentiert und einen Code gescheiben um
ein
> Paßword zu kacken und war total erstaunt, als ich feststellte, als ich
die
> geschützte Datei knackte. Mein Programm öffnete die Datei mit einem
anderen
> Paßword als ich festgelegt habe. Das heist das egal was für ein
Paßword man
> anlegt Excel mit unterschiedlichen Paßwörter überlistet werden kann.
Der
> Vorschlag von Michael ist prinzipiell nicht schlech, jedoch nicht viel
Wert,
> da jemand mit genügende Recherche auch den VBA-Schreibschutz aufheben
kann,
> und somit lesen kann wie der Inhalt zu entschlüßen ist. Meine
Erfahrung hat
> gezeigt das es absolut unmöglich ist eine Exceldatei 100% zu sichern.
> Alerdings kann man es natürlich den Angreifer so schwer wie Möglich
machen.
> Dazu geört auch die Methode von Michael.
>
> Gruß Mario
> A. Jablonski <AJabl...@t-online.de> schrieb in im Newsbeitrag:
> 8ohg7t$d1i$16$1...@news.t-online.com...
Sent via Deja.com http://www.deja.com/
Before you buy.
> Wenn Du wirklich sensible Daten hast, ist es wohl das Beste, diese extra
> zu verschlüsseln. Dazu sollte man aber nicht den XOR-Algorithmus
> verwenden.
Hallo Thomas,
wenn das Passwort bzw. der Schlüssel wirklich zufällig gewählt wurde,
er genau so lange wie die zu verschlüsselnden Daten ist und nur einmal
verwendet wird ist XOR in dieser Konstellation, von der
Verschlüsselungsmethode her gesehen, absolut sicher und unknackbar.
("Absolut sicher" bedeutet nicht, daß man nicht doch an den Schlüssel
gelangen kann, wie z.B. durch Bestechung, Einschüchterung, etc.)
Wer mit den Office-Produkten arbeitet hat "kein Recht" auf geistiges
Eigentum bezüglich Entwicklung. So schön VBA ist und ich bin ein
begeisterter Anhänger,
so klar muß man sich sein, daß es offener Code ist.
Gruß Peter
du hast mich auch sehr neugierig gemacht.
kann ich bitte auch den code bekommen?? 8-)))
"Mario Zimmermann" <mario.zi...@gao-munich.com> schrieb im Newsbeitrag
news:96771680...@inet-proxy.gdm.de...
> Hy A,
>
> ich muß leider Peter recht geben das Du keine Möglichkeit hast ein
> Excelshett 100% zu sichern.
> Habe selber schon herum experimentiert und einen Code gescheiben um ein
> Paßword zu kacken und war total erstaunt, als ich feststellte, als ich die
> geschützte Datei knackte. Mein Programm öffnete die Datei mit einem
anderen
> Paßword als ich festgelegt habe. Das heist das egal was für ein Paßword
man
> anlegt Excel mit unterschiedlichen Paßwörter überlistet werden kann. Der
> Vorschlag von Michael ist prinzipiell nicht schlech, jedoch nicht viel
Wert,
> da jemand mit genügende Recherche auch den VBA-Schreibschutz aufheben
kann,
> und somit lesen kann wie der Inhalt zu entschlüßen ist. Meine Erfahrung
hat
> gezeigt das es absolut unmöglich ist eine Exceldatei 100% zu sichern.
> Alerdings kann man es natürlich den Angreifer so schwer wie Möglich
machen.
> Dazu geört auch die Methode von Michael.
>
> Gruß Mario
> A. Jablonski <AJabl...@t-online.de> schrieb in im Newsbeitrag:
> 8ohg7t$d1i$16$1...@news.t-online.com...
>
>Letztendlich ist es eine Frage die auch in Access immer wieder auftaucht.
>Kann man das kompilieren ? Man kann es nicht.
>
>Wer mit den Office-Produkten arbeitet hat "kein Recht" auf geistiges
>Eigentum bezüglich Entwicklung. So schön VBA ist und ich bin ein
>begeisterter Anhänger,
>so klar muß man sich sein, daß es offener Code ist.
>
>Gruß Peter
IMO bietet aber gerade Access den besseren *Schutz*. Hier gibt es das
Developer-Kit, also Access als RuntimeModul.
>
>
>
--
Gruß und ciao,
Rolf Ca.
http://www.spacewood.de
my self
http://www.califer.de
> (Außer der Feind hat einmal eine Data gesehen, dann ist es nur
> eine Frage von Minuten, bis er Rückschlüsse auf das Passwort hat),
Ich tippe mal, daß Du mit "eine Data gesehen" den zu einem Chiffretext
zugehörigen Klartext meinst; mit dieser 'known-plaintext'-Attacke kann
der Angreifer das Passwort auch ohne Computer problemlos ermitteln.
Desweiteren würde ein geübter Kryptanalytiker den XOR-Schutz (insofern
es sich nicht um ein One-Time-Pad handelt) auch ohne Klartext knacken
können; z.B. mit dem Koinzidenzindex-Verfahren.
> aber ich hatte eigentlich die Anfrage so verstanden,
> daß nicht nur Daten, sondern auch gerade Formeln verborgen werden
> sollen und zwar auch vor dem berechtigten Benutzer. Dieser soll
> z.B. nicht die Möglichkeit haben, die Formeln einzusehen.
> Dies kann er aber, wenn er den Blattschutz, bzw. den Arbeitsmappenschutz
> aufhebt.
Ich hatte die Anfrage anders aufgefasst. Wenn man allerdings von dem von
Dir beschriebenen Sachverhalt ausgeht, ist ein Schutzmechanismus wohl
nicht realisierbar.
da ich ein Zahlenmensch bin hatte ich bis dato meine Tabellen mit Zahlen
geschützt. Dementsprechen habe ich einfach eine Schleife geschrieben um an
das Paßword heran zu kommen. Dürfte für Dich kein Thema sein. Trotz allem
war ich überrascht, das ich auf verschiedene Ergebnisse gekommen bin.
Nachdem ich mir Dein Posting nochmal durchgelesen habe habe ich es richtig
verstanden. Merci für den Hinweis.
Gruß Mario
Michael Velten <mic...@michnet.de> schrieb in im Newsbeitrag:
h4elo8...@blowfish.sea.net...
hätte mich woll deutlicher ausdrücken sollen. Ich hole das hiermit nach. Da
ich ein Zahlenmenschbin, habe ich bis dato meine Dateien imer mit
Zahlenkennwörter gesichert. Um diese zu knacken benötigt man lediglich eine
Schleife. Dies ist sicher kein Problem für Dich.
Sorry für die nicht präzise Darstellung.
Gruß Mario
Marcus Uermoes <uer...@ifa-tulln.ac.at> schrieb in im Newsbeitrag:
8oloss$59qg$1...@www.univie.ac.at...
Da kann ich das ganze gleich in VB-schreiben ;-)
Gruß Peter
ich bin überreascht, welche Resonanz es auf meine Frage gegeben hat - vielen
Dank allen beteiligten.
Ich werde wohl einsehen müssen, dass es schon sehr schwierig ist, etwas mit
Standardsoftware zu erstellen und gleichzeitig zu schützen - Schade.
Gleichzeitig mein Ausdruck der Bewunderung über das hohe Niveau - ich war
immer der Meinung, recht viel Ahnung zu haben, nachdem ich die Antworten
gelesen habe, werde ich wohl in die Volkshochschule gehen und einen
Anfängerkurs belegen ;-).
Macht weiter so ...
AJablonski