## khop-sc-neighbors.cf v 201109231 ## 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-bl.sa.khopesh.com ## ## These rules are Copyright 2001-2009 by Adam Katz ## Licensed under the Creative Commons Non-Commercial Share-alike License 2.0. ## The code that generated this output is GNU Affero General Public License v3. ## Source data (copyright Cisco subsidiary SpamCop.net) taken from links below. ## The author is receptive to relicensing requests for this and its generator. ## ## 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 # 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(?:13|22|90)|59)(?:\.[012]?\d{1,2}){3}\b) / # and gets cleaned up a bit meta KHOP_SC_CIDR8 __KHOP_SC_CIDR8 && !(__VIA_ML||__freemail_safe||__RCVD_IN_DNSWL||RCVD_IN_HOSTKARMA_WL) describe KHOP_SC_CIDR8 Relay CIDR /8 is among worst in SpamCop tflags KHOP_SC_CIDR8 nopublish score KHOP_SC_CIDR8 0.3 0.1 0.3 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 header __KHOP_SC_TOP_CIDR8 X-Spam-Relays-Untrusted =~ /^[^\]]* (?:by|ip)=(?-xism:\b(?:1(?:17|78|82)|41)(?:\.[012]?\d{1,2}){3}\b) / meta KHOP_SC_TOP_CIDR8 __KHOP_SC_TOP_CIDR8 && !(__VIA_ML||__freemail_safe||__RCVD_IN_DNSWL||RCVD_IN_HOSTKARMA_WL) 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.2 0 0.2 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 # 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 1.0 0.2 1.0 0.2 # 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 exclusions -> 1 .2 1 .2 header KHOP_SC_TOP_CIDR16 Received =~ /(?-xism:\b(?:1(?:2(?:2\.168|3\.27)|82\.17[78])|41\.252)(?:\.[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 2.0 0.3 2.0 0.4 # 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 # http://spamcop.net/w3m?action=map;net=cmaxcnt;mask=65535;sort=spamcnt header KHOP_SC_CIDR24 Received =~ /(?-xism:\b(?:1(?:25\.110\.(?:1(?:0[13478]|24)|98)|11\.224\.250)|2(?:23\.255\.226|13\.233\.64)|8(?:4\.235\.73|3\.149\.2)|60\.181\.16[24])\.[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.1 0 0.1 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 header KHOP_SC_TOP_CIDR24 Received =~ /(?-xism:\b(?:8(?:5\.(?:26\.(?:1(?:6[45]|8[46])|2(?:3[12345]|41))|115\.248)|3\.149\.(?:3[45]?|4[457]|21))|2(?:1(?:7\.118\.(?:8[13]|90)|3\.87\.74)|0(?:9\.205\.22[567]|2\.152\.243))|1(?:25\.110\.(?:1(?:1[345689]|05|20)|99)|73\.245\.20[45]|09\.127\.86)|(?:60\.181\.16|41\.254\.)1)\.[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 2.7 0.5 2.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 # http://www.spamcop.net/w3m?action=hoshame header KHOP_SC_TOP200 Received =~ /(?-xism:\b(?:1(?:2(?:5\.(?:110\.(?:1(?:1(?:8\.(?:2(?:07|39)|162|88)|9\.(?:1(?:0[78]|63)|55)|5\.(?:(?:20|9)3|16|8)|6\.(?:1(?:04|59)|26)|1\.(?:191|249)|3\.(?:132|220)|4\.(?:211|59)|0\.224)|0(?:2\.(?:(?:12|9)5|69)|5\.(?:1(?:07|4)|32)|7\.1(?:06|74|89)|8\.(?:193|215)|1\.(?:164|73)|3\.(?:234|53)|4\.(?:10|22)2|6\.15|9\.34)|2(?:0\.(?:1(?:12|7)|57)|2\.240|7\.138|4\.79))|9(?:9\.(?:227|46)|6\.194|8\.203))|22(?:8\.238\.108|9\.117\.147))|1\.(?:1(?:77\.135\.103|45\.43\.57|80\.50\.96)|50\.16\.11)|3\.193\.1(?:12\.177|78\.170)|4\.137\.20\.253)|1(?:1\.(?:224\.250\.(?:2(?:4[567]|15)|1(?:3[12]|17))|18(?:4\.219\.114|5\.231\.169))|8\.(?:23(?:2\.201\.35|3\.187\.20)|4(?:0\.236\.134|5\.243\.3))|7\.(?:211\.83\.131|6\.130\.230)|2\.133\.146\.164|9\.200\.84\.225)|9(?:5\.(?:2(?:48\.172\.190|05\.141\.3)|5\.109\.124|161\.9\.2)|4\.126\.183\.120|0\.200\.145\.42)|78\.(?:1(?:75\.(?:100\.184|90\.123)|51\.241\.155|69\.50\.72)|219\.192\.14|79\.13\.83)|09\.(?:70\.184\.22|184\.59\.3|68\.234\.4|98\.7\.206)|8(?:4\.154\.186\.166|0\.94\.93\.5)|\.251\.18\.69)|9(?:5\.(?:1(?:88\.(?:118\.213|70\.208)|40\.205\.100|72\.124\.3|91\.153\.7)|(?:(?:68\.240|76\.237)\.4|226\.174\.1)3|83\.130\.82)|3\.(?:7(?:3\.1(?:32\.79|6\.63)|2\.239\.221|4\.18\.216)|1(?:57\.148\.102|90\.107\.236))|1\.(?:2(?:06\.126\.241|23\.136\.253|14\.18\.6)|1(?:21\.7(?:5\.209|4\.33)|88\.112\.1))|4\.(?:1(?:27\.223\.112|89\.188\.228)|2(?:45\.156\.33|0\.83\.45))|2\.(?:1(?:27\.141\.206|14\.65\.149)|82\.31\.94))|2(?:1(?:1\.(?:4(?:5\.126\.81|7\.89\.147)|226\.179\.152)|9\.(?:70\.4(?:2\.227|3\.245)|147\.19\.50)|2\.7(?:0\.155\.88|8\.227\.53)|7\.2(?:5\.215\.228|6\.6\.74)|3\.218\.164\.95)|0(?:2\.(?:(?:29\.129\.16|55\.186\.2)0|126\.91\.246)|(?:3\.160\.55\.8|7\.157\.30\.6)6|0\.204\.32\.177)|2(?:2\.(?:124\.1(?:54\.170|98\.167)|231\.57\.191)|0\.(?:120\.138\.21|71\.140\.2))|4\.79\.106\.38|\.37\.61\.107)|8(?:3\.(?:2(?:18\.64\.200|29\.48\.222|\.31\.136)|1(?:39\.29\.124|51\.4\.228))|9\.(?:2(?:3(?:9\.132\.173|7\.35\.237)|05\.46\.113)|136\.114\.62)|7\.(?:2(?:21\.156\.54|04\.79\.21)|97\.237\.206)|6\.(?:5(?:7\.251\.55|8\.179\.72)|122\.61\.204)|0\.(?:(?:235\.82\.6|55\.219\.)2|92\.186\.149)|1\.23\.193\.107|2\.151\.210\.15|4\.121\.250\.74|5\.198\.105\.70)|6(?:0\.181\.16(?:1\.(?:1(?:[59]2|16)|2(?:24|50))|2\.(?:37|64)|4\.20)|2\.(?:176\.21\.108|33\.191\.66)|9\.171\.130\.190|5\.98\.224\.52|8\.41\.250\.21)|7(?:7\.(?:1(?:06\.232\.17|20\.241\.2)8|81\.199\.69)|8\.(?:1(?:89\.224\.183|28\.75\.7)|29\.4\.78)|9\.1(?:32\.121\.132|24\.92\.164)|6\.114\.249\.46)|4(?:1\.(?:137\.(?:2[04]|56)\.|208\.106\.24)4|6\.(?:186\.9\.237|55\.176\.98))|5(?:8\.227\.41\.24|9\.127\.141\.9)7)\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 # 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 =~ /(?-xism:\b(?:1(?:1(?:4\.112\.2(?:2[456789]|3[016789])|3\.10\.16[4589])|2(?:1\.63\.1[6789]|2\.155\.36)|(?:78\.172\.1|09\.127\.)86|88\.229\.115)|2(?:1(?:7\.118\.(?:83|90)|3\.87\.74)|23\.252\.1(?:6[012459]|7[01345])|02\.152\.243|7\.100\.28)|8(?:5\.(?:26\.(?:1(?:6[45]|8[46])|2(?:3[12345]|41))|115\.248)|3\.149\.(?:[89]|4[4567]|38?|21))|58\.64\.194|41\.254\.1|61\.19\.66)\.[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 # 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 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 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 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 # 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