Skip to content

Fix pyExploitDb import for compatibility with newer versions#44

Open
elboulangero wants to merge 1 commit into
Hackman238:masterfrom
elboulangero:fix-pyexploitdb-import
Open

Fix pyExploitDb import for compatibility with newer versions#44
elboulangero wants to merge 1 commit into
Hackman238:masterfrom
elboulangero:fix-pyexploitdb-import

Conversation

@elboulangero
Copy link
Copy Markdown

pyExploitDb >= 0.3.3 module is installed with a lowercase package name (pyexploitdb) instead of the original (pyExploitDb). This causes ImportError on newer Python setups.

This patch updates parsers/Script.py and other files to try importing the new module first, and if that fails, fall back to the original module.

This ensures Legion works on systems where the package name differs.

pyExploitDb >= 0.3.3 module is installed with a lowercase
package name (`pyexploitdb`) instead of the original (`pyExploitDb`).
This causes ImportError on newer Python setups.

This patch updates `parsers/Script.py` and other files to try importing
the new module first, and if that fails, fall back to the original
module.

This ensures Legion works on systems where the package name differs.
ThereAreSomeWhoCallMeTimAtViasat added a commit to ThereAreSomeWhoCallMeTimAtViasat/legion that referenced this pull request Mar 31, 2026
…port, full test suites

Core fixes:
- v10.96: Context menu scroll arrows (▲/▼) for long port-action lists
- v10.97: Match banner user-select:none — banner excluded from click-drag selection
- v10.98: Per-process elapsed time from execution start (not queue time); global scan uptime clock in process bar
- v10.99: Kill ordering fix — _kill_all_descendants before shells so grandchildren don't re-parent to PID 1
- v10.100: NSE/vulners stage bypasses fastProcessQueue to start immediately after all PORTS stages
- v10.101: _shutting_down flag in scheduler — prevents orphan processes spawned after exit
- v10.102: NSE comma shorthand expansion for DB port lookup (192.168.85.11,111 → both hosts)
- v10.103: Config manager save fix — _backup_conf NameError (log not defined) caused 500/JSON.parse error
- v10.104: Revert 3x slow-tools timeout multiplier — configured value must be respected as-is
- v10.105: Interactive terminal in Tools tab shows PTY buffer output (not blank)
- v10.106: Tools tab auto-selects first tool on first visit; remembers last selection on return
- v10.107–v10.108: NSE name revert; scheduler timeout revert
- v10.109: AI Export HTML Report button — appears after Phase 1+2, downloads dark-themed report
- v10.110: Match navigation fetches full output (2 MB) for has_match processes so keyword always in view

Tests (23 + 20 = 43 new non-hollow Selenium tests):
- test_ui_v10c_features.py (port 5079): scan uptime clock, tools tab auto-select, match full output nav
- test_ui_session_tweaks.py (port 5080): splitter non-zero click, h-splitter direction, clear process output, host comma validation, add-hosts error display, context menu scroll arrows, match banner CSS, config manager save

Backlog: Hackman238#42 README, Hackman238#43 GIF demos, Hackman238#44 capability tables added

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant