When I was testing the url list I pulled from wayback with gau, it gave an error like this.
[ERR] buildRequest: parse "https://xxx.xxx.com/blog/t?a=upwards+of+30%+abandonment": invalid URL escape "%+a"
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x88 pc=0x8c5d54]
goroutine 1 [running]:
github.com/Hackmanit/TInjA/pkg.doRequest(0x0)
/root/go/pkg/mod/github.com/!hackmanit/[email protected]/pkg/request.go:161 +0xd4
github.com/Hackmanit/TInjA/pkg.scanURL({0xc0002db9b6, 0x77}, {{{0x0, 0x0}, {0x0, 0x0}, {0x0, 0x0}, 0x0}, {0x0, ...}}, ...)
/root/go/pkg/mod/github.com/!hackmanit/[email protected]/pkg/scan.go:286 +0x346
github.com/Hackmanit/TInjA/pkg.Scan({0xf, 0x1, 0x1e, 0x1e, 0x0, 0x0, {0x0, 0x0}, {0x0, 0x0}, ...}, ...)
/root/go/pkg/mod/github.com/!hackmanit/[email protected]/pkg/scan.go:141 +0x8b0
github.com/Hackmanit/TInjA/cmd.glob..func4(0xc0001aac00?, {0xb23fca?, 0x4?, 0xb23fce?})
/root/go/pkg/mod/github.com/!hackmanit/[email protected]/cmd/url.go:14 +0x5d
github.com/spf13/cobra.(*Command).execute(0x128cc20, {0xc00006a9c0, 0x2, 0x2})
/root/go/pkg/mod/github.com/spf13/[email protected]/command.go:987 +0xaa3
github.com/spf13/cobra.(*Command).ExecuteC(0x128c940)
/root/go/pkg/mod/github.com/spf13/[email protected]/command.go:1115 +0x3ff
github.com/spf13/cobra.(*Command).Execute(...)
/root/go/pkg/mod/github.com/spf13/[email protected]/command.go:1039
github.com/Hackmanit/TInjA/cmd.Execute()
/root/go/pkg/mod/github.com/!hackmanit/[email protected]/cmd/root.go:66 +0x1a
main.main()
/root/go/pkg/mod/github.com/!hackmanit/[email protected]/tinja.go:8 +0xf
I asked Google AI this and it gave the following answer.
Error Message Description:
The "panic: runtime error: invalid memory address or nil pointer dereference" error means that the program is trying to access memory without permission. This is usually caused by a pointer issue.
"[signal SIGSEGV: segmentation violation code=0x1 addr=0x88 pc=0x8c5d54]" is a system-level signal indicating a memory violation.
Troubleshooting Steps:
Identify the Problematic Line: The stack trace points to line 161 of the doRequest function in the pkg/request.go file. Examine this line carefully.
Analyze Pointer Usage: Look for pointers that are not properly initialized or checked for nil values. Common causes include:
Use before a valid memory address is assigned to a pointer.
Dereferencing a pointer that has become nil.
Reaching beyond the boundaries of a slice or array.
Debugging Tools:
Use a debugger to step through the code and examine variables at run time.
Add print statements to your code to monitor variable values and execution flow.
Specific Code-Based Guidance:
Check line 161 of pkg/request.go: This line in the doRequest function is where the invalid memory access occurs.
Check pkg/scan.go lines 286 and 141: These lines in the scanURL and Scan functions may also be the source of the problem.