detect seostar, pandalytics, pagething user agents

detect kw iso code
fix suspicious req pre lines being mashed onto one line
This commit is contained in:
Azareal 2021-03-24 06:59:34 +10:00
parent 93b6e28cd7
commit f073f29a09
4 changed files with 77 additions and 54 deletions

View File

@ -52,6 +52,7 @@ var langCodes = []string{
"kn", "kn",
"ko", "ko",
"kok", "kok",
"kw",
"ky", "ky",
"lt", "lt",
"lv", "lv",

View File

@ -631,22 +631,25 @@ var agentMapEnum = map[string]int{
"surdotly": 52, "surdotly": 52,
"domcop": 53, "domcop": 53,
"netcraft": 54, "netcraft": 54,
"blexbot": 55, "seostar": 55,
"wappalyzer": 56, "pandalytics": 56,
"twingly": 57, "blexbot": 57,
"linkfluence": 58, "wappalyzer": 58,
"burf": 59, "twingly": 59,
"aspiegel": 60, "linkfluence": 60,
"mail_ru": 61, "pagething": 61,
"ccbot": 62, "burf": 62,
"yacy": 63, "aspiegel": 63,
"zgrab": 64, "mail_ru": 64,
"cloudsystemnetworks": 65, "ccbot": 65,
"maui": 66, "yacy": 66,
"curl": 67, "zgrab": 67,
"python": 68, "cloudsystemnetworks": 68,
"headlesschrome": 69, "maui": 69,
"awesome_bot": 70, "curl": 70,
"python": 71,
"headlesschrome": 72,
"awesome_bot": 73,
} }
var reverseAgentMapEnum = map[int]string{ var reverseAgentMapEnum = map[int]string{
0: "unknown", 0: "unknown",
@ -704,22 +707,25 @@ var reverseAgentMapEnum = map[int]string{
52: "surdotly", 52: "surdotly",
53: "domcop", 53: "domcop",
54: "netcraft", 54: "netcraft",
55: "blexbot", 55: "seostar",
56: "wappalyzer", 56: "pandalytics",
57: "twingly", 57: "blexbot",
58: "linkfluence", 58: "wappalyzer",
59: "burf", 59: "twingly",
60: "aspiegel", 60: "linkfluence",
61: "mail_ru", 61: "pagething",
62: "ccbot", 62: "burf",
63: "yacy", 63: "aspiegel",
64: "zgrab", 64: "mail_ru",
65: "cloudsystemnetworks", 65: "ccbot",
66: "maui", 66: "yacy",
67: "curl", 67: "zgrab",
68: "python", 68: "cloudsystemnetworks",
69: "headlesschrome", 69: "maui",
70: "awesome_bot", 70: "curl",
71: "python",
72: "headlesschrome",
73: "awesome_bot",
} }
var markToAgent = map[string]string{ var markToAgent = map[string]string{
"OPR": "opera", "OPR": "opera",
@ -779,10 +785,13 @@ var markToAgent = map[string]string{
"SurdotlyBot": "surdotly", "SurdotlyBot": "surdotly",
"DomCopBot": "domcop", "DomCopBot": "domcop",
"NetcraftSurveyAgent": "netcraft", "NetcraftSurveyAgent": "netcraft",
"seostar": "seostar",
"Pandalytics": "pandalytics",
"BLEXBot": "blexbot", "BLEXBot": "blexbot",
"Wappalyzer": "wappalyzer", "Wappalyzer": "wappalyzer",
"Twingly": "twingly", "Twingly": "twingly",
"linkfluence": "linkfluence", "linkfluence": "linkfluence",
"PageThing": "pagething",
"Burf": "burf", "Burf": "burf",
"AspiegelBot": "aspiegel", "AspiegelBot": "aspiegel",
"PetalBot": "aspiegel", "PetalBot": "aspiegel",
@ -855,23 +864,26 @@ var markToID = map[string]int{
"SurdotlyBot": 52, "SurdotlyBot": 52,
"DomCopBot": 53, "DomCopBot": 53,
"NetcraftSurveyAgent": 54, "NetcraftSurveyAgent": 54,
"BLEXBot": 55, "seostar": 55,
"Wappalyzer": 56, "Pandalytics": 56,
"Twingly": 57, "BLEXBot": 57,
"linkfluence": 58, "Wappalyzer": 58,
"Burf": 59, "Twingly": 59,
"AspiegelBot": 60, "linkfluence": 60,
"PetalBot": 60, "PageThing": 61,
"RU_Bot": 61, "Burf": 62,
"CCBot": 62, "AspiegelBot": 63,
"yacybot": 63, "PetalBot": 63,
"zgrab": 64, "RU_Bot": 64,
"Nimbostratus": 65, "CCBot": 65,
"MauiBot": 66, "yacybot": 66,
"curl": 67, "zgrab": 67,
"python": 68, "Nimbostratus": 68,
"HeadlessChrome": 69, "MauiBot": 69,
"awesome_bot": 70, "curl": 70,
"python": 71,
"HeadlessChrome": 72,
"awesome_bot": 73,
} }
/*var agentRank = map[string]int{ /*var agentRank = map[string]int{
"opera":9, "opera":9,
@ -920,7 +932,7 @@ func (red *HTTPSRedirect) ServeHTTP(w http.ResponseWriter, req *http.Request) {
func (r *GenRouter) SuspiciousRequest(req *http.Request, pre string) { func (r *GenRouter) SuspiciousRequest(req *http.Request, pre string) {
var sb strings.Builder var sb strings.Builder
if pre != "" { if pre != "" {
sb.WriteString("Suspicious Request") sb.WriteString("Suspicious Request\n")
} else { } else {
pre = "Suspicious Request" pre = "Suspicious Request"
} }
@ -1146,11 +1158,11 @@ func (r *GenRouter) ServeHTTP(w http.ResponseWriter, req *http.Request) {
if strings.Contains(ua,"rv:11") { if strings.Contains(ua,"rv:11") {
agent = 6 agent = 6
} }
case 64: case 67:
w.WriteHeader(200) // 400 w.WriteHeader(200) // 400
w.Write([]byte("")) w.Write([]byte(""))
r.DumpRequest(req,"Blocked Scanner") r.DumpRequest(req,"Blocked Scanner")
co.AgentViewCounter.Bump(64) co.AgentViewCounter.Bump(67)
return return
} }
@ -2595,12 +2607,12 @@ func (r *GenRouter) routeSwitch(w http.ResponseWriter, req *http.Request, user *
co.RouteViewCounter.Bump3(150, cn) co.RouteViewCounter.Bump3(150, cn)
} }
case "/profile": case "/profile":
err = c.MemberOnly(w,req,user) err = c.NoSessionMismatch(w,req,user)
if err != nil { if err != nil {
return err return err
} }
err = c.NoSessionMismatch(w,req,user) err = c.MemberOnly(w,req,user)
if err != nil { if err != nil {
return err return err
} }

View File

@ -239,10 +239,13 @@
"surdotly":"Surdotly", "surdotly":"Surdotly",
"domcop":"DomCopBot", "domcop":"DomCopBot",
"netcraft":"Netcraft", "netcraft":"Netcraft",
"seostar":"seostar.co",
"pandalytics":"Pandalytics",
"blexbot":"BLEXBot", "blexbot":"BLEXBot",
"wappalyzer":"Wappalyzer", "wappalyzer":"Wappalyzer",
"twingly":"Twingly", "twingly":"Twingly",
"linkfluence":"Linkfluence", "linkfluence":"Linkfluence",
"pagething":"PageThing",
"burf":"Burf.co", "burf":"Burf.co",
"aspiegel":"Aspiegel", "aspiegel":"Aspiegel",
"mail_ru":"Mail.ru bot", "mail_ru":"Mail.ru bot",
@ -312,6 +315,7 @@
"kn":"Kannada", "kn":"Kannada",
"ko":"Korean", "ko":"Korean",
"kok":"Konkani", "kok":"Konkani",
"kw":"Kuwait",
"ky":"Kyrgyz", "ky":"Kyrgyz",
"lt":"Lithuanian", "lt":"Lithuanian",
"lv":"Latvian", "lv":"Latvian",

View File

@ -298,10 +298,13 @@ func main() {
"surdotly", "surdotly",
"domcop", "domcop",
"netcraft", "netcraft",
"seostar",
"pandalytics",
"blexbot", "blexbot",
"wappalyzer", "wappalyzer",
"twingly", "twingly",
"linkfluence", "linkfluence",
"pagething",
"burf", "burf",
"aspiegel", "aspiegel",
"mail_ru", "mail_ru",
@ -389,10 +392,13 @@ func main() {
a("SurdotlyBot", "surdotly") a("SurdotlyBot", "surdotly")
a("DomCopBot", "domcop") a("DomCopBot", "domcop")
a("NetcraftSurveyAgent", "netcraft") a("NetcraftSurveyAgent", "netcraft")
a("seostar", "seostar")
a("Pandalytics", "pandalytics")
a("BLEXBot", "blexbot") a("BLEXBot", "blexbot")
a("Wappalyzer", "wappalyzer") a("Wappalyzer", "wappalyzer")
a("Twingly", "twingly") a("Twingly", "twingly")
a("linkfluence", "linkfluence") a("linkfluence", "linkfluence")
a("PageThing", "pagething")
a("Burf", "burf") a("Burf", "burf")
a("AspiegelBot", "aspiegel") a("AspiegelBot", "aspiegel")
a("PetalBot", "aspiegel") a("PetalBot", "aspiegel")