Skip to content
This repository was archived by the owner on Feb 10, 2025. It is now read-only.

Commit d463671

Browse files
committed
update v1.0.7
1 parent 484816a commit d463671

32 files changed

+2098
-91
lines changed

GUI/css/plugins.css

+36
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
#plugins-container {
2+
display: grid;
3+
grid-template-columns: repeat(2, 1fr);
4+
gap: 20px;
5+
margin: 20px;
6+
}
7+
8+
.plugin-frame {
9+
border: 2px solid #3498db;
10+
border-radius: 8px;
11+
padding: 20px;
12+
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1), 0 0 10px #0287CF;
13+
text-align: center;
14+
}
15+
16+
.plugin-info {
17+
font-size: 20px;
18+
font-weight: bold;
19+
margin-bottom: 10px;
20+
color: #3498db;
21+
}
22+
23+
.created-by {
24+
color: #666;
25+
margin-bottom: 20px;
26+
}
27+
28+
.enter-button {
29+
background-color: #3498db;
30+
color: #fff;
31+
padding: 10px 20px;
32+
border: none;
33+
border-radius: 5px;
34+
cursor: pointer;
35+
font-size: 16px;
36+
}

GUI/css/styles.css

+1-1
Original file line numberDiff line numberDiff line change
@@ -305,4 +305,4 @@
305305
border-color: #4ba3e2;
306306
box-shadow: 0 6px 8px rgba(0, 0, 0, 0.15), 0 0 12px #4ba3e2;
307307
background-color: #444444;
308-
}
308+
}

GUI/index.html

+10-4
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
<meta charset="utf-8">
55
<meta name="viewport" content="width=device-width, initial-scale=1">
66
<link rel="stylesheet" href="css/styles.css">
7+
<link rel="stylesheet" href="css/plugins.css">
78
<link rel="icon" type="image/png" href="/de4py.ico" />
89
<script type="text/javascript" src="/eel.js"></script>
910
<script type="text/javascript" src="js/scripts.js"></script>
@@ -25,6 +26,7 @@
2526
<div onclick="navto('deobfuscator')" class="btn" style="background-image: url('feather/layers.svg');background-size: 24px 24px;background-repeat: no-repeat;background-position: 10px center;">Deobfuscator</div>
2627
<div onclick="navto('pyshell')" class="btn" style="background-image: url('feather/terminal.svg');background-size: 24px 24px;background-repeat: no-repeat;background-position: 10px center;">PyShell</div>
2728
<div onclick="navto('analyzer')" class="btn" style="background-image: url('feather/file-text.svg');background-size: 24px 24px;background-repeat: no-repeat;background-position: 10px center;">Analyzer</div>
29+
<div onclick="navto('plugins')" class="btn" style="background-image: url('feather/grid.svg');background-size: 24px 24px;background-repeat: no-repeat;background-position: 10px center;">Plugins</div>
2830
<div onclick="navto('about')" class="btn" style="background-image: url('feather/info.svg');background-size: 24px 24px;background-repeat: no-repeat;background-position: 10px center;">About</div>
2931
</div>
3032
<div class="menulol-container" id="menulol" style="left: 20px;">
@@ -35,7 +37,7 @@
3537
<h1>Behavior Monitoring</h1>
3638
<div class="frame" style="position: absolute; top: 120px;left:500px; width:400px; height:360px;">
3739
<h1> Output: <button onclick="document.getElementById('outputwinapihooks').select(); document.execCommand('copy');createnotification('success', 'Copied');" style="margin-left: 150px;" class="btns">Copy Output</button></h1>
38-
<textarea class="scroll-box" id="outputwinapihooks" style="height:250px;width: 380px; background-color:#1f1f1f; color: white;font-family: 'Share Tech Mono', monospace; resize:none;outline: none;"></textarea>
40+
<textarea class="scroll-box" id="outputwinapihooks" style="height:250px;width: 380px;font-family: 'Share Tech Mono', monospace; resize:none;outline: none;"></textarea>
3941
</div>
4042
<div style="position: absolute; top: 120px; left: 50px; width: 350px; height: 150px;">
4143
<div class="checkbox-container">
@@ -94,7 +96,7 @@ <h1>De4py deobfuscator</h1>
9496
<div class="frame" style="position: absolute; top: 120px;left:500px; width:400px; height:350px;">
9597
<h1> Output: <button onclick="document.getElementById('outputDEOBF').select(); document.execCommand('copy');createnotification('success', 'Copied');" style="margin-left: 150px;" class="btns">Copy Output</button>
9698
</h1>
97-
<textarea class="scroll-box" id="outputDEOBF" style="height:260px;width: 380px; background-color:#1f1f1f; color: white;font-family: 'Share Tech Mono', monospace; resize:none;outline: none;"></textarea>
99+
<textarea class="scroll-box" id="outputDEOBF" style="height:260px;width: 380px; font-family: 'Share Tech Mono', monospace; resize:none;outline: none;"></textarea>
98100
</div>
99101
</section>
100102
<section id="pyshell" class="center hidden">
@@ -124,7 +126,7 @@ <h1 style="margin-left:390px;">Commands</h1>
124126
</div>
125127
<div class="frame" style="position: absolute; top: 120px;left:500px; width:400px; height:85px;">
126128
<h3>Output:</h3>
127-
<textarea class="scroll-box" id="outputPYSHELL" style="height:5px;width: 380px; background-color:#1f1f1f; color: white;font-family: 'Share Tech Mono', monospace; resize:none;outline: none;overflow:hidden;"></textarea>
129+
<textarea class="scroll-box" id="outputPYSHELL" style="height:5px;width: 380px;font-family: 'Share Tech Mono', monospace; resize:none;outline: none;overflow:hidden;"></textarea>
128130
</div>
129131
<div id="IDKWHATSHOULDINAMEIT" style="position: fixed;top: 0;left: 0;width: 100%;height: 100%;backdrop-filter: blur(5px);background-color: rgba(0, 0, 0, 0.5);z-index: 9999;display:none;">
130132
<div style="padding-left: 800px;margin-top: 50px;">
@@ -148,7 +150,7 @@ <h1>Analyzer</h1>
148150
</div>
149151
<div class="frame" style="position: absolute; top: 120px;left:500px; width:400px; height:360px;">
150152
<h1> Output: <button onclick="document.getElementById('outputanalyzer').select(); document.execCommand('copy');createnotification('success', 'Copied');" style="margin-left: 150px;" class="btns">Copy Output</button></h1>
151-
<textarea class="scroll-box" id="outputanalyzer" style="height:250px;width: 380px; background-color:#1f1f1f; color: white;font-family: 'Share Tech Mono', monospace; resize:none;outline: none;"></textarea>
153+
<textarea class="scroll-box" id="outputanalyzer" style="height:250px;width: 380px ;font-family: 'Share Tech Mono', monospace; resize:none;outline: none;"></textarea>
152154
</div>
153155
<div class="frame" style="position: absolute; top: 230px; left: 50px; width: 390px; height: 290px; padding:0px;">
154156
<h1 style="margin-left:150px;">options</h1>
@@ -161,6 +163,10 @@ <h1 style="margin-left:150px;">options</h1>
161163
</div>
162164
</div>
163165
</section>
166+
<section id="plugins" class="center hidden">
167+
<div id="plugins-container">
168+
</div>
169+
</section>
164170
<section id="about" class="center hidden">
165171
<div class="about-info frame">
166172
<h1>About</h1>

