AlphaWolf commited on
Commit Β·
1ec74f2
1
Parent(s): ff8a05f
Upgrade Cloud Runner to v2.0 (Integrated Dork Studio)
Browse files
app.py
CHANGED
|
@@ -102,60 +102,92 @@ def set_mysql_attack():
|
|
| 102 |
"--dbms=MySQL --dump --force-ssl --random-agent --no-cast"
|
| 103 |
)
|
| 104 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 105 |
with gr.Blocks(theme=gr.themes.Soft(primary_hue="blue", secondary_hue="slate")) as demo:
|
| 106 |
-
gr.Markdown("# π SLMP Cloud Runner - Ultra Speed π©οΈ")
|
| 107 |
-
gr.Markdown("Deploy SQLMAP in the cloud for maximum bandwidth
|
| 108 |
|
| 109 |
-
with gr.
|
| 110 |
-
|
| 111 |
-
|
| 112 |
-
|
| 113 |
-
|
| 114 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 115 |
with gr.Row():
|
| 116 |
-
|
| 117 |
-
|
| 118 |
-
|
| 119 |
-
|
| 120 |
-
|
| 121 |
-
|
| 122 |
-
techn_input = gr.Textbox(label="π‘ Technique", placeholder="U (UNION), B (Blind), etc.")
|
| 123 |
-
proxy_input = gr.Textbox(label="π Proxy (Optional)", placeholder="http://127.0.0.1:8080")
|
| 124 |
-
extra_input = gr.Textbox(label="βοΈ Extra Arguments", placeholder="--dbms=Oracle --dump --batch")
|
| 125 |
|
| 126 |
-
|
| 127 |
-
|
| 128 |
-
with gr.Row():
|
| 129 |
-
btn_hashi = gr.Button("π° Hashi Victory (Anti-Ban)", variant="secondary")
|
| 130 |
-
btn_search = gr.Button("π Search (Oracle - Plan C)", variant="stop")
|
| 131 |
-
btn_mysql = gr.Button("π¬ Search (MySQL - Plan D)", variant="secondary")
|
| 132 |
-
btn_stop = gr.Button("π STOP", variant="stop")
|
| 133 |
-
|
| 134 |
-
with gr.Column(scale=3):
|
| 135 |
-
output_log = gr.Code(label="π LIVE CLOUD LOGS", language="markdown", interactive=False, lines=30)
|
| 136 |
-
|
| 137 |
-
# Event handlers
|
| 138 |
-
btn_run.click(
|
| 139 |
-
fn=run_sqlmap,
|
| 140 |
-
inputs=[url_input, threads_input, level_input, risk_input, tamper_input, techn_input, proxy_input, extra_input],
|
| 141 |
-
outputs=output_log,
|
| 142 |
-
queue=True
|
| 143 |
-
)
|
| 144 |
-
|
| 145 |
-
btn_hashi.click(
|
| 146 |
-
fn=set_hashi_victory,
|
| 147 |
-
outputs=[url_input, threads_input, level_input, risk_input, tamper_input, techn_input, proxy_input, extra_input]
|
| 148 |
-
)
|
| 149 |
|
| 150 |
-
|
| 151 |
-
|
| 152 |
-
|
| 153 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 154 |
|
| 155 |
-
|
| 156 |
-
|
| 157 |
-
|
| 158 |
-
)
|
|
|
|
|
|
|
|
|
|
|
|
|
| 159 |
|
| 160 |
if __name__ == "__main__":
|
| 161 |
print("β¨ SLMP Panel Live.")
|
|
|
|
| 102 |
"--dbms=MySQL --dump --force-ssl --random-agent --no-cast"
|
| 103 |
)
|
| 104 |
|
| 105 |
+
# --- Dork Studio Logic ---
|
| 106 |
+
def generate_dorks(domain, targeted_extensions, find_admin, find_files, find_errors):
|
| 107 |
+
dorks = []
|
| 108 |
+
base = f"site:{domain}" if domain else ""
|
| 109 |
+
|
| 110 |
+
if find_admin:
|
| 111 |
+
keywords = ["admin", "login", "dashboard", "portal", "cpanel", "wp-admin"]
|
| 112 |
+
for k in keywords:
|
| 113 |
+
dorks.append(f"Admin Search: {base} inurl:{k}")
|
| 114 |
+
|
| 115 |
+
if find_files:
|
| 116 |
+
exts = ["env", "log", "sql", "bak", "txt", "config"]
|
| 117 |
+
if targeted_extensions:
|
| 118 |
+
exts += targeted_extensions.split(",")
|
| 119 |
+
for ext in exts:
|
| 120 |
+
if ext.strip():
|
| 121 |
+
dorks.append(f"File Exposure ({ext.strip()}): {base} ext:{ext.strip()}")
|
| 122 |
+
dorks.append(f"{base} intitle:\"index of\"")
|
| 123 |
+
|
| 124 |
+
if find_errors:
|
| 125 |
+
errors = ["SQL syntax", "warning: mysql_", "unclosed quotation mark", "syntax error"]
|
| 126 |
+
for err in errors:
|
| 127 |
+
dorks.append(f"Error Leak: {base} intext:\"{err}\"")
|
| 128 |
+
|
| 129 |
+
return "\n".join(dorks)
|
| 130 |
+
|
| 131 |
with gr.Blocks(theme=gr.themes.Soft(primary_hue="blue", secondary_hue="slate")) as demo:
|
| 132 |
+
gr.Markdown("# π SLMP Cloud Runner v2.0 - Ultra Speed π©οΈ")
|
| 133 |
+
gr.Markdown("Deploy SQLMAP in the cloud for maximum bandwidth. Now includes Alpha Recon Studio.")
|
| 134 |
|
| 135 |
+
with gr.Tabs():
|
| 136 |
+
# TAB 1: ATTACK RUNNER
|
| 137 |
+
with gr.TabItem("βοΈ Attack Runner"):
|
| 138 |
+
with gr.Row():
|
| 139 |
+
with gr.Column(scale=2):
|
| 140 |
+
url_input = gr.Textbox(label="π― Target URL", placeholder="https://example.com/page.php?id=1")
|
| 141 |
+
|
| 142 |
+
with gr.Tabs():
|
| 143 |
+
with gr.TabItem("π Performance"):
|
| 144 |
+
with gr.Row():
|
| 145 |
+
threads_input = gr.Slider(minimum=1, maximum=10, step=1, value=10, label="Threads")
|
| 146 |
+
level_input = gr.Slider(minimum=1, maximum=5, step=1, value=5, label="Level")
|
| 147 |
+
risk_input = gr.Slider(minimum=1, maximum=3, step=1, value=3, label="Risk")
|
| 148 |
+
|
| 149 |
+
with gr.TabItem("π‘οΈ Advanced"):
|
| 150 |
+
tamper_input = gr.Textbox(label="π§ͺ Tampers", placeholder="space2comment,randomcase")
|
| 151 |
+
techn_input = gr.Textbox(label="π‘ Technique", placeholder="U (UNION), B (Blind), etc.")
|
| 152 |
+
proxy_input = gr.Textbox(label="π Proxy (Optional)", placeholder="http://127.0.0.1:8080")
|
| 153 |
+
extra_input = gr.Textbox(label="βοΈ Extra Arguments", placeholder="--dbms=Oracle --dump --batch")
|
| 154 |
+
|
| 155 |
with gr.Row():
|
| 156 |
+
btn_run = gr.Button("π₯ START SCAN", variant="primary")
|
| 157 |
+
with gr.Row():
|
| 158 |
+
btn_hashi = gr.Button("π° Hashi Victory", variant="secondary")
|
| 159 |
+
btn_search = gr.Button("π Search (Oracle)", variant="stop")
|
| 160 |
+
btn_mysql = gr.Button("π¬ Search (MySQL - Plan D)", variant="secondary")
|
| 161 |
+
btn_stop = gr.Button("π STOP", variant="stop")
|
|
|
|
|
|
|
|
|
|
| 162 |
|
| 163 |
+
with gr.Column(scale=3):
|
| 164 |
+
output_log = gr.Code(label="π LIVE CLOUD LOGS", language="markdown", interactive=False, lines=30)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 165 |
|
| 166 |
+
# TAB 2: RECON STUDIO (Merged)
|
| 167 |
+
with gr.TabItem("π¦
Alpha Recon Studio"):
|
| 168 |
+
with gr.Row():
|
| 169 |
+
with gr.Column():
|
| 170 |
+
domain_input = gr.Textbox(label="Target Domain", placeholder="example.com")
|
| 171 |
+
ext_input = gr.Textbox(label="Custom Extensions", placeholder="jsp, php, asp")
|
| 172 |
+
|
| 173 |
+
with gr.Group():
|
| 174 |
+
check_admin = gr.Checkbox(label="Find Admin Panels", value=True)
|
| 175 |
+
check_files = gr.Checkbox(label="Find Sensitive Files", value=True)
|
| 176 |
+
check_errors = gr.Checkbox(label="Find SQL Errors", value=True)
|
| 177 |
+
|
| 178 |
+
btn_gen = gr.Button("π Generate Recon Dorks", variant="primary")
|
| 179 |
+
|
| 180 |
+
with gr.Column():
|
| 181 |
+
dork_output = gr.Code(label="Generated Dorks", language="text", lines=20)
|
| 182 |
|
| 183 |
+
# Event handlers Runner
|
| 184 |
+
btn_run.click(run_sqlmap,inputs=[url_input, threads_input, level_input, risk_input, tamper_input, techn_input, proxy_input, extra_input], outputs=output_log, queue=True)
|
| 185 |
+
btn_hashi.click(set_hashi_victory, outputs=[url_input, threads_input, level_input, risk_input, tamper_input, techn_input, proxy_input, extra_input])
|
| 186 |
+
btn_search.click(set_search_attack, outputs=[url_input, threads_input, level_input, risk_input, tamper_input, techn_input, proxy_input, extra_input])
|
| 187 |
+
btn_mysql.click(set_mysql_attack, outputs=[url_input, threads_input, level_input, risk_input, tamper_input, techn_input, proxy_input, extra_input])
|
| 188 |
+
|
| 189 |
+
# Event handlers Recon
|
| 190 |
+
btn_gen.click(generate_dorks, inputs=[domain_input, ext_input, check_admin, check_files, check_errors], outputs=dork_output)
|
| 191 |
|
| 192 |
if __name__ == "__main__":
|
| 193 |
print("β¨ SLMP Panel Live.")
|