li4n0 / revsuit Goto Github PK
View Code? Open in Web Editor NEWRevSuit is a flexible and powerful reverse connection platform designed for receiving connection from target host in penetration.
License: Apache License 2.0
RevSuit is a flexible and powerful reverse connection platform designed for receiving connection from target host in penetration.
License: Apache License 2.0
Describe the new feature you expect to add
A clear and concise description.
Why do you want to add this feature
A clear and concise description of why you need the feature, such as in what kind of usage scenarios it would be more convenient to have a certain feature.
Additional context
Add any other context or screenshots about the feature request here.
2022/08/11 17:22:56 [ERROR] [...com/li4n0/revsuit/pkg/dns/dns.go:262 Run()] listen tcp :53: bind: address already in use
2022/08/11 17:22:56 [ERROR] [...com/li4n0/revsuit/pkg/dns/dns.go:206 func1()] DNS Server exited unexpectedly
Hello in the latest release of the version running on this system will cause the following error:
/revsuit_linux_amd64: /lib/x86_64-linux-gnu/libc.so.6: version 'GLIBC_2.32' not found (required by./revsuit_linux_amd64)
操作系统信息:
[root@centos-s-1vcpu-1gb-intel-sgp1-01 revsuit]# uname -a
Linux centos-s-1vcpu-1gb-intel-sgp1-01 3.10.0-1160.45.1.el7.x86_64 #1 SMP Wed Oct 13 17:20:51 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
报错信息:
____ _____ _ __
/ __ ___ _ / / __() /
/ // / _ \ | / /_ / / / / / /
/ , / / |/ // / // / / /
// ||_/|///_,//__/
v0.5.1
https://revsuit.pro
2022/09/20 08:45:35 [ INFO] Checking for updates...
2022/09/20 08:45:36 [ INFO] The current version is the latest
2022/09/20 08:45:36 [ INFO] Starting HTTP Server at :80, token:XXXXX
2022/09/20 08:45:36 [ INFO] Starting DNS Server at :53, resolve [XXXXX] to
2022/09/20 08:45:36 [ INFO] Starting RMI Server at :1099
2022/09/20 08:45:36 [ INFO] Starting LDAP Server at :1389
2022/09/20 08:45:36 [ INFO] Starting MySQL Server at :3306
2022/09/20 08:45:36 [ INFO] Start to listen FTP PASV port at :2020, PasvIP is
2022/09/20 08:45:36 [ INFO] Starting FTP Server at :21
fatal error: sync: unlock of unlocked mutex
goroutine 34 [running]:
sync.fatal({0x12221c4?, 0x85ff8d149f780?})
runtime/panic.go:1031 +0x1e
sync.(*Mutex).unlockSlow(0xc0008e0048, 0xffffffff)
sync/mutex.go:229 +0x3c
sync.(*Mutex).Unlock(...)
sync/mutex.go:223
github.com/li4n0/revsuit/pkg/rmi.(*Server).Run.func2()
github.com/li4n0/revsuit/pkg/rmi/rmi.go:192 +0x98
created by github.com/li4n0/revsuit/pkg/rmi.(*Server).Run
github.com/li4n0/revsuit/pkg/rmi/rmi.go:187 +0x1c5
goroutine 1 [IO wait]:
internal/poll.runtime_pollWait(0x7f2dc1d8e438, 0x72)
runtime/netpoll.go:305 +0x89
internal/poll.(*pollDesc).wait(0xc000600780?, 0x6?, 0x0)
internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Accept(0xc000600780)
internal/poll/fd_unix.go:614 +0x234
net.(*netFD).accept(0xc000600780)
net/fd_unix.go:172 +0x35
net.(*TCPListener).accept(0xc0008b6678)
net/tcpsock_posix.go:142 +0x28
net.(*TCPListener).Accept(0xc0008b6678)
net/tcpsock.go:288 +0x3d
net/http.(*Server).Serve(0xc0004ea070, {0x1673a08, 0xc0008b6678})
net/http/server.go:3070 +0x385
net/http.(*Server).ListenAndServe(0xc0004ea070)
net/http/server.go:2999 +0x7d
github.com/li4n0/revsuit/pkg/rhttp.(*Server).startHttpServer(0xc0004ea000)
github.com/li4n0/revsuit/pkg/rhttp/http.go:99 +0x17f
github.com/li4n0/revsuit/pkg/rhttp.(*Server).Run(0xc000138000?)
github.com/li4n0/revsuit/pkg/rhttp/http.go:123 +0x5e
github.com/li4n0/revsuit/pkg/server.(*Revsuit).Run(0xc000138000)
github.com/li4n0/revsuit/pkg/server/server.go:241 +0x23a
github.com/li4n0/revsuit/internal/cli.Start.func2(0xc00078efa0?)
github.com/li4n0/revsuit/internal/cli/cli.go:98 +0x55a
github.com/urfave/cli/v2.(*App).RunContext(0xc0006ad500, {0x1675c50?, 0xc0000460f0}, {0xc000040220, 0x1, 0x1})
github.com/urfave/cli/[email protected]/app.go:391 +0xf68
github.com/urfave/cli/v2.(*App).Run(...)
github.com/urfave/cli/[email protected]/app.go:252
github.com/li4n0/revsuit/internal/cli.Start()
github.com/li4n0/revsuit/internal/cli/cli.go:106 +0x4e5
main.main()
./revsuit.go:6 +0x17
goroutine 8 [select]:
github.com/patrickmn/go-cache.(*janitor).Run(0xc00026ac40, 0xc0001e6120?)
github.com/patrickmn/[email protected]+incompatible/cache.go:1079 +0x85
created by github.com/patrickmn/go-cache.runJanitor
github.com/patrickmn/[email protected]+incompatible/cache.go:1099 +0xed
goroutine 9 [select]:
github.com/patrickmn/go-cache.(*janitor).Run(0xc00026b000, 0x0?)
github.com/patrickmn/[email protected]+incompatible/cache.go:1079 +0x85
created by github.com/patrickmn/go-cache.runJanitor
github.com/patrickmn/[email protected]+incompatible/cache.go:1099 +0xed
goroutine 10 [chan receive]:
github.com/golang/glog.(*loggingT).flushDaemon(0x0?)
github.com/golang/[email protected]/glog.go:882 +0x6a
created by github.com/golang/glog.init.0
github.com/golang/[email protected]/glog.go:410 +0x1bf
goroutine 24 [runnable]:
unknwon.dev/clog/v2.New.func1()
unknwon.dev/clog/[email protected]/logger.go:202 +0xdc
created by unknwon.dev/clog/v2.New
unknwon.dev/clog/[email protected]/logger.go:199 +0x5d0
goroutine 23 [select]:
database/sql.(*DB).connectionOpener(0xc0007cf380, {0x1675c18, 0xc0009d7080})
database/sql/sql.go:1224 +0x8d
created by database/sql.OpenDB
database/sql/sql.go:792 +0x18d
goroutine 25 [select]:
github.com/li4n0/revsuit/internal/newdns.Run({0xc00079d6c4, 0x3}, {0x16695a0?, 0xc0002283c0}, 0xc0008ec7b0, 0xc0008ee120)
github.com/li4n0/revsuit/internal/newdns/run.go:57 +0x2cc
github.com/li4n0/revsuit/internal/newdns.(*Server).Run(0xc0008e0280, {0xc00079d6c4, 0x3})
github.com/li4n0/revsuit/internal/newdns/server.go:85 +0xc5
github.com/li4n0/revsuit/pkg/dns.(*Server).Run(0xc000600000)
github.com/li4n0/revsuit/pkg/dns/dns.go:258 +0x39f
created by github.com/li4n0/revsuit/pkg/server.(*Revsuit).Run
github.com/li4n0/revsuit/pkg/server/server.go:215 +0x9a
goroutine 20 [IO wait]:
internal/poll.runtime_pollWait(0x7f2dc1d8e348, 0x72)
runtime/netpoll.go:305 +0x89
internal/poll.(*pollDesc).wait(0xc000601700?, 0xc000ae6000?, 0x0)
internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0xc000601700, {0xc000ae6000, 0x1300, 0x1300})
internal/poll/fd_unix.go:167 +0x25a
net.(*netFD).Read(0xc000601700, {0xc000ae6000?, 0xc000223ce0?, 0xc000ae6421?})
net/fd_posix.go:55 +0x29
net.(*conn).Read(0xc000014010, {0xc000ae6000?, 0x1300?, 0xc000223ce0?})
net/net.go:183 +0x45
crypto/tls.(*atLeastReader).Read(0xc00055d428, {0xc000ae6000?, 0x0?, 0xc000073860?})
crypto/tls/conn.go:787 +0x3d
bytes.(*Buffer).ReadFrom(0xc000770278, {0x1668da0, 0xc00055d428})
bytes/buffer.go:202 +0x98
crypto/tls.(*Conn).readFromUntil(0xc000770000, {0x166a3a0?, 0xc000014010}, 0xee4?)
crypto/tls/conn.go:809 +0xe5
crypto/tls.(*Conn).readRecordOrCCS(0xc000770000, 0x0)
crypto/tls/conn.go:616 +0x116
crypto/tls.(*Conn).readRecord(...)
crypto/tls/conn.go:582
crypto/tls.(*Conn).Read(0xc000770000, {0xc000ae3000, 0x1000, 0x6b3a60?})
crypto/tls/conn.go:1287 +0x16f
bufio.(*Reader).Read(0xc000a2b860, {0xc000a250e0, 0x9, 0x6d0945?})
bufio/bufio.go:237 +0x1bb
io.ReadAtLeast({0x1668be0, 0xc000a2b860}, {0xc000a250e0, 0x9, 0x9}, 0x9)
io/io.go:332 +0x9a
io.ReadFull(...)
io/io.go:351
net/http.http2readFrameHeader({0xc000a250e0?, 0x9?, 0xc0006b1650?}, {0x1668be0?, 0xc000a2b860?})
net/http/h2_bundle.go:1565 +0x6e
net/http.(*http2Framer).ReadFrame(0xc000a250a0)
net/http/h2_bundle.go:1829 +0x95
net/http.(*http2clientConnReadLoop).run(0xc000073f98)
net/http/h2_bundle.go:8872 +0x130
net/http.(*http2ClientConn).readLoop(0xc000154d80)
net/http/h2_bundle.go:8768 +0x6f
created by net/http.(*http2Transport).newClientConn
net/http/h2_bundle.go:7475 +0xaaa
goroutine 27 [IO wait]:
internal/poll.runtime_pollWait(0x7f2dc1d8e078, 0x72)
runtime/netpoll.go:305 +0x89
internal/poll.(*pollDesc).wait(0xc000601b00?, 0x1675c50?, 0x0)
internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Accept(0xc000601b00)
internal/poll/fd_unix.go:614 +0x234
net.(*netFD).accept(0xc000601b00)
net/fd_unix.go:172 +0x35
net.(*TCPListener).accept(0xc0008b6a38)
net/tcpsock_posix.go:142 +0x28
net.(*TCPListener).Accept(0xc0008b6a38)
net/tcpsock.go:288 +0x3d
github.com/li4n0/revsuit/pkg/ldap.(*Server).Run(0xc0008e0050)
github.com/li4n0/revsuit/pkg/ldap/ldap.go:187 +0x282
created by github.com/li4n0/revsuit/pkg/server.(*Revsuit).Run
github.com/li4n0/revsuit/pkg/server/server.go:221 +0x145
goroutine 28 [IO wait]:
internal/poll.runtime_pollWait(0x7f2dc1d8df88, 0x72)
runtime/netpoll.go:305 +0x89
internal/poll.(*pollDesc).wait(0xc000601d80?, 0x1f67d20?, 0x0)
internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Accept(0xc000601d80)
internal/poll/fd_unix.go:614 +0x234
net.(*netFD).accept(0xc000601d80)
net/fd_unix.go:172 +0x35
net.(*TCPListener).accept(0xc0008b6ac8)
net/tcpsock_posix.go:142 +0x28
net.(*TCPListener).Accept(0xc0008b6ac8)
net/tcpsock.go:288 +0x3d
github.com/li4n0/revsuit/pkg/mysql/vmysql.(*Listener).Accept(0xc000601e00)
github.com/li4n0/revsuit/pkg/mysql/vmysql/server.go:232 +0x5d
github.com/li4n0/revsuit/pkg/mysql.(*Server).Run(0xc0001800a0)
github.com/li4n0/revsuit/pkg/mysql/mysql.go:316 +0x285
created by github.com/li4n0/revsuit/pkg/server.(*Revsuit).Run
github.com/li4n0/revsuit/pkg/server/server.go:224 +0x19a
goroutine 29 [IO wait]:
internal/poll.runtime_pollWait(0x7f2dc1d8dda8, 0x72)
runtime/netpoll.go:305 +0x89
internal/poll.(*pollDesc).wait(0xc00013a000?, 0x1675c50?, 0x0)
internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Accept(0xc00013a000)
internal/poll/fd_unix.go:614 +0x234
net.(*netFD).accept(0xc00013a000)
net/fd_unix.go:172 +0x35
net.(*TCPListener).accept(0xc0008b6b88)
net/tcpsock_posix.go:142 +0x28
net.(*TCPListener).Accept(0xc0008b6b88)
net/tcpsock.go:288 +0x3d
github.com/li4n0/revsuit/pkg/ftp.(*Server).Run(0xc000138070)
github.com/li4n0/revsuit/pkg/ftp/ftp.go:400 +0x351
created by github.com/li4n0/revsuit/pkg/server.(*Revsuit).Run
github.com/li4n0/revsuit/pkg/server/server.go:227 +0x1ef
goroutine 30 [chan receive]:
github.com/li4n0/revsuit/pkg/server.(*Revsuit).Run.func1()
github.com/li4n0/revsuit/pkg/server/server.go:230 +0x71
created by github.com/li4n0/revsuit/pkg/server.(*Revsuit).Run
github.com/li4n0/revsuit/pkg/server/server.go:229 +0x22c
goroutine 31 [semacquire]:
sync.runtime_SemacquireMutex(0x0?, 0x0?, 0x0?)
runtime/sema.go:77 +0x25
sync.(*Mutex).lockSlow(0xc000600070)
sync/mutex.go:171 +0x165
sync.(*Mutex).Lock(...)
sync/mutex.go:90
github.com/li4n0/revsuit/pkg/dns.(*Server).Run.func3()
github.com/li4n0/revsuit/pkg/dns/dns.go:251 +0x4f
created by github.com/li4n0/revsuit/pkg/dns.(*Server).Run
github.com/li4n0/revsuit/pkg/dns/dns.go:250 +0x385
goroutine 32 [IO wait]:
internal/poll.runtime_pollWait(0x7f2dc1d8dcb8, 0x72)
runtime/netpoll.go:305 +0x89
internal/poll.(*pollDesc).wait(0xc00013a100?, 0xc0004e2000?, 0x0)
internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).ReadMsgInet6(0xc00013a100, {0xc0004e2000, 0x200, 0x200}, {0xc000706db0, 0x28, 0x28}, 0x41b408?, 0x0?)
internal/poll/fd_unix.go:358 +0x2dd
net.(*netFD).readMsgInet6(0xc00013a100, {0xc0004e2000?, 0xc0008e0d20?, 0x0?}, {0xc000706db0?, 0x203000?, 0x203000?}, 0x203000?, 0xc000071b48?)
net/fd_posix.go:90 +0x37
net.(*UDPConn).readMsg(0x85ffc8b1b54a6?, {0xc0004e2000?, 0x1501968?, 0x10face0?}, {0xc000706db0?, 0x8?, 0x40e9be?})
net/udpsock_posix.go:106 +0xa5
net.(*UDPConn).ReadMsgUDPAddrPort(0xc000014600, {0xc0004e2000?, 0x30?, 0x1f67d20?}, {0xc000706db0?, 0x0?, 0x4d8f93?})
net/udpsock.go:203 +0x53
net.(*UDPConn).ReadMsgUDP(0x4d9040?, {0xc0004e2000?, 0xc0c27d501379a8ba?, 0x3e0725a9b?}, {0xc000706db0?, 0xc000071ca8?, 0x481c7e?})
net/udpsock.go:191 +0x2a
github.com/miekg/dns.ReadFromSessionUDP(0xc0008b4210?, {0xc0004e2000, 0x200, 0x200})
github.com/miekg/[email protected]/udp.go:42 +0x87
github.com/miekg/dns.(*Server).readUDP(0xc0008b4120, 0xc000014600, 0xc0008e0d20?)
github.com/miekg/[email protected]/server.go:695 +0x110
github.com/miekg/dns.defaultReader.ReadUDP({0xc0000495a0?}, 0x166a360?, 0xc0008e0d20?)
github.com/miekg/[email protected]/server.go:174 +0x19
github.com/miekg/dns.(*Server).serveUDP(0xc0008b4120, {0x16799e0?, 0xc000014600?})
github.com/miekg/[email protected]/server.go:513 +0x2a9
github.com/miekg/dns.(*Server).ListenAndServe(0xc0008b4120)
github.com/miekg/[email protected]/server.go:342 +0x515
github.com/li4n0/revsuit/internal/newdns.Run.func1()
github.com/li4n0/revsuit/internal/newdns/run.go:47 +0x26
created by github.com/li4n0/revsuit/internal/newdns.Run
github.com/li4n0/revsuit/internal/newdns/run.go:46 +0x21e
goroutine 33 [IO wait]:
internal/poll.runtime_pollWait(0x7f2dc1d8e258, 0x72)
runtime/netpoll.go:305 +0x89
internal/poll.(*pollDesc).wait(0xc000600e00?, 0x1f9ef50?, 0x0)
internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Accept(0xc000600e00)
internal/poll/fd_unix.go:614 +0x234
net.(*netFD).accept(0xc000600e00)
net/fd_unix.go:172 +0x35
net.(*TCPListener).accept(0xc0008b68d0)
net/tcpsock_posix.go:142 +0x28
net.(*TCPListener).Accept(0xc0008b68d0)
net/tcpsock.go:288 +0x3d
github.com/miekg/dns.(*Server).serveTCP(0xc0008b5560, {0x1673a08?, 0xc0008b68d0})
github.com/miekg/[email protected]/server.go:457 +0x14e
github.com/miekg/dns.(*Server).ListenAndServe(0xc0008b5560)
github.com/miekg/[email protected]/server.go:314 +0x393
github.com/li4n0/revsuit/internal/newdns.Run.func2()
github.com/li4n0/revsuit/internal/newdns/run.go:52 +0x26
created by github.com/li4n0/revsuit/internal/newdns.Run
github.com/li4n0/revsuit/internal/newdns/run.go:51 +0x272
goroutine 35 [semacquire]:
sync.runtime_SemacquireMutex(0x0?, 0x0?, 0x0?)
runtime/sema.go:77 +0x25
sync.(*Mutex).lockSlow(0xc0008e0098)
sync/mutex.go:171 +0x165
sync.(*Mutex).Lock(...)
sync/mutex.go:90
github.com/li4n0/revsuit/pkg/ldap.(*Server).Run.func2()
github.com/li4n0/revsuit/pkg/ldap/ldap.go:179 +0x56
created by github.com/li4n0/revsuit/pkg/ldap.(*Server).Run
github.com/li4n0/revsuit/pkg/ldap/ldap.go:178 +0x1c5
goroutine 36 [semacquire]:
sync.runtime_SemacquireMutex(0x0?, 0x0?, 0x1?)
runtime/sema.go:77 +0x25
sync.(*Mutex).lockSlow(0xc0001800f8)
sync/mutex.go:171 +0x165
sync.(*Mutex).Lock(...)
sync/mutex.go:90
github.com/li4n0/revsuit/pkg/mysql.(*Server).Run.func2()
github.com/li4n0/revsuit/pkg/mysql/mysql.go:309 +0x45
created by github.com/li4n0/revsuit/pkg/mysql.(*Server).Run
github.com/li4n0/revsuit/pkg/mysql/mysql.go:308 +0x272
goroutine 37 [chan receive]:
github.com/li4n0/revsuit/pkg/ftp.(*Server).runPasvServer.func1()
github.com/li4n0/revsuit/pkg/ftp/ftp.go:328 +0x70
created by github.com/li4n0/revsuit/pkg/ftp.(*Server).runPasvServer
github.com/li4n0/revsuit/pkg/ftp/ftp.go:327 +0x205
goroutine 38 [semacquire]:
sync.runtime_SemacquireMutex(0x0?, 0x0?, 0xc00079d6c4?)
runtime/sema.go:77 +0x25
sync.(*Mutex).lockSlow(0xc0001380d0)
sync/mutex.go:171 +0x165
sync.(*Mutex).Lock(...)
sync/mutex.go:90
github.com/li4n0/revsuit/pkg/ftp.(*Server).Run.func3()
github.com/li4n0/revsuit/pkg/ftp/ftp.go:392 +0x56
created by github.com/li4n0/revsuit/pkg/ftp.(*Server).Run
github.com/li4n0/revsuit/pkg/ftp/ftp.go:391 +0x26a
goroutine 39 [IO wait]:
internal/poll.runtime_pollWait(0x7f2dc1d8dbc8, 0x72)
runtime/netpoll.go:305 +0x89
internal/poll.(*pollDesc).wait(0xc00013a200?, 0xc0008fe000?, 0x0)
internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0xc00013a200, {0xc0008fe000, 0x1000, 0x1000})
internal/poll/fd_unix.go:167 +0x25a
net.(*netFD).Read(0xc00013a200, {0xc0008fe000?, 0xc0004eb4a0?, 0x481c7e?})
net/fd_posix.go:55 +0x29
net.(*conn).Read(0xc000014618, {0xc0008fe000?, 0x6d720c?, 0xc0008bed80?})
net/net.go:183 +0x45
net/http.(*connReader).Read(0xc0008eb170, {0xc0008fe000, 0x1000, 0x1000})
net/http/server.go:786 +0x171
bufio.(*Reader).fill(0xc00094ec00)
bufio/bufio.go:106 +0xff
bufio.(*Reader).ReadSlice(0xc00094ec00, 0x0?)
bufio/bufio.go:372 +0x2f
bufio.(*Reader).ReadLine(0xc00094ec00)
bufio/bufio.go:401 +0x27
net/textproto.(*Reader).readLineSlice(0xc0008eb1a0)
net/textproto/reader.go:56 +0x99
net/textproto.(*Reader).ReadLine(...)
net/textproto/reader.go:37
net/http.readRequest(0xc000014618?)
net/http/request.go:1036 +0x79
net/http.(*conn).readRequest(0xc000a1c140, {0x1675c18, 0xc0008bed40})
net/http/server.go:994 +0x24a
net/http.(*conn).serve(0xc000a1c140, {0x1675cc0, 0xc0008ea480})
net/http/server.go:1916 +0x345
created by net/http.(*Server).Serve
net/http/server.go:3102 +0x4db
goroutine 41 [sync.Cond.Wait]:
sync.runtime_notifyListWait(0xc0008bff50, 0x5)
runtime/sema.go:517 +0x14c
sync.(*Cond).Wait(0xc00061a3e8?)
sync/cond.go:70 +0x8c
net/http.(*connReader).abortPendingRead(0xc0006b0840)
net/http/server.go:726 +0xb5
net/http.(*response).finishRequest(0xc000a247e0)
net/http/server.go:1658 +0x8a
net/http.(*conn).serve(0xc000a1c280, {0x1675cc0, 0xc0008ea480})
net/http/server.go:1997 +0x64a
created by net/http.(*Server).Serve
net/http/server.go:3102 +0x4db
goroutine 51 [runnable]:
net/http.(*connReader).startBackgroundRead.func2()
net/http/server.go:674
runtime.goexit()
runtime/asm_amd64.s:1594 +0x1
created by net/http.(*connReader).startBackgroundRead
net/http/server.go:674 +0xca
goroutine 44 [IO wait]:
internal/poll.runtime_pollWait(0x7f2dc1d8d9e8, 0x72)
runtime/netpoll.go:305 +0x89
internal/poll.(*pollDesc).wait(0xc00013ad80?, 0xc0006c7000?, 0x0)
internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0xc00013ad80, {0xc0006c7000, 0x1000, 0x1000})
internal/poll/fd_unix.go:167 +0x25a
net.(*netFD).Read(0xc00013ad80, {0xc0006c7000?, 0xc0004eb1e0?, 0x481c7e?})
net/fd_posix.go:55 +0x29
net.(*conn).Read(0xc00061a400, {0xc0006c7000?, 0x6d720c?, 0xc0009d6040?})
net/net.go:183 +0x45
net/http.(*connReader).Read(0xc0006b0b70, {0xc0006c7000, 0x1000, 0x1000})
net/http/server.go:786 +0x171
bufio.(*Reader).fill(0xc00094ef00)
bufio/bufio.go:106 +0xff
bufio.(*Reader).ReadSlice(0xc00094ef00, 0x0?)
bufio/bufio.go:372 +0x2f
bufio.(*Reader).ReadLine(0xc00094ef00)
bufio/bufio.go:401 +0x27
net/textproto.(*Reader).readLineSlice(0xc0006b0870)
net/textproto/reader.go:56 +0x99
net/textproto.(*Reader).ReadLine(...)
net/textproto/reader.go:37
net/http.readRequest(0xc00061a400?)
net/http/request.go:1036 +0x79
net/http.(*conn).readRequest(0xc000a1c320, {0x1675c18, 0xc0009d6000})
net/http/server.go:994 +0x24a
net/http.(*conn).serve(0xc000a1c320, {0x1675cc0, 0xc0008ea480})
net/http/server.go:1916 +0x345
created by net/http.(*Server).Serve
net/http/server.go:3102 +0x4db
____ _____ _ __
/ __ ___ _ / / __() /
/ // / _ \ | / /_ / / / / / /
/ , / / |/ // / // / / /
// ||_/|///_,//__/
v0.5.1
https://revsuit.pro
2022/09/20 08:45:58 [ INFO] Checking for updates...
2022/09/20 08:45:58 [ INFO] The current version is the latest
2022/09/20 08:45:58 [ INFO] Starting HTTP Server at :80, token:icbcdns.xyz.123
2022/09/20 08:45:58 [ INFO] Starting DNS Server at :53, resolve [icbcdns.xyz] to
2022/09/20 08:45:58 [ INFO] Starting RMI Server at :1099
2022/09/20 08:45:58 [ INFO] Starting LDAP Server at :1389
2022/09/20 08:45:58 [ INFO] Starting MySQL Server at :3306
2022/09/20 08:45:58 [ INFO] Start to listen FTP PASV port at :2020, PasvIP is
2022/09/20 08:45:58 [ INFO] Starting FTP Server at :21
fatal error: sync: unlock of unlocked mutex
goroutine 35 [running]:
sync.fatal({0x12221c4?, 0x85ffdefc33597?})
runtime/panic.go:1031 +0x1e
sync.(*Mutex).unlockSlow(0xc000926098, 0xffffffff)
sync/mutex.go:229 +0x3c
sync.(*Mutex).Unlock(...)
sync/mutex.go:223
github.com/li4n0/revsuit/pkg/ldap.(*Server).Run.func2()
github.com/li4n0/revsuit/pkg/ldap/ldap.go:183 +0x98
created by github.com/li4n0/revsuit/pkg/ldap.(*Server).Run
github.com/li4n0/revsuit/pkg/ldap/ldap.go:178 +0x1c5
goroutine 1 [IO wait]:
internal/poll.runtime_pollWait(0x7fc685376438, 0x72)
runtime/netpoll.go:305 +0x89
internal/poll.(*pollDesc).wait(0xc000600780?, 0x6?, 0x0)
internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Accept(0xc000600780)
internal/poll/fd_unix.go:614 +0x234
net.(*netFD).accept(0xc000600780)
net/fd_unix.go:172 +0x35
net.(*TCPListener).accept(0xc0008fe888)
net/tcpsock_posix.go:142 +0x28
net.(*TCPListener).Accept(0xc0008fe888)
net/tcpsock.go:288 +0x3d
net/http.(*Server).Serve(0xc00060e070, {0x1673a08, 0xc0008fe888})
net/http/server.go:3070 +0x385
net/http.(*Server).ListenAndServe(0xc00060e070)
net/http/server.go:2999 +0x7d
github.com/li4n0/revsuit/pkg/rhttp.(*Server).startHttpServer(0xc00060e000)
github.com/li4n0/revsuit/pkg/rhttp/http.go:99 +0x17f
github.com/li4n0/revsuit/pkg/rhttp.(*Server).Run(0xc0001f00e0?)
github.com/li4n0/revsuit/pkg/rhttp/http.go:123 +0x5e
github.com/li4n0/revsuit/pkg/server.(*Revsuit).Run(0xc0001f00e0)
github.com/li4n0/revsuit/pkg/server/server.go:241 +0x23a
github.com/li4n0/revsuit/internal/cli.Start.func2(0xc0007a3220?)
github.com/li4n0/revsuit/internal/cli/cli.go:98 +0x55a
github.com/urfave/cli/v2.(*App).RunContext(0xc0006c3500, {0x1675c50?, 0xc0000460f0}, {0xc000040220, 0x1, 0x1})
github.com/urfave/cli/[email protected]/app.go:391 +0xf68
github.com/urfave/cli/v2.(*App).Run(...)
github.com/urfave/cli/[email protected]/app.go:252
github.com/li4n0/revsuit/internal/cli.Start()
github.com/li4n0/revsuit/internal/cli/cli.go:106 +0x4e5
main.main()
./revsuit.go:6 +0x17
goroutine 8 [select]:
github.com/patrickmn/go-cache.(*janitor).Run(0xc000206d60, 0xc0001e81b0?)
github.com/patrickmn/[email protected]+incompatible/cache.go:1079 +0x85
created by github.com/patrickmn/go-cache.runJanitor
github.com/patrickmn/[email protected]+incompatible/cache.go:1099 +0xed
goroutine 9 [select]:
github.com/patrickmn/go-cache.(*janitor).Run(0xc000207120, 0x0?)
github.com/patrickmn/[email protected]+incompatible/cache.go:1079 +0x85
created by github.com/patrickmn/go-cache.runJanitor
github.com/patrickmn/[email protected]+incompatible/cache.go:1099 +0xed
goroutine 10 [chan receive]:
github.com/golang/glog.(*loggingT).flushDaemon(0x0?)
github.com/golang/[email protected]/glog.go:882 +0x6a
created by github.com/golang/glog.init.0
github.com/golang/[email protected]/glog.go:410 +0x1bf
goroutine 24 [runnable]:
unknwon.dev/clog/v2.New.func1()
unknwon.dev/clog/[email protected]/logger.go:202 +0xdc
created by unknwon.dev/clog/v2.New
unknwon.dev/clog/[email protected]/logger.go:199 +0x5d0
goroutine 23 [select]:
database/sql.(*DB).connectionOpener(0xc0007e9110, {0x1675c18, 0xc0009f7300})
database/sql/sql.go:1224 +0x8d
created by database/sql.OpenDB
database/sql/sql.go:792 +0x18d
goroutine 25 [select]:
github.com/li4n0/revsuit/internal/newdns.Run({0xc00077f824, 0x3}, {0x16695a0?, 0xc00022a3c0}, 0xc0009089e0, 0xc0009361e0)
github.com/li4n0/revsuit/internal/newdns/run.go:57 +0x2cc
github.com/li4n0/revsuit/internal/newdns.(*Server).Run(0xc000926280, {0xc00077f824, 0x3})
github.com/li4n0/revsuit/internal/newdns/server.go:85 +0xc5
github.com/li4n0/revsuit/pkg/dns.(*Server).Run(0xc000600000)
github.com/li4n0/revsuit/pkg/dns/dns.go:258 +0x39f
created by github.com/li4n0/revsuit/pkg/server.(*Revsuit).Run
github.com/li4n0/revsuit/pkg/server/server.go:215 +0x9a
goroutine 20 [IO wait]:
internal/poll.runtime_pollWait(0x7fc685376348, 0x72)
runtime/netpoll.go:305 +0x89
internal/poll.(*pollDesc).wait(0xc000601700?, 0xc0003e0000?, 0x0)
internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0xc000601700, {0xc0003e0000, 0x1300, 0x1300})
internal/poll/fd_unix.go:167 +0x25a
net.(*netFD).Read(0xc000601700, {0xc0003e0000?, 0xc000226620?, 0xc0003e0420?})
net/fd_posix.go:55 +0x29
net.(*conn).Read(0xc000014010, {0xc0003e0000?, 0x1300?, 0xc000226620?})
net/net.go:183 +0x45
crypto/tls.(*atLeastReader).Read(0xc0006ff170, {0xc0003e0000?, 0x0?, 0xc000073860?})
crypto/tls/conn.go:787 +0x3d
bytes.(*Buffer).ReadFrom(0xc000774278, {0x1668da0, 0xc0006ff170})
bytes/buffer.go:202 +0x98
crypto/tls.(*Conn).readFromUntil(0xc000774000, {0x166a3a0?, 0xc000014010}, 0xee5?)
crypto/tls/conn.go:809 +0xe5
crypto/tls.(*Conn).readRecordOrCCS(0xc000774000, 0x0)
crypto/tls/conn.go:616 +0x116
crypto/tls.(*Conn).readRecord(...)
crypto/tls/conn.go:582
crypto/tls.(*Conn).Read(0xc000774000, {0xc0007df000, 0x1000, 0x6b3a60?})
crypto/tls/conn.go:1287 +0x16f
bufio.(*Reader).Read(0xc000a53aa0, {0xc000a550e0, 0x9, 0x6d0945?})
bufio/bufio.go:237 +0x1bb
io.ReadAtLeast({0x1668be0, 0xc000a53aa0}, {0xc000a550e0, 0x9, 0x9}, 0x9)
io/io.go:332 +0x9a
io.ReadFull(...)
io/io.go:351
net/http.http2readFrameHeader({0xc000a550e0?, 0x9?, 0xc000615080?}, {0x1668be0?, 0xc000a53aa0?})
net/http/h2_bundle.go:1565 +0x6e
net/http.(*http2Framer).ReadFrame(0xc000a550a0)
net/http/h2_bundle.go:1829 +0x95
net/http.(*http2clientConnReadLoop).run(0xc000073f98)
net/http/h2_bundle.go:8872 +0x130
net/http.(*http2ClientConn).readLoop(0xc000154d80)
net/http/h2_bundle.go:8768 +0x6f
created by net/http.(*http2Transport).newClientConn
net/http/h2_bundle.go:7475 +0xaaa
goroutine 26 [IO wait]:
internal/poll.runtime_pollWait(0x7fc685376168, 0x72)
runtime/netpoll.go:305 +0x89
internal/poll.(*pollDesc).wait(0xc000601600?, 0x1675c50?, 0x0)
internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Accept(0xc000601600)
internal/poll/fd_unix.go:614 +0x234
net.(*netFD).accept(0xc000601600)
net/fd_unix.go:172 +0x35
net.(*TCPListener).accept(0xc0008fea50)
net/tcpsock_posix.go:142 +0x28
net.(*TCPListener).Accept(0xc0008fea50)
net/tcpsock.go:288 +0x3d
github.com/li4n0/revsuit/pkg/rmi.(*Server).Run(0xc000926000)
github.com/li4n0/revsuit/pkg/rmi/rmi.go:196 +0x282
created by github.com/li4n0/revsuit/pkg/server.(*Revsuit).Run
github.com/li4n0/revsuit/pkg/server/server.go:218 +0xef
goroutine 28 [IO wait]:
internal/poll.runtime_pollWait(0x7fc685375f88, 0x72)
runtime/netpoll.go:305 +0x89
internal/poll.(*pollDesc).wait(0xc000601d80?, 0x1f67d20?, 0x0)
internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Accept(0xc000601d80)
internal/poll/fd_unix.go:614 +0x234
net.(*netFD).accept(0xc000601d80)
net/fd_unix.go:172 +0x35
net.(*TCPListener).accept(0xc0008feb10)
net/tcpsock_posix.go:142 +0x28
net.(*TCPListener).Accept(0xc0008feb10)
net/tcpsock.go:288 +0x3d
github.com/li4n0/revsuit/pkg/mysql/vmysql.(*Listener).Accept(0xc000601e00)
github.com/li4n0/revsuit/pkg/mysql/vmysql/server.go:232 +0x5d
github.com/li4n0/revsuit/pkg/mysql.(*Server).Run(0xc000182140)
github.com/li4n0/revsuit/pkg/mysql/mysql.go:316 +0x285
created by github.com/li4n0/revsuit/pkg/server.(*Revsuit).Run
github.com/li4n0/revsuit/pkg/server/server.go:224 +0x19a
goroutine 29 [IO wait]:
internal/poll.runtime_pollWait(0x7fc685375da8, 0x72)
runtime/netpoll.go:305 +0x89
internal/poll.(*pollDesc).wait(0xc00013a000?, 0x1675c50?, 0x0)
internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Accept(0xc00013a000)
internal/poll/fd_unix.go:614 +0x234
net.(*netFD).accept(0xc00013a000)
net/fd_unix.go:172 +0x35
net.(*TCPListener).accept(0xc0008feba0)
net/tcpsock_posix.go:142 +0x28
net.(*TCPListener).Accept(0xc0008feba0)
net/tcpsock.go:288 +0x3d
github.com/li4n0/revsuit/pkg/ftp.(*Server).Run(0xc0001f01c0)
github.com/li4n0/revsuit/pkg/ftp/ftp.go:400 +0x351
created by github.com/li4n0/revsuit/pkg/server.(*Revsuit).Run
github.com/li4n0/revsuit/pkg/server/server.go:227 +0x1ef
goroutine 30 [chan receive]:
github.com/li4n0/revsuit/pkg/server.(*Revsuit).Run.func1()
github.com/li4n0/revsuit/pkg/server/server.go:230 +0x71
created by github.com/li4n0/revsuit/pkg/server.(*Revsuit).Run
github.com/li4n0/revsuit/pkg/server/server.go:229 +0x22c
goroutine 31 [semacquire]:
sync.runtime_SemacquireMutex(0x0?, 0x0?, 0x0?)
runtime/sema.go:77 +0x25
sync.(*Mutex).lockSlow(0xc000600070)
sync/mutex.go:171 +0x165
sync.(*Mutex).Lock(...)
sync/mutex.go:90
github.com/li4n0/revsuit/pkg/dns.(*Server).Run.func3()
github.com/li4n0/revsuit/pkg/dns/dns.go:251 +0x4f
created by github.com/li4n0/revsuit/pkg/dns.(*Server).Run
github.com/li4n0/revsuit/pkg/dns/dns.go:250 +0x385
goroutine 32 [IO wait]:
internal/poll.runtime_pollWait(0x7fc685375cb8, 0x72)
runtime/netpoll.go:305 +0x89
internal/poll.(*pollDesc).wait(0xc00013a100?, 0xc00059e000?, 0x0)
internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).ReadMsgInet6(0xc00013a100, {0xc00059e000, 0x200, 0x200}, {0xc00080acc0, 0x28, 0x28}, 0x0?, 0x0?)
internal/poll/fd_unix.go:358 +0x2dd
net.(*netFD).readMsgInet6(0xc00013a100, {0xc00059e000?, 0xc000926d20?, 0x0?}, {0xc00080acc0?, 0x203000?, 0x203000?}, 0x203000?, 0xc000071b48?)
net/fd_posix.go:90 +0x37
net.(*UDPConn).readMsg(0x86002980523a0?, {0xc00059e000?, 0x1501968?, 0x10face0?}, {0xc00080acc0?, 0xa?, 0x0?})
net/udpsock_posix.go:106 +0xa5
net.(*UDPConn).ReadMsgUDPAddrPort(0xc000014608, {0xc00059e000?, 0x30?, 0xc000064800?}, {0xc00080acc0?, 0x0?, 0x4d8f93?})
net/udpsock.go:203 +0x53
net.(*UDPConn).ReadMsgUDP(0x4d9040?, {0xc00059e000?, 0xc0c27d5692aaf38c?, 0x4b06e5bd2?}, {0xc00080acc0?, 0xc000071ca8?, 0x481c7e?})
net/udpsock.go:191 +0x2a
github.com/miekg/dns.ReadFromSessionUDP(0xc0008d0210?, {0xc00059e000, 0x200, 0x200})
github.com/miekg/[email protected]/udp.go:42 +0x87
github.com/miekg/dns.(*Server).readUDP(0xc0008d0120, 0xc000014608, 0xc000926d20?)
github.com/miekg/[email protected]/server.go:695 +0x110
github.com/miekg/dns.defaultReader.ReadUDP({0xc0000495a0?}, 0x166a360?, 0xc000926d20?)
github.com/miekg/[email protected]/server.go:174 +0x19
github.com/miekg/dns.(*Server).serveUDP(0xc0008d0120, {0x16799e0?, 0xc000014608?})
github.com/miekg/[email protected]/server.go:513 +0x2a9
github.com/miekg/dns.(*Server).ListenAndServe(0xc0008d0120)
github.com/miekg/[email protected]/server.go:342 +0x515
github.com/li4n0/revsuit/internal/newdns.Run.func1()
github.com/li4n0/revsuit/internal/newdns/run.go:47 +0x26
created by github.com/li4n0/revsuit/internal/newdns.Run
github.com/li4n0/revsuit/internal/newdns/run.go:46 +0x21e
goroutine 33 [IO wait]:
internal/poll.runtime_pollWait(0x7fc685376258, 0x72)
runtime/netpoll.go:305 +0x89
internal/poll.(*pollDesc).wait(0xc000600e00?, 0x1f9ef50?, 0x0)
internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Accept(0xc000600e00)
internal/poll/fd_unix.go:614 +0x234
net.(*netFD).accept(0xc000600e00)
net/fd_unix.go:172 +0x35
net.(*TCPListener).accept(0xc0008fe9f0)
net/tcpsock_posix.go:142 +0x28
net.(*TCPListener).Accept(0xc0008fe9f0)
net/tcpsock.go:288 +0x3d
github.com/miekg/dns.(*Server).serveTCP(0xc0008d0240, {0x1673a08?, 0xc0008fe9f0})
github.com/miekg/[email protected]/server.go:457 +0x14e
github.com/miekg/dns.(*Server).ListenAndServe(0xc0008d0240)
github.com/miekg/[email protected]/server.go:314 +0x393
github.com/li4n0/revsuit/internal/newdns.Run.func2()
github.com/li4n0/revsuit/internal/newdns/run.go:52 +0x26
created by github.com/li4n0/revsuit/internal/newdns.Run
github.com/li4n0/revsuit/internal/newdns/run.go:51 +0x272
goroutine 34 [semacquire]:
sync.runtime_SemacquireMutex(0x0?, 0x0?, 0x0?)
runtime/sema.go:77 +0x25
sync.(*Mutex).lockSlow(0xc000926048)
sync/mutex.go:171 +0x165
sync.(*Mutex).Lock(...)
sync/mutex.go:90
github.com/li4n0/revsuit/pkg/rmi.(*Server).Run.func2()
github.com/li4n0/revsuit/pkg/rmi/rmi.go:188 +0x56
created by github.com/li4n0/revsuit/pkg/rmi.(*Server).Run
github.com/li4n0/revsuit/pkg/rmi/rmi.go:187 +0x1c5
goroutine 36 [semacquire]:
sync.runtime_SemacquireMutex(0x0?, 0x0?, 0x1?)
runtime/sema.go:77 +0x25
sync.(*Mutex).lockSlow(0xc000182198)
sync/mutex.go:171 +0x165
sync.(*Mutex).Lock(...)
sync/mutex.go:90
github.com/li4n0/revsuit/pkg/mysql.(*Server).Run.func2()
github.com/li4n0/revsuit/pkg/mysql/mysql.go:309 +0x45
created by github.com/li4n0/revsuit/pkg/mysql.(*Server).Run
github.com/li4n0/revsuit/pkg/mysql/mysql.go:308 +0x272
goroutine 37 [chan receive]:
github.com/li4n0/revsuit/pkg/ftp.(*Server).runPasvServer.func1()
github.com/li4n0/revsuit/pkg/ftp/ftp.go:328 +0x70
created by github.com/li4n0/revsuit/pkg/ftp.(*Server).runPasvServer
github.com/li4n0/revsuit/pkg/ftp/ftp.go:327 +0x205
goroutine 38 [semacquire]:
sync.runtime_SemacquireMutex(0x0?, 0x0?, 0xc00077f824?)
runtime/sema.go:77 +0x25
sync.(*Mutex).lockSlow(0xc0001f0220)
sync/mutex.go:171 +0x165
sync.(*Mutex).Lock(...)
sync/mutex.go:90
github.com/li4n0/revsuit/pkg/ftp.(*Server).Run.func3()
github.com/li4n0/revsuit/pkg/ftp/ftp.go:392 +0x56
created by github.com/li4n0/revsuit/pkg/ftp.(*Server).Run
github.com/li4n0/revsuit/pkg/ftp/ftp.go:391 +0x26a
goroutine 39 [IO wait]:
internal/poll.runtime_pollWait(0x7fc685375bc8, 0x72)
runtime/netpoll.go:305 +0x89
internal/poll.(*pollDesc).wait(0xc00013a200?, 0xc000952000?, 0x0)
internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0xc00013a200, {0xc000952000, 0x1000, 0x1000})
internal/poll/fd_unix.go:167 +0x25a
net.(*netFD).Read(0xc00013a200, {0xc000952000?, 0xc00084e9a0?, 0x481c7e?})
net/fd_posix.go:55 +0x29
net.(*conn).Read(0xc000014620, {0xc000952000?, 0x6d720c?, 0xc000902d00?})
net/net.go:183 +0x45
net/http.(*connReader).Read(0xc0009211d0, {0xc000952000, 0x1000, 0x1000})
net/http/server.go:786 +0x171
bufio.(*Reader).fill(0xc000976c00)
bufio/bufio.go:106 +0xff
bufio.(*Reader).ReadSlice(0xc000976c00, 0x0?)
bufio/bufio.go:372 +0x2f
bufio.(*Reader).ReadLine(0xc000976c00)
bufio/bufio.go:401 +0x27
net/textproto.(*Reader).readLineSlice(0xc000921200)
net/textproto/reader.go:56 +0x99
net/textproto.(*Reader).ReadLine(...)
net/textproto/reader.go:37
net/http.readRequest(0xc000014620?)
net/http/request.go:1036 +0x79
net/http.(*conn).readRequest(0xc000a4e0a0, {0x1675c18, 0xc000902cc0})
net/http/server.go:994 +0x24a
net/http.(*conn).serve(0xc000a4e0a0, {0x1675cc0, 0xc000920480})
net/http/server.go:1916 +0x345
created by net/http.(*Server).Serve
net/http/server.go:3102 +0x4db
goroutine 41 [IO wait]:
internal/poll.runtime_pollWait(0x7fc685375ad8, 0x72)
runtime/netpoll.go:305 +0x89
internal/poll.(*pollDesc).wait(0xc00013ac80?, 0xc000975000?, 0x0)
internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0xc00013ac80, {0xc000975000, 0x1000, 0x1000})
internal/poll/fd_unix.go:167 +0x25a
net.(*netFD).Read(0xc00013ac80, {0xc000975000?, 0xc00060e580?, 0x481c7e?})
net/fd_posix.go:55 +0x29
net.(*conn).Read(0xc0005f63e8, {0xc000975000?, 0x6d720c?, 0xc000903e80?})
net/net.go:183 +0x45
net/http.(*connReader).Read(0xc000614870, {0xc000975000, 0x1000, 0x1000})
net/http/server.go:786 +0x171
bufio.(*Reader).fill(0xc000976d20)
bufio/bufio.go:106 +0xff
bufio.(*Reader).ReadSlice(0xc000976d20, 0x0?)
bufio/bufio.go:372 +0x2f
bufio.(*Reader).ReadLine(0xc000976d20)
bufio/bufio.go:401 +0x27
net/textproto.(*Reader).readLineSlice(0xc0006148a0)
net/textproto/reader.go:56 +0x99
net/textproto.(*Reader).ReadLine(...)
net/textproto/reader.go:37
net/http.readRequest(0xc0005f63e8?)
net/http/request.go:1036 +0x79
net/http.(*conn).readRequest(0xc000a4e1e0, {0x1675c18, 0xc000903e40})
net/http/server.go:994 +0x24a
net/http.(*conn).serve(0xc000a4e1e0, {0x1675cc0, 0xc000920480})
net/http/server.go:1916 +0x345
created by net/http.(*Server).Serve
net/http/server.go:3102 +0x4db
goroutine 43 [sync.Cond.Wait]:
sync.runtime_notifyListWait(0xc0009f6010, 0x1)
runtime/sema.go:517 +0x14c
sync.(*Cond).Wait(0xc0005f6400?)
sync/cond.go:70 +0x8c
net/http.(*connReader).abortPendingRead(0xc000614ab0)
net/http/server.go:726 +0xb5
net/http.(*response).finishRequest(0xc000a54700)
net/http/server.go:1658 +0x8a
net/http.(*conn).serve(0xc000a4e280, {0x1675cc0, 0xc000920480})
net/http/server.go:1997 +0x64a
created by net/http.(*Server).Serve
net/http/server.go:3102 +0x4db
goroutine 51 [runnable]:
net/http.(*connReader).startBackgroundRead.func2()
net/http/server.go:674
runtime.goexit()
runtime/asm_amd64.s:1594 +0x1
created by net/http.(*connReader).startBackgroundRead
net/http/server.go:674 +0xca
goroutine 46 [IO wait]:
internal/poll.runtime_pollWait(0x7fc6853758f8, 0x72)
runtime/netpoll.go:305 +0x89
internal/poll.(*pollDesc).wait(0xc00013af00?, 0xc0006b7000?, 0x0)
internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0xc00013af00, {0xc0006b7000, 0x1000, 0x1000})
internal/poll/fd_unix.go:167 +0x25a
net.(*netFD).Read(0xc00013af00, {0xc0006b7000?, 0xc00084e420?, 0x481c7e?})
net/fd_posix.go:55 +0x29
net.(*conn).Read(0xc0005f6418, {0xc0006b7000?, 0x6d720c?, 0xc0009f6100?})
net/net.go:183 +0x45
net/http.(*connReader).Read(0xc000614de0, {0xc0006b7000, 0x1000, 0x1000})
net/http/server.go:786 +0x171
bufio.(*Reader).fill(0xc000976f60)
bufio/bufio.go:106 +0xff
bufio.(*Reader).ReadSlice(0xc000976f60, 0x0?)
bufio/bufio.go:372 +0x2f
bufio.(*Reader).ReadLine(0xc000976f60)
bufio/bufio.go:401 +0x27
net/textproto.(*Reader).readLineSlice(0xc000614ae0)
net/textproto/reader.go:56 +0x99
net/textproto.(*Reader).ReadLine(...)
net/textproto/reader.go:37
net/http.readRequest(0xc0005f6418?)
net/http/request.go:1036 +0x79
net/http.(*conn).readRequest(0xc000a4e320, {0x1675c18, 0xc0009f60c0})
net/http/server.go:994 +0x24a
net/http.(*conn).serve(0xc000a4e320, {0x1675cc0, 0xc000920480})
net/http/server.go:1916 +0x345
created by net/http.(*Server).Serve
net/http/server.go:3102 +0x4db
[ WARN] error when parse version: Version string empty
./revsuit_linux_amd64: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by ./revsuit_linux_amd64)
Environments
linux amd 64、windows amd 64
RevSuit Version
0.5.0
Describe the bug
A clear and concise description of what the bug is.
通过内置面板修改密码后,Token头和Cookie头不统一,导致无法登录
(token更新了、但cookie未更新、且路由中先获取的是cookie中的token)
不优美的修复方案
修改\pkg\server\router.go文件的30行,分别获取token值
func (revsuit *Revsuit) registerPlatformRouter() {
// /api need Authorization
api := revsuit.http.Router.Group(revsuit.config.AdminPathPrefix + "/api")
api.Use(func(c *gin.Context) {
tokenCookie, _ := c.Cookie("token")
tokenToken := c.Request.Header.Get("Token")
if tokenToken != revsuit.http.Token && tokenCookie != revsuit.http.Token {
c.Abort()
c.Status(403)
}
})
revsuit.http.ApiGroup = api
.....
Using MongoDB or Cassandra is recommended for handling high concurrency scenarios with a large number of HTTP requests and storing records
Does it not support the HTTPS protocol?
Hi, are there any plans to add the following features
师傅您好,
我近期在分析xstream系列漏洞,有看到您该漏洞poc,运行验证失败。
根据之前经验,xstream官方有时会一楼poc中标签或字段,所以能发下您的poc,并说下您使用哪个版本jdk嘛?
我微信:15801193276
谢谢
使用配置文件或者随机生成的Token登录panel一直提示Token错误,无法进入后台,即使删除数据库文件重新弄也是这样
this is very cool, thanks for the tools can you remake this in webservice installer so we can install there in hosting not on vps or others...
~BestRegards
Hello, using your project has been quite impressive and it's truly outstanding. However, I find it bothersome to manually write a tool for deleting existing records when generating a large amount of log data. Is it possible to add a feature in the code that allows clearing the content of a specific page or all pages? I believe incorporating this functionality would greatly enhance the project.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.