GUI/js/scripts.js

+25
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,17 @@ async function exec_command(command) {
7979
}
8080
}
8181

82+
async function loadPlugins() {
83+
eel.load_plugins();
84+
let pluginsContainer = document.getElementById('plugins-container');
85+
let pluginsHtml = await eel.get_plugins()();
86+
if (!pluginsHtml) {
87+
document.getElementById('plugins').innerHTML = "<h1>No plugins where loaded</h1>";
88+
}
89+
pluginsContainer.innerHTML = pluginsHtml;
90+
}
91+
92+
8293
function pid_widget(method) {
8394
if (!method) {
8495
document.getElementById('IDKWHATSHOULDINAMEIT').style.display = 'none';
@@ -272,10 +283,24 @@ async function analyzer_command(command) {
272283
return
273284
}
274285
}
286+
eel.expose(applyCSS);
287+
function applyCSS(cssCode) {
288+
const styleElement = document.createElement("style");
289+
styleElement.type = "text/css";
290+
if (styleElement.styleSheet) {
291+
styleElement.styleSheet.cssText = cssCode;
292+
} else {
293+
styleElement.appendChild(document.createTextNode(cssCode));
294+
}
295+
document.head.appendChild(styleElement);
296+
const bodyElement = document.getElementsByTagName('body')[0];
297+
bodyElement.style.cssText += cssCode;
298+
}
275299

276300
document.addEventListener('DOMContentLoaded', function() {
277301
loadchangelog();
278302
load_info();
303+
loadPlugins();
279304
setInterval(updatetime, 1000);
280305
const navbar = document.getElementById('navbar');
281306
const menuToggle = document.getElementById('menulol');

INFO/changelog.json

+9-1
Original file line numberDiff line numberDiff line change
@@ -43,5 +43,13 @@
4343
"changes": [
4444
"Added CLI mode (use --cli to run it)"
4545
]
46-
}
46+
},
47+
{
48+
"version": "1.0.7",
49+
"changes": [
50+
"Added plugins feature (https://bit.ly/de4pyplugins)",
51+
"Improved WinAPI hooking",
52+
"Added test feature (use --test to run it) "
53+
]
54+
}
4755
]

INFO/version

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
V1.0.6
1+
V1.0.7

TUI/cli.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ def signal_handler(sig, frame):
2222

2323
signal.signal(signal.SIGINT, signal_handler)
2424
sys.excepthook = custom_error
25-
tui.clear_console()
2625
change_log = None
2726
platform_info = None
2827
file_path = None
@@ -349,4 +348,5 @@ def start():
349348
home_tab()
350349

351350
if __name__ == "__main__":
351+
tui.clear_console()
352352
start()

0 commit comments

Comments
 (0)