## khop-sc-neighbors.cf v 201308302 ## Khopesh's syndication of SpamCop's top offenders and top offending networks. ## ## Spamassassin rules written by Adam Katz ## http://khopesh.com/Anti-spam ## khopesh on irc://irc.freenode.net/#spamassassin ## ## sa-update --gpgkey E8B493D6 --channel khop-sc-neighbors.sa.khopesh.com ## ## These rules are Copyright 2001-2009 by Adam Katz ## Licensed under the Apache License 2.0. ## The code that generated this output is GNU Affero General Public License v3. ## Source data (copyright Cisco) was taken from links below. ## ## Frequent updates are needed for these rules, so they are marked 'nopublish' ## This keeps them from being automatically promoted to SpamAssassin proper ## from the testing system, which affirms their usefulness. You can check ## their efficiency at http://ruleqa.spamassassin.org/?rule=%2FKHOP_SC meta __KHOP_SC_EXCLUSIONS __VIA_ML || __freemail_safe || __RCVD_IN_DNSWL || RCVD_IN_HOSTKARMA_WL # http://spamcop.net/w3m?action=map;mask=4294967295;net=0;sort=56 # Due to the massive block size, this rule only examines the last untrusted header __KHOP_SC_CIDR8 X-Spam-Relays-Untrusted =~ /^[^\]]* (?:by|ip)=(?-xism:\b(?:1(?:8[68]|13)|37)(?:\.[012]?\d{1,2}){3}\b) / # and gets cleaned up a bit meta KHOP_SC_CIDR8 __KHOP_SC_CIDR8 && !__KHOP_SC_EXCLUSIONS describe KHOP_SC_CIDR8 Relay CIDR /8 is among worst in SpamCop tflags KHOP_SC_CIDR8 nopublish score KHOP_SC_CIDR8 0.1 0.02 0.2 0.1 # spam/ham s/o corpus # 12.3692/1.0099 0.925 20100211 .2 .1 .3 .2 -> .1 .01 .1 .01 # 8.9412/1.1532 0.886 20100325 # 9.4362/0.4074 0.959 20100329 # 11.8281/0.4788 0.961 20100401 without meta # 11.8578/0.4495 0.961 20100402 half meta (oops). decreased worst 4/8->4/7 # 7.8856/0.1388 0.983 20100403 meta, net, solo=7.9236/0.4189 # changed from rank by spam count to rank by hosts reported, back to 4/8 # 12.1963/0.0356 0.997 20100406 (wow) solo=12.2454/0.0408@0.997 # 12.0753/0.0359 0.997 20100409 solo=12.1265/0.0412@0.997 # 12.1449/0.0139 0.999 20100410 net, solo=12.1966/0.0197@0.998, ->.2 .1 .3 .2 # 10.3554/0.0112 0.999 20110227@510k solo=10.3717/0.0119@0.999, ->.3 .1 .3 .1 # 1.5335/0.5063 0.752 20130629@465k net, solo=1.5947/0.5379@0.748 # 2.0256/0.7432 0.732 20130705@376k solo=2.0429/0.7595@0.729, ->.1 .02 .2 .1 header __KHOP_SC_TOP_CIDR8 X-Spam-Relays-Untrusted =~ /^[^\]]* (?:by|ip)=(?-xism:\b(?:1(?:17|78|90)|2)(?:\.[012]?\d{1,2}){3}\b) / meta KHOP_SC_TOP_CIDR8 __KHOP_SC_TOP_CIDR8 && !__KHOP_SC_EXCLUSIONS describe KHOP_SC_TOP_CIDR8 Relay CIDR /8 leads SpamCop in worst /8s tflags KHOP_SC_TOP_CIDR8 nopublish score KHOP_SC_TOP_CIDR8 0.1 0 0.1 0 # spam/ham s/o corpus # 15.6795/0.1173 0.993 20100211 .5 .4 .8 .6 -> .6 .5 .8 .5 # 11.0578/0.3614 0.968 20100325 # 13.7809/0.4860 0.966 20100329 .9 .1 .9 .1 masscheck promoted # 14.1773/0.4799 0.967 20100401 # 14.1807/0.4960 0.966 20100402 without meta # 14.0841/0.0926 0.993 20100402 added meta (wow!) # 14.2553/0.0424 0.997 20100403 net, solo=14.3609/0.4888@0.967 # 11.6252/0.1263 0.989 20100406 solo=11.7104/0.5366@0.956 # 11.5987/0.1295 0.989 20100409 solo=11.6856/0.5731@0.953 # 11.6286/0.0475 0.996 20100410 net, solo=11.7224/0.6900@0.944, ->LE as above # 10.6798/0.1269 0.993 20110227@510k solo=10.6996/0.5918@0.948 -> .2 0 .2 0 # 3.6096/0.2502 0.935 20130629@465k net, solo=3.7125/1.5080@0.711 # 4.1386/0.8450 0.830 20130705@376k solo=4.1707/1.5958@0.723 ->.1 0 .1 0 # http://www.spamcop.net/w3m?action=map;net=bmaxcnt;mask=16777215;sort=spamcnt header KHOP_SC_CIDR16 Received =~ /___ FAILED TO POPULATE ___/ describe KHOP_SC_CIDR16 Relay CIDR /16 is among worst in SpamCop tflags KHOP_SC_CIDR16 nopublish score KHOP_SC_CIDR16 0.4 0.1 0.4 0.1 # spam/ham s/o corpus # 0.7444/0.0129 0.983 20100211 # 0.5943/0.0139 0.977 20100325 .6 .5 .9 .75 # 0.8767/0.0167 0.981 20100329 1.6 .5 1.6 .5 masscheck promoted # 0.6952/0.0011 0.998 20100401 increased worst offenders 6/12->9/15 @ 20100401 # 0.6814/0.0149 0.979 20100402 # 0.4399/0.0008 0.998 20100403 net run # 0.2102/0.0011 0.995 20100406 # 0 /0 0 20100409 (wha!?) # crap, still empty 20100410 bad scrape, script failed to populate rule # crap, still empty 20110227 this is due to safety net exclns -> 1 .2 1 .2 # crap, still empty 20130629@465k net # crap, still empty 20130705@376k net. lowering for low vol -> .4 .1 .4 .1 header KHOP_SC_TOP_CIDR16 Received =~ /(?-xism:\b187\.111(?:\.[012]?\d{1,2}){2}\b)/ describe KHOP_SC_TOP_CIDR16 Relay CIDR /16 leads SpamCop in worst /16s tflags KHOP_SC_TOP_CIDR16 nopublish score KHOP_SC_TOP_CIDR16 0.6 0.2 0.7 0.3 # spam/ham s/o corpus # 0.8862/0.0008 0.999 20100211 # 0.5738/0.0008 0.999 20100325 .9 .8 1.3 1.2 # 0.6658/0 1.000 20100329 2 .5 2 .5 masscheck promoted # 0.8374/0 1.000 20100401 # 1.1534/0 1.000 20100402 # 1.2077/0.0145 0.988 20100403 net run # 1.2155/0.0142 0.988 20100406 # 1.2779/0.0142 0.989 20100409 # 1.0611/0.0009 0.999 20100410 net # 0.5034/0 1.000 20110227@510k 2 .3 2 .4 # 0.0140/0 1.000 20130629@465k net # 0/0 - 20130705@376k lowering for low vol -> .6 .2 .7 .3 # http://spamcop.net/w3m?action=map;net=cmaxcnt;mask=65535;sort=spamcnt header KHOP_SC_CIDR24 Received =~ /(?-xism:\b(?:1(?:1(?:4\.42\.1(?:3[678]|54)|9\.184\.214|6\.112\.5)|(?:87\.4\.11|\.93\.2)1|21\.(?:22\.127|54\.54)|77\.5\.230)|2(?:17\.219\.123|21\.214\.221)|61\.133\.125|91\.233\.188)\.[012]?\d{1,2}\b)/ describe KHOP_SC_CIDR24 Relay CIDR /24 is among worst in SpamCop tflags KHOP_SC_CIDR24 nopublish score KHOP_SC_CIDR24 0.6 0 0.6 0 # spam/ham s/o corpus # 0.1350/0 1.000 20100211 # 0.0798/0 1.000 20100325 .9 .8 1.3 1.2 # 0.0159/0 1.000 20100329 2.5 .6 2.5 .6 masscheck promoted # 0.1577/0 1.000 20100401 # added top host-count /24s, increased worst offenders 6/12->8/15 @ 20100401 # 0.1223/0 1.000 20100402 (oops, too small a pool) # host-count 84/64->84/50, offenders 8/15->10/20 @ 20100402 # 0.2547/0 1.000 20100403 net # 0.2126/0 1.000 20100406 # 0.2960/0 1.000 20100409 # 0.2905/0 1.000 20100410 net # 0.4157/0.5009 0.454 20110227 something is wrong here! -> .1 0 .1 0 # 0.0004/0 1.000 20130629@465k net # 0.4428/0 1.000 20130705@376k resume scores -> .6 0 .6 0 header KHOP_SC_TOP_CIDR24 Received =~ /(?-xism:\b(?:1(?:1(?:8\.244\.239|6\.112\.66)|2(?:1\.199\.18|5\.60\.156)|4(?:\.139\.229|1\.0\.61)|76\.192\.15)|(?:218\.2\.12|90\.150\.)9|61\.55\.156|82\.207\.51)\.[012]?\d{1,2}\b)/ describe KHOP_SC_TOP_CIDR24 Relay CIDR /24 leads SpamCop in worst /24s tflags KHOP_SC_TOP_CIDR24 nopublish score KHOP_SC_TOP_CIDR24 1.7 0.5 1.7 0.5 # spam/ham s/o corpus # 0.2528/0.0092 0.965 20100211 # 0.2231/0.0112 0.952 20100325 1.7 1.5 1.9 1.8 # 0.0249/0 1.000 20100329 2.7 .6 2.7 .6 masscheck promoted # 0.1594/0 1.000 20100401 # 0.6448/0 1.000 20100402 (wow!) # 0.6896/0 1.000 20100403 net # 0.6255/0.0045 0.993 20100406 # 0.7261/0.0045 0.994 20100409 # 0.7447/0.0054 0.993 20100410 net # 0.5722/0 1.000 20110227@510k 2.7 .5 2.7 .5 # 0.1483/0 1.000 20130629@465k net # 0.0197/0 1.000 20130705@376k -> 1.7 .5 1.7 .5 # http://www.spamcop.net/w3m?action=hoshame header KHOP_SC_TOP200 Received =~ /(?-xism:\b(?:1(?:1(?:2\.(?:1(?:61\.232\.157|84\.172\.244|24\.15\.141)|216\.(?:55\.162|30\.50))|6\.1(?:12\.(?:66\.102|5\.136)|93\.90\.26)|7\.(?:131\.158\.34|239\.107\.21)|1\.(?:68\.104\.132|30\.77\.129)|9\.1(?:84\.214\.18|93\.93\.25)|4\.26\.128\.143|5\.71\.238\.141|8\.244\.239\.2)|9(?:0\.(?:2(?:02\.116\.101|21\.18\.114)|1(?:07\.140\.77|81\.113\.2)|82\.89\.156|0\.60\.238)|8\.(?:24\.1(?:80\.91|75\.3)|52\.247\.103)|2\.1(?:63\.193\.199|57\.58\.136)|3\.(?:255\.143\.62|95\.90\.194)|5\.2(?:29\.106\.222|45\.118\.5)|4\.11\.24\.156|6\.3\.181\.162)|2(?:1\.(?:1(?:99\.18\.220|2\.167\.95)|22\.(?:127\.17|34\.166)|78\.119\.193)|5\.(?:39\.163\.161|75\.235\.127)|4\.(?:42\.124\.136|207\.34\.91)|3\.234\.230\.45|8\.134\.37\.121)|8(?:3\.(?:98\.23(?:5\.12|\.158)|136\.146\.110|238\.169\.86)|7\.(?:111\.255\.130|4\.111\.218)|9\.(?:75\.63\.114|3\.25\.146)|0\.211\.17(?:0\.86|9\.30)|4\.82\.214\.35)|7(?:8\.(?:20(?:7\.158\.230|\.148\.11)|150\.174\.97)|7\.(?:21\.226\.10|5\.230\.114|99\.203\.2)|3\.(?:200\.90\.196|44\.178\.104)|6\.192\.15\.229)|0(?:1\.(?:1(?:0\.34\.153|5\.253\.4)|99\.28\.194)|3\.9\.15(?:8\.1(?:47|81)|7\.126)|9\.228\.132\.146)|4(?:\.(?:52\.137\.(?:54|77)|139\.229\.3[456])|1\.(?:0\.61\.16[56]|105\.65\.10)|8\.223\.59\.187)|3(?:7\.1(?:16\.1(?:22\.218|14\.52)|35\.82\.99)|8\.91\.176\.45)|\.(?:2(?:15\.206\.242|26\.84\.175)|93\.21\.147|85\.17\.82)|(?:51\.236\.192|68\.62\.178)\.146)|2(?:1(?:2\.(?:1(?:11\.205\.137|44\.254\.122)|2(?:47\.140\.71|3\.234\.45)|68\.44\.194)|8\.(?:56\.(?:161\.14|37\.250)|148\.85\.130|4\.100\.252|2\.129\.53)|1\.1(?:5(?:4\.151\.24|7\.114\.13)3|7(?:2\.251\.16|6\.76\.19)8)|7\.(?:219\.123\.59|12\.113\.67)|9\.(?:239\.227\.81|139\.38\.49)|3\.164\.18\.147|0\.109\.97\.63)|0(?:2\.(?:1(?:0(?:3\.241\.169|\.42\.73)|37\.22\.200|29\.52\.94)|29\.241\.33)|1\.1(?:8\.(?:107\.234|95\.158)|16\.199\.34)|3\.(?:156\.250\.101|239\.45\.202)|9\.190\.38\.107|0\.222\.4\.90|8\.98\.51\.46)|2(?:2\.(?:7(?:4\.20(?:3\.194|0\.2)|3\.95\.48)|1(?:69\.224\.242|17\.219\.97)|200\.186\.18|92\.141\.155|35\.61\.196)|1\.2(?:14\.2(?:08\.226|21\.148)|04\.223\.38)|0\.68\.224\.45)|4\.172\.17\.78|\.183\.155\.2)|6(?:1\.(?:1(?:7(?:5\.223\.1(?:34|42)|7\.248\.202)|(?:05\.174|81\.252)\.6|33\.125\.162|66\.55\.153)|55\.156\.210|32\.38\.3)|0\.(?:19(?:0\.43\.1[04]|6\.58\.189)|29\.(?:15\.194|75\.142))|4\.1(?:81\.43\.79|91\.34\.51|4\.85\.2)|9\.198\.197\.156|5\.60\.15\.184|7\.90\.21\.150)|9(?:5\.(?:1(?:5(?:4\.106\.18|9\.105\.2)|30\.9\.89)|78\.123\.159)|1\.2(?:1(?:2\.124\.153|0\.0\.226)|33\.188\.154|03\.69\.41)|3\.1(?:59\.160\.164|23\.54\.138|84\.71\.66)|0\.(?:83\.184\.211|150\.9\.38)|2\.(?:51\.109\.182|247\.60\.5)|4\.77\.199\.148)|8(?:3\.(?:111\.92\.120|238\.208\.55)|(?:4\.17\.27\.24|0\.240\.35\.)5|2\.(?:114\.79\.254|207\.51\.92)|6\.111\.144\.194)|4(?:2\.12(?:1\.11(?:7\.15|8\.12)3|0\.18\.118)|1\.2(?:08\.150\.116|26\.11\.117)|6\.249\.46\.104|9\.248\.113\.50)|5(?:9\.(?:1(?:1\.237\.151|51\.37\.8|2\.17\.6)|8\.26\.22)|8\.(?:215\.176\.210|143\.131\.79)|4\.216\.223\.122)|7(?:(?:8\.141\.67\.15|2\.35\.20\.13)1|9\.174\.204\.134)|3(?:6\.237\.212\.172|7\.123\.98\.115))\b)/ describe KHOP_SC_TOP200 Relay listed in SpamCop top 200 spammer IPs tflags KHOP_SC_TOP200 nopublish score KHOP_SC_TOP200 4 0 4 0 # unnecessary if DNSBLs work # spam/ham s/o corpus # 1.2552/0 1.000 20100211 # 0.8558/0 1.000 20100325 3.4 3.2 3.7 3.5 # 0.1265/0 1.000 20100329 4 0 4 0 masscheck promoted # 0.7066/0 1.000 20100401 # 0.6558/0 1.000 20100403 net # 0.6211/0 1.000 20100406 # 0.5307/0 1.000 20100409 # 0.5617/0 1.000 20100410 net # 0.3655/0 1.000 20110227@510k # 2.6827/0.0069 0.997 20130629@465k net # 2.9091/0.0056 0.998 20130705@376k # Spamhaus DROP, http://www.spamhaus.org/drop/ header KHOP_SPAMHAUS_DROP X-Spam-Relays-Untrusted =~ /___ FAILED TO POPULATE ___/ describe KHOP_SPAMHAUS_DROP Relay listed in Spamhaus Don't Route Or Peer List tflags KHOP_SPAMHAUS_DROP nopublish score KHOP_SPAMHAUS_DROP 1 0.2 1 0.2 # spam/ham s/o corpus # 0.0349/0.0029 0.924 20110227@510k header KHOP_SPAMHAUS_DROP_LE X-Spam-Relays-External =~ /^[^]]*___ FAILED TO POPULATE ___/ describe KHOP_SPAMHAUS_DROP_LE Relay listed in Spamhaus Don't Route Or Peer List tflags KHOP_SPAMHAUS_DROP_LE nopublish score KHOP_SPAMHAUS_DROP_LE 2 0 2 0 # adds to KHOP_SPAMHAUS_DROP # spam/ham s/o corpus # 0.0241/0 1.000 20110227@510k # PSBL-neighbors: any /24 with 73+ (2/7, 29%) IPs in the PSBL (not SpamCop), # as obtained from rsync://psbl-mirror.surriel.com::psbl/psbl.txt header KHOP_PSBL_CIDR24 X-Spam-Relays-Untrusted =~ / (?:by|ip)=(?-xism:\b(?:1(?:1(?:1\.(?:176\.(?:(?:12|8)[4567]|[46][89]?|5[01]?|7\d?)|68\.32)|6\.207\.(?:1[2345]|6[0123]|4[89]|5\d)|3\.56\.2(?:4[589]|5[01]|25)|5\.63\.(?:[89]|1[012345])|9\.3(?:6\.21[23]|9\.195)|2\.215\.(?:6[34]|44)|4\.108\.203)|8(?:6\.(?:1(?:23\.135|67\.242)|37\.203)|3\.93\.(?:1[12]5|9[78]|69|84)|1\.66\.15[67]|2\.18\.222)|2(?:5\.(?:44\.24[1456]|60\.156)|(?:2\.155\.4|1\.54\.5)4|3\.136\.106|4\.107\.127)|9(?:0\.(?:113\.21[01]|234\.10[56])|7\.25(?:2\.[01]|4\.224))|0(?:3\.(?:2(?:8\.184|0\.37)|30\.72|5\.27)|9\.127\.8[016])|77\.(?:154\.139|47\.106)|30\.193\.1(?:46|65))|2(?:7\.20\.(?:[89]|1(?:0[0123]?|[28][89]|[39][01]|7[6789]|1)|24[01234567]|4[0123]|5[6789])|0(?:3\.(?:194\.115|82\.81)|2\.29\.176)|1(?:3\.143\.[56]0|2\.34\.12))|5(?:8\.(?:50\.(?:1(?:[2345]|0[456789]|1[016789])|69|70)|19\.19[01])|9\.55\.25[24])|4(?:1\.2(?:54\.[1258]|23\.161)|9\.0\.11[89])|79\.106\.109)\.[012]?\d{1,2}\b)/ describe KHOP_PSBL_CIDR24 Relay's IP/24 CIDR contains many PSBL hits tflags KHOP_PSBL_CIDR24 nopublish score KHOP_PSBL_CIDR24 2 0.6 2 0.6 # spam/ham s/o corpus # 0.5363/0 1.000 20100401 # 0.7486/0 1.000 20100402 # 0.7317/0 1.000 20100403 net run. min hosts 73->65 # 0.9316/0 1.000 20100406 # 0.9473/0 1.000 20100409 # 0.9545/0 1.000 20100410 net # 0.6985/0.0014 0.998 20110227@510k 2 .6 2 .6 # 0.4298/0 1.000 20130629@465k net # 1.0958/0 1.000 20130705@376k # test for ruleqa, 20100409, http://ruleqa.spamassassin.org/?rule=/KHOP_SPAMMY meta __KHOP_SPAMMY_CIDR24 KHOP_PSBL_CIDR24||KHOP_SC_CIDR24||KHOP_SC_TOP_CIDR24 # est. 1.2/0.0050@.996, floor: 1.0/0.0112@.989, ceiling: 1.4/0@1 # spam/ham s/o corpus # 1.2645/0.0054 0.996 20100410 net # 1.1562/0.0058 0.995 20100417 net # 1.1332/0.5023 0.693 20110227@510k # 0.5785/0 1.000 20130629@465k net # 1.5583/0 1.000 20130705@376k meta __KHOP_SPAMMY_CIDR16 KHOP_SC_CIDR16||KHOP_SC_TOP_CIDR16 # est. 1.4/0.02@.986, floor: 1.3/0.0312@.977, ceiling: 2.0/0.0150@.993 # spam/ham s/o corpus # 1.0611/0.0009 0.999 20100410 net # 1.9539/0.0152 0.992 20100417 net # 0.5034/0 1.000 20110227@510k # 0.0140/0 1.000 20130629@465k net # 0/0 - 20130705@376k meta __KHOP_SPAMMY_CIDR8 KHOP_SC_CIDR8||KHOP_SC_TOP_CIDR8 # est. 23.7/0.15@.994, floor: 23/0.2685@.988, ceiling: 26.5/0.0789@.997 # spam/ham s/o corpus # 23.7686/0.0614 0.997 20100410 net # 22.2300/0.0616 0.997 20100417 net # 21.0352/0.1381 0.993 20110227@510k # 5.1431/0.7565 0.872 20130629@465k net # 6.1642/1.5881 0.795 20130705@376k meta __KHOP_SPAMMY_SUBNET __KHOP_SPAMMY_CIDR24||__KHOP_SPAMMY_CIDR16 # est. 26.2/0.175@.993, floor: 24.5/0.5@.980, ceiling: 30.1/0.1@.997 # spam/ham s/o corpus # 25.6744/0.0677 0.997 20100410 net, beat estimated ceiling (for ham)! # 23.7846/0.0826 0.997 20100417 net, beat ceiling ham, but beat floor spam # 23.7505/0.1041 0.996 20100418 too much ham, nixing /8, new est. 3.0/.02@.993 # 1.6366/0.5023 0.765 20110227@510k # 0.5925/0 1.000 20130629@465k net # 1.5583/0 1.000 20130705@376k # Bump these up to compensate for expected but absent overlap (94+% noted below) if (! plugin(Mail::SpamAssassin::Plugin::DNSEval) ) score KHOP_SC_CIDR8 (0) (0.2) (0) (0.2) # BRBL(98%) score KHOP_SC_TOP_CIDR8 (0) (0.9) (0) (0.9) # BRBL(98%) score KHOP_SC_CIDR16 (0) (1.5) (0) (1.5) # BRBL(99%), PBL(98%) score KHOP_SC_TOP_CIDR16 (0) (1.7) (0) (1.7) # BRBL(99%), PBL(94%) score KHOP_SC_CIDR24 (0) (0.9) (0) (0.9) # SC(99) BRBL(96) MSPIKE(96) score KHOP_SC_TOP_CIDR24 (0) (2.5) (0) (2.5) # MSPIKE(99) SC(98) BRBL(97) ... # PSBL(97) HOSTKARMA(97) score KHOP_SC_TOP200 (0) (4.4) (0) (4.4) # SC(99) PSBL(99) ... # HOSTKARMA(99) SEMBLACK(99) BRBL(98) MSPIKE(94) score KHOP_SPAMHAUS_DROP (0) (3) (0) (3) # SBL(78) score KHOP_PSBL_CIDR24 (0) (1.5) (0) (1.5) # BRBL(98) XBL(95) endif