Für Tools schaue ich regelmäsig DigitalUpgrade. Für die Info rund um den Mac den Maccast und zum Vergnügen iSightseeing das macht auch nocht fun.
Warum das denn? Bist Du ein Befürworter von "Security by Obscurity"? Des is ja wohl net wahr...hallo admins, löscht mal den thread hier, des ja wohl nich wahr
on run
set the_image to choose file with prompt "Wähle ein verschlüsseltes Disk Image (.dmg)" of type {"com.apple.disk-image-sparse", "com.apple.disk-image-udif"} without invisibles, multiple selections allowed and showing package contents
set alphabet to display dialog "Gib alle Buchstaben uns Zeichen ein, die ausprobiert werden sollen." default answer "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
set stellen to display dialog "Wieviele Stellen hat das Passwort?" default answer "8"
set alles to display dialog "Alle Stellen von 1 bis " & text returned of stellen & " durchprobieren?" buttons {"Nein", "Ja"} default button "Ja"
set kontrolle to display dialog "Kontrollausgaben in Konsole?" buttons {"Nein", "Ja"} default button "Nein"
if button returned of kontrolle is "Ja" then
set kontrolle to "print STDERR $pwd,qq'..\\n' if $stellen==2;"
else
set kontrolle to ""
end if
set passwort to (do shell script "perl <<-'ENDE'
use strict;
use warnings;
open STDERR,'>>/dev/console';
my($pfad, $stellen, $alphabet, $alles) =split /[\\015\\012]+/,join '',<DATA>;
my @alphabet= split //,$alphabet;
$alles= $alles eq 'Ja';
knack('',$stellen);
sub knack {
my($pwd,$stellen)= @_;" & kontrolle & "
if ($stellen<1) {
versuch($pwd);
}
else {
versuch($pwd) if $alles;
foreach (@alphabet) {
knack($pwd . $_, $stellen-1);
}
}
}
sub versuch {
my($pwd)= @_;
open my $hdiutil,'|-','hdiutil attach ' . $pfad . ' -mount required -stdinpass 2>/tmp/knack > /dev/null';
print $hdiutil qq'$pwd\\x00';
close $hdiutil;
open my $ergebnis,'<','/tmp/knack';
my $r=<$ergebnis>;
close $ergebnis;
return if defined $r;
print qq'Das passwort ist >>$pwd<<\\n';
exit;
}
__DATA__" & (ASCII character 10) & (quoted form of POSIX path of the_image) & (ASCII character 10) & text returned of stellen & (ASCII character 10) & text returned of alphabet & (ASCII character 10) & button returned of alles)
if passwort is "" then
display dialog "Kein Erfolg"
else
display dialog passwort
end if
end run
Na, da gibt es also zur Belohnung doch noch das geforderte AS-Skript!
Funktioniert prima …
Bei 1000 Möglichkeiten hat es gut zweieinhalb Minuten gerödelt.
Das bedeutet hochgerechnet, dass es auf meinem Rechner bei einem 6-stelligen Passwort mit den default answer angegebenen Zeichen im Schnitt gute 146 Jahre rödelt … bei einem 8-stelligen Passwort rund 184000 Jahre
Danke für das wunderbare Skript!
Sicherlich. Das ist dann aber, dank meiner Vorleistung, trivialWenn man die Liste aller beliebten Vor/Tiernamen eingibt, kommt man schneller zu Erfolg!
Schau mal bitte genau hin. Das ist nicht in AppleScript, sondern, wie vom Fragesteller gewünscht mit Applescript. Die eigentliche "Knackarbeit" leistet Perl.Apfelskript ist ja nicht gerade für Performance optimiert![]()
![]()
Wir verwenden essentielle Cookies, damit diese Website funktioniert, und optionale Cookies, um den Komfort bei der Nutzung zu verbessern.
Für die Ihnen angezeigten Verarbeitungszwecke können Cookies, Geräte-Kennungen oder andere Informationen auf Ihrem Gerät gespeichert oder abgerufen werden.
Anzeigen und Inhalte können basierend auf einem Profil personalisiert werden. Es können mehr Daten hinzugefügt werden, um Anzeigen und Inhalte besser zu personalisieren. Die Performance von Anzeigen und Inhalten kann gemessen werden. Erkenntnisse über Zielgruppen, die die Anzeigen und Inhalte betrachtet haben, können abgeleitet werden. Daten können verwendet werden, um Benutzerfreundlichkeit, Systeme und Software aufzubauen oder zu verbessern.
Durch das Klicken des Buttons "Zustimmen" willigen Sie gem. Art. 49 Abs. 1 DSGVO ein, dass auch Anbieter in den USA Ihre Daten verarbeiten. In diesem Fall ist es möglich, dass die übermittelten Daten durch lokale Behörden verarbeitet werden.