mirror of
https://github.com/dobin/SuperMega
synced 2026-06-02 17:27:10 +00:00
feature: web: save project
This commit is contained in:
@@ -12,14 +12,18 @@
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
|
||||
|
||||
|
||||
<!-- a bootstrap dropdown to select one of the log files -->
|
||||
<div class="col-md-3">
|
||||
|
||||
<form method="POST" enctype="multipart/form-data" action="/add_project">
|
||||
|
||||
|
||||
|
||||
<div class="row row-cols-lg-auto g-3">
|
||||
|
||||
<input type="text" name="project_name" class="hidden form-control" value="{{project_name}}"
|
||||
placeholder="Projekt" aria-label="PROJECTNAME" aria-describedby="basic-addon1">
|
||||
|
||||
<select class="form-select" name="shellcode" aria-label="SHELLCODE">
|
||||
{% for shellcode in shellcodes %}
|
||||
@@ -80,6 +84,8 @@
|
||||
{% endfor %}
|
||||
</select>
|
||||
|
||||
<button class="btn btn-primary" type="submit" value="save">Save</button>
|
||||
|
||||
</div>
|
||||
</form>
|
||||
|
||||
|
||||
+12
-10
@@ -63,7 +63,6 @@ def project(name):
|
||||
|
||||
@views.route("/add_project", methods=['POST', 'GET'])
|
||||
def inject():
|
||||
|
||||
if request.method == 'POST':
|
||||
config.load()
|
||||
settings = Settings()
|
||||
@@ -88,15 +87,19 @@ def inject():
|
||||
|
||||
inject_style = request.form['inject_style']
|
||||
settings.inject_style = InjectStyle[inject_style]
|
||||
|
||||
print(str(settings))
|
||||
|
||||
project = Project(project_name, settings)
|
||||
project.settings = settings
|
||||
storage.add_project(project)
|
||||
|
||||
if storage.get_project(project_name) != None:
|
||||
project = storage.get_project(project_name)
|
||||
project.settings = settings
|
||||
else:
|
||||
project = Project(project_name, settings)
|
||||
project.settings = settings
|
||||
settings.project_name = project_name
|
||||
storage.add_project(project)
|
||||
storage.save_data()
|
||||
return render_template('project_add_post.html')
|
||||
else:
|
||||
return redirect("/project/{}".format(project_name), code=302)
|
||||
|
||||
else: # GET
|
||||
exes = []
|
||||
for file in os.listdir("app/upload/exe"):
|
||||
exes.append(file)
|
||||
@@ -122,7 +125,6 @@ def inject():
|
||||
)
|
||||
|
||||
#start(settings)
|
||||
|
||||
|
||||
|
||||
@views.route("/build")
|
||||
|
||||
@@ -11,6 +11,7 @@ logger = logging.getLogger("Project")
|
||||
|
||||
class Project():
|
||||
def __init__(self, settings: Settings):
|
||||
self.name: str = ""
|
||||
self.settings: Settings = settings
|
||||
self.payload: Payload = Payload(self.settings.payload_path)
|
||||
self.exe_host: ExeHost = ExeHost(self.settings.inject_exe_in)
|
||||
|
||||
Reference in New Issue
Block a user