I've encountered an issue in how absolute file paths are handled that are passed to the -D, --db-location flag.
Bug 🐛
https://github.com/sensepost/gowitness/blob/master/storage/db.go#L52 is missing logic to appropriately handle absolute file paths, for example:
'sqlite:///tmp/testing/gowitness.sqlite3' returns an empty string after being parsed via url.Parse() when calling the .Host method.
Expected Functionality
Ability to specify absolute file paths to the -D, --db-location argument.
Solution
I've implemented a helper function that fixes the issue and added some unit tests for verification.
Passing Tests
Tested it with two trial runs that garnered the desired functionality.
Test cases are passing:
Issue Representation Example Code
Here's an example demonstrating the issue: GoPlayground
I've encountered an issue in how absolute file paths are handled that are passed to the -D, --db-location flag.
Bug 🐛
https://github.com/sensepost/gowitness/blob/master/storage/db.go#L52 is missing logic to appropriately handle absolute file paths, for example:
'sqlite:///tmp/testing/gowitness.sqlite3'
returns an empty string after being parsed via url.Parse() when calling the .Host method.Expected Functionality
Ability to specify absolute file paths to the -D, --db-location argument.
Solution
I've implemented a helper function that fixes the issue and added some unit tests for verification.
Passing Tests
Tested it with two trial runs that garnered the desired functionality. Test cases are passing:![image](https://github.com/sensepost/gowitness/assets/58376398/dd52bf5b-608c-478a-be1f-ac521b056499)
Issue Representation Example Code
Here's an example demonstrating the issue: GoPlayground
Lemme know if this PR requires adjustments. 🍻