exploitgraph 1.0.4__tar.gz → 1.0.5__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: exploitgraph
3
- Version: 1.0.4
3
+ Version: 1.0.5
4
4
  Summary: Automated attack path discovery and exploitation framework for cloud-native applications
5
5
  Author-email: Prajwal Pawar <prajwal@exploitgraph.io>
6
6
  License: MIT
@@ -0,0 +1,52 @@
1
+ def main():
2
+ from exploitgraph.core.logger import log
3
+ from exploitgraph.core.module_loader import loader
4
+ from exploitgraph.core.session_manager import session_manager
5
+ from exploitgraph.core.console import print_banner, ExploitGraphConsole
6
+
7
+ import argparse
8
+ import os
9
+ import sys
10
+
11
+ parser = argparse.ArgumentParser(
12
+ prog="exploitgraph",
13
+ description="ExploitGraph — Automated Attack Path Discovery & Exploitation Framework",
14
+ )
15
+
16
+ parser.add_argument("-t", "--target")
17
+ parser.add_argument("-m", "--module")
18
+ parser.add_argument("--auto", action="store_true")
19
+ parser.add_argument("--mode", choices=["offensive", "defensive"], default="offensive")
20
+ parser.add_argument("--list-modules", action="store_true")
21
+ parser.add_argument("-q", "--quiet", action="store_true")
22
+
23
+ args = parser.parse_args()
24
+
25
+ if not args.quiet:
26
+ os.system("clear")
27
+ print_banner()
28
+
29
+ loader.discover()
30
+
31
+ if args.list_modules:
32
+ for cat, mods in loader.all_modules().items():
33
+ if mods:
34
+ print(f"\n {cat.upper()}")
35
+ for m in mods:
36
+ print(f" {m['path']:<38} {m['description'][:48]}")
37
+ print(f"\n Total: {loader.count()} modules")
38
+ return
39
+
40
+ if args.target:
41
+ s = session_manager.new(args.target, "session", args.mode)
42
+ else:
43
+ s = session_manager.new("http://127.0.0.1:5000", "default", args.mode)
44
+
45
+ console = ExploitGraphConsole()
46
+
47
+ if args.auto:
48
+ console._mode = args.mode
49
+ console._run_auto_chain()
50
+ return
51
+
52
+ console.cmdloop()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: exploitgraph
3
- Version: 1.0.4
3
+ Version: 1.0.5
4
4
  Summary: Automated attack path discovery and exploitation framework for cloud-native applications
5
5
  Author-email: Prajwal Pawar <prajwal@exploitgraph.io>
6
6
  License: MIT
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "exploitgraph"
7
- version = "1.0.4"
7
+ version = "1.0.5"
8
8
  description = "Automated attack path discovery and exploitation framework for cloud-native applications"
9
9
  readme = "README.md"
10
10
  license = { text = "MIT" }
@@ -1,3 +0,0 @@
1
- def main():
2
- from exploitgraph import main as real_main
3
- real_main()
File without changes
File without changes
File without changes