Skip to content

I got some crash. #4

@imfht

Description

@imfht

测试做中间人存AWVS的扫描流量,发现1个crash的点

1. path不是有效utf8字符时

2021/11/17 10:41:47 http: panic serving 10.78.104.94:53274: runtime error: invalid memory address or nil pointer dereference
goroutine 4137 [running]:
net/http.(*conn).serve.func1(0xc0003e43c0)
	/usr/local/Cellar/go/1.14.5/libexec/src/net/http/server.go:1800 +0x139
panic(0x1329040, 0x1629e10)
	/usr/local/Cellar/go/1.14.5/libexec/src/runtime/panic.go:975 +0x3e3
main.handleResponse(0x0, 0xc000a81620, 0x0)
	/Users/reinhard/inspector/golang/iproxy/main.go:124 +0x3a
github.com/elazarl/goproxy.FuncRespHandler.Handle(0x13a4420, 0x0, 0xc000a81620, 0x4)
	/Users/reinhard/inspector/golang/src/github.com/elazarl/goproxy/actions.go:35 +0x3a
github.com/elazarl/goproxy.(*ProxyConds).Do.func1(0x0, 0xc000a81620, 0x0)
	/Users/reinhard/inspector/golang/src/github.com/elazarl/goproxy/dispatcher.go:300 +0x142
github.com/elazarl/goproxy.FuncRespHandler.Handle(0xc0001a53a0, 0x0, 0xc000a81620, 0x0)
	/Users/reinhard/inspector/golang/src/github.com/elazarl/goproxy/actions.go:35 +0x3a
github.com/elazarl/goproxy.(*ProxyHttpServer).filterResponse(0xc0001275e0, 0x0, 0xc000a81620, 0x1403080)
	/Users/reinhard/inspector/golang/src/github.com/elazarl/goproxy/proxy.go:75 +0x8d
github.com/elazarl/goproxy.(*ProxyHttpServer).ServeHTTP(0xc0001275e0, 0x1408c40, 0xc0006b21c0, 0xc0001b4700)
	/Users/reinhard/inspector/golang/src/github.com/elazarl/goproxy/proxy.go:128 +0xa22
net/http.serverHandler.ServeHTTP(0xc00018c380, 0x1408c40, 0xc0006b21c0, 0xc0001b4700)
	/usr/local/Cellar/go/1.14.5/libexec/src/net/http/server.go:2836 +0xa3
net/http.(*conn).serve(0xc0003e43c0, 0x1409640, 0xc0006164c0)
	/usr/local/Cellar/go/1.14.5/libexec/src/net/http/server.go:1924 +0x86c
created by net/http.(*Server).Serve
	/usr/local/Cellar/go/1.14.5/libexec/src/net/http/server.go:2962 +0x35c
2021/11/17 10:41:47 Error 1366: Incorrect string value: '\xC0\xAF..\xC0\xAF...' for column 'path' at row 1
panic: runtime error: invalid memory address or nil pointer dereference

2. 1个panic的地方

goroutine 3492 [running]:
net/http.(*conn).serve.func1(0xc0002b57c0)
	/usr/local/Cellar/go/1.14.5/libexec/src/net/http/server.go:1800 +0x139
panic(0x1329040, 0x1629e10)
	/usr/local/Cellar/go/1.14.5/libexec/src/runtime/panic.go:975 +0x3e3
main.handleResponse(0x0, 0xc000590840, 0x0)
	/Users/reinhard/inspector/golang/iproxy/main.go:124 +0x3a
github.com/elazarl/goproxy.FuncRespHandler.Handle(0x13a4420, 0x0, 0xc000590840, 0x4)
	/Users/reinhard/inspector/golang/src/github.com/elazarl/goproxy/actions.go:35 +0x3a
github.com/elazarl/goproxy.(*ProxyConds).Do.func1(0x0, 0xc000590840, 0x0)
	/Users/reinhard/inspector/golang/src/github.com/elazarl/goproxy/dispatcher.go:300 +0x142
github.com/elazarl/goproxy.FuncRespHandler.Handle(0xc0001a53a0, 0x0, 0xc000590840, 0x0)
	/Users/reinhard/inspector/golang/src/github.com/elazarl/goproxy/actions.go:35 +0x3a
github.com/elazarl/goproxy.(*ProxyHttpServer).filterResponse(0xc0001275e0, 0x0, 0xc000590840, 0x1403080)
	/Users/reinhard/inspector/golang/src/github.com/elazarl/goproxy/proxy.go:75 +0x8d
github.com/elazarl/goproxy.(*ProxyHttpServer).ServeHTTP(0xc0001275e0, 0x1408c40, 0xc0003d6000, 0xc0002ba900)
	/Users/reinhard/inspector/golang/src/github.com/elazarl/goproxy/proxy.go:128 +0xa22
net/http.serverHandler.ServeHTTP(0xc00018c380, 0x1408c40, 0xc0003d6000, 0xc0002ba900)
	/usr/local/Cellar/go/1.14.5/libexec/src/net/http/server.go:2836 +0xa3
net/http.(*conn).serve(0xc0002b57c0, 0x1409640, 0xc0002c4500)
	/usr/local/Cellar/go/1.14.5/libexec/src/net/http/server.go:1924 +0x86c
created by net/http.(*Server).Serve
	/usr/local/Cellar/go/1.14.5/libexec/src/net/http/server.go:2962 +0x35c
2021/11/17 10:41:47 http: panic serving 10.78.104.94:53131: runtime error: invalid memory address or nil pointer dereference

猪哥小范围开源一起维护下么 🌹🌹

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions