// COMPLETE THREAD

Hardening lists against spam attacks

10 expanded posts ยท every known parent and child

NODE 9a189e43Hardening lists against spam attacks
A stopgap measure....
 Perhaps an X-header that changes weekly, monthly, whatever.
Is there a way to configure the list software to reject a message
that doesn't have the X-header? This won't stop all spam, but it'd
put a damper on a bunch of it. A lot of spammers don't even know
what an X-header is (though a lot do), much less how to put one
in a message.
 Lists are one of the last havens from spam, and though spam seems
to be the grafitti and billboards of the future, I don't feel
particularly amenable to having to waste time hitting the "D" key. 

jamie
------------------------------------------------------------------------------
jamie@comet.net |          Comet.Net		|  Send empty message 
		|     Charlottesville, Va.  	|  to pgpkey@comet.net 
		|        (804)295-2407		|  for pgp public key.
	        |     http://www.comet.net	|
         "Information wants to be $1.98." -I dunno who said it.
------------------------------------------------------------------------------
NODE 4f252bfd"Cypher punks" display arrogance and stupidity in the new year
jamie@comet.net (jamie dyer) writes:

>  Perhaps an X-header that changes weekly, monthly, whatever.
> Is there a way to configure the list software to reject a message
> that doesn't have the X-header? This won't stop all spam, but it'd
> put a damper on a bunch of it. A lot of spammers don't even know
> what an X-header is (though a lot do), much less how to put one
> in a message.

Dr. Grubor has suggested that homosexuals be required to identify themselves
in their e-mail headers.  Certainly, cocksucker John Gilmore is free to set
up his private mailing list so that only submissions with "X-Homosexual: YES"
or "X-Sexual-Preferences: GAY" get distributed. Problem is, if we get the
repeat of the recent mail loop attack, when the ASALA/Earthweb terrorist Ray
"Arsenic" Arachelian was re-submiting to the mailing list the articles
that were already distributed with most of the headers intact, the "X-Gay: YES"
header would also be intact on Arachelian's spam. Ray is truly despicable.
You can complain about Ray's forgery, spam, libel, and other net-abuse to
his bosses at Earthweb, LLC: Jack Hidary <jack@earthweb.com>, Murray Hidary
<murray@earthweb.com>, and Nova Spivack <nova@earthweb.com>.

I'm also amused by Jamie's suggestion that most people don't know what
an X-header is. It reminds me how I made a typo in the word 'group' and
some asshole "cypher punk" went into a long rant about how he knows how
to use the grep utility under Unix, and I allegedly don't even know what
grep is. First, the punks should consider themselves lucky that the owners
of the equipment they play with pay them salaries for messing around with
software so user-unfriendly that some arrogant punk needs to be paid to
administer it (and the punk is sometimes a convicted felon, like Randall
Schwartz). Second, I happen to know what grep is (I teach Unix courses
occasionally), and I don't consider this a sign of great intelligence.

By the way, 'grep' stands for 'g[globa]/r[egular ]e[xpression]/p[rint].

---

Dr.Dimitri Vulis KOTM
Brighton Beach Boardwalk BBS, Forest Hills, N.Y.: +1-718-261-2013, 14.4Kbps
NODE 322cd34fRe: "Cypher punks" display arrogance and stupidity in the new year
On Wed, 1 Jan 1997, Dr.Dimitri Vulis KOTM wrote:

> jamie@comet.net (jamie dyer) writes:
> 
> >  Perhaps an X-header that changes weekly, monthly, whatever.
> > Is there a way to configure the list software to reject a message
> > that doesn't have the X-header? This won't stop all spam, but it'd
> > put a damper on a bunch of it. A lot of spammers don't even know
> > what an X-header is (though a lot do), much less how to put one
> > in a message.
> 
> Dr. Grubor has suggested that homosexuals be required to identify themselves
> in their e-mail headers.  Certainly, cocksucker John Gilmore is free to set
> up his private mailing list so that only submissions with "X-Homosexual: YES"
> or "X-Sexual-Preferences: GAY" get distributed. Problem is, if we get the
> repeat of the recent mail loop attack, when the ASALA/Earthweb terrorist Ray
> "Arsenic" Arachelian was re-submiting to the mailing list the articles
> that were already distributed with most of the headers intact, the "X-Gay: YES"
> header would also be intact on Arachelian's spam. Ray is truly despicable.
> You can complain about Ray's forgery, spam, libel, and other net-abuse to
> his bosses at Earthweb, LLC: Jack Hidary <jack@earthweb.com>, Murray Hidary
> <murray@earthweb.com>, and Nova Spivack <nova@earthweb.com>.
> 

Is John Gilmore an admitted Gay, or does he try and cover it up?

> I'm also amused by Jamie's suggestion that most people don't know what
> an X-header is. It reminds me how I made a typo in the word 'group' and
> some asshole "cypher punk" went into a long rant about how he knows how
> to use the grep utility under Unix, and I allegedly don't even know what
> grep is. First, the punks should consider themselves lucky that the owners
> of the equipment they play with pay them salaries for messing around with
> software so user-unfriendly that some arrogant punk needs to be paid to
> administer it (and the punk is sometimes a convicted felon, like Randall
> Schwartz). Second, I happen to know what grep is (I teach Unix courses
> occasionally), and I don't consider this a sign of great intelligence.
> 
> By the way, 'grep' stands for 'g[globa]/r[egular ]e[xpression]/p[rint].
> 

Ah yes Professor, but then there is Egrep with the pipe
and Fgrep without the pipe.  How about explaining the difference
between the use of those buggers?
NODE c8650e8bRe: "Cypher punks" display arrogance and stupidity in the new year
aga <aga@dhp.com> writes:
> > You can complain about Ray's forgery, spam, libel, and other net-abuse to
> > his bosses at Earthweb, LLC: Jack Hidary <jack@earthweb.com>, Murray Hidary,
> > <murray@earthweb.com>, and Nova Spivack <nova@earthweb.com>.
>
> Is John Gilmore an admitted Gay, or does he try and cover it up?

The way Peter "INN Saboteur" Burger tries to cover up his sexual perversions?

Much of the time on the Internet, when some asshole pulls plugs and tries to
silence dissent, he turns out to be Gay. In particular, King John Lack-Clue
Gilmore, the Supreme and Absolute 12" Ruler of the "cypher punks", is an
effeminate, limp-wristed, self-admitted and -exposed cocksucking bitch.

I had lunch with Gilmore once. He slurps rather disgustingly when he eats.
I suppose he slurps the same way when he sucks big dicks in San Francisco.

> > By the way, 'grep' stands for 'g[globa]/r[egular ]e[xpression]/p[rint].
>
> Ah yes Professor, but then there is Egrep with the pipe
> and Fgrep without the pipe.  How about explaining the difference
> between the use of those buggers?

fgrep runs faster because it doesn't deal with regular expressions like *. If
you're searching for a fixed string ('aga' rather than 'a.*a'), it can save
you a few milliseconds. egrep understand slightly more complicated regular
expressions that regular grep. E.g. egrep "xy?z" file will match xyz and xz,
but not xyyz (zero or one occurrences).

Here's a neat trick: if you want to list a file with line numbers, try:

grep -n "^" file

Of course this is too technical for the "cypher punks".

By the way the word "bugger" comes from the "Bulgaria". In the Middle Ages,
many denizens of the Balkans were in sect that advocated anal intercourse as
a means of birth control. Armenians too are stereotyped in both Russian and
Turkish cultures as a nation of perverts, always ready to bend over for one
another or to fellate a farm animal.

---

Dr.Dimitri Vulis KOTM
Brighton Beach Boardwalk BBS, Forest Hills, N.Y.: +1-718-261-2013, 14.4Kbps
NODE 5ffcb23aRe: "Cypher punks" display arrogance and stupidity in the new year
On Wed, 1 Jan 1997, Dr.Dimitri Vulis KOTM wrote:
> ... Much of the time on the Internet, when some asshole pulls 
> plugs and tries to silence dissent, he turns out to be Gay....

How true!  The pattern seems to applt to most of the censors
operating from the sewer known as lava.net .
 
Jai Maharaj
Om Shanti
NODE 89874eebRe: "Cypher punks" display arrogance and stupidity in the new year
Dr. Jai Maharaj wrote:
> 
> On Wed, 1 Jan 1997, Dr.Dimitri Vulis KOTM wrote:
>
>> ... Much of the time on the Internet, when some asshole pulls
>> plugs and tries to silence dissent, he turns out to be Gay....
> 
> How true!  The pattern seems to applt to most of the censors
> operating from the sewer known as lava.net .
> 
> Jai Maharaj
> Om Shanti


  Well--I could care less about their sexual preference but what
I do care about it proper justice/vengence.  When someone pulls
a users plug for anything short of system cracking they need
to be dealt with in such a way offline that the rest of the would
be censors are afraid to go to bed at night.  

   Quite seriously--and I believe we should move that discussion 
to one of the secure lists and perhaps even raise a bit of money 
to make a very striking example of a plug puller--I personally 
despise them in a manner that cannot even be put into words.

                          Steve
NODE dbeb2edbRe: "Cypher punks" display arrogance and stupidity in the new year
Dr.Dimitri Vulis KOTM wrote:
> 
> Here's a neat trick: if you want to list a file with line numbers, try:
> 
> grep -n "^" file

cat -n works faster.

> Of course this is too technical for the "cypher punks".

	- Igor.
NODE f985ac87Re: "Cypher punks" display arrogance and stupidity in the new year
ichudov@algebra.com (Igor Chudov @ home) writes:

> Dr.Dimitri Vulis KOTM wrote:
> >
> > Here's a neat trick: if you want to list a file with line numbers, try:
> >
> > grep -n "^" file
>
> cat -n works faster.

Did you time it?

> > Of course this is too technical for the "cypher punks".
>
> 	- Igor.


---

Dr.Dimitri Vulis KOTM
Brighton Beach Boardwalk BBS, Forest Hills, N.Y.: +1-718-261-2013, 14.4Kbps
NODE 9e83e72aRe: "Cypher punks" display arrogance and stupidity in the new year
Dr.Dimitri Vulis KOTM wrote:
> 
> ichudov@algebra.com (Igor Chudov @ home) writes:
> 
> > Dr.Dimitri Vulis KOTM wrote:
> > >
> > > Here's a neat trick: if you want to list a file with line numbers, try:
> > >
> > > grep -n "^" file
> >
> > cat -n works faster.
> 
> Did you time it?
> 

Yes, I wrote a prog that quickly prints a specified number of lines
(see below). Then I piped the output of that program to cat -n and
grep, respectively, and here's what I got:

manifold::~/tmp==>./a.out 1000000 | /usr/bin/time cat -n > /dev/null
1.32user 0.05system 0:01.62elapsed 84%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (46major+17minor)pagefaults 0swaps

manifold::~/tmp==>./a.out 1000000 | /usr/bin/time grep -n '^' > /dev/null
19.75user 0.04system 0:20.71elapsed 95%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (88major+26minor)pagefaults 0swaps


The difference is about fifteen times.

	- Igor.


#include <stdio.h>

main( int argc, char *argv[] )
{

  int n = atoi( argv[1] );

  for( ; n; n-- )
    putchar( '\n' );
}
NODE 423f62daRe: "Cypher punks" display arrogance and stupidity in the new year
ichudov@algebra.com (Igor Chudov @ home) writes:

> Dr.Dimitri Vulis KOTM wrote:
> >
> > ichudov@algebra.com (Igor Chudov @ home) writes:
> >
> > > Dr.Dimitri Vulis KOTM wrote:
> > > >
> > > > Here's a neat trick: if you want to list a file with line numbers, try:
> > > >
> > > > grep -n "^" file
> > >
> > > cat -n works faster.
> >
> > Did you time it?
> >
>
> Yes, I wrote a prog that quickly prints a specified number of lines
> (see below). Then I piped the output of that program to cat -n and
> grep, respectively, and here's what I got:
>
> manifold::~/tmp==>./a.out 1000000 | /usr/bin/time cat -n > /dev/null
> 1.32user 0.05system 0:01.62elapsed 84%CPU (0avgtext+0avgdata 0maxresident)k
> 0inputs+0outputs (46major+17minor)pagefaults 0swaps
>
> manifold::~/tmp==>./a.out 1000000 | /usr/bin/time grep -n '^' > /dev/null
> 19.75user 0.04system 0:20.71elapsed 95%CPU (0avgtext+0avgdata 0maxresident)k
> 0inputs+0outputs (88major+26minor)pagefaults 0swaps
>
>
> The difference is about fifteen times.
>
> 	- Igor.
>
>
> #include <stdio.h>
>
> main( int argc, char *argv[] )
> {
>
>   int n = atoi( argv[1] );
>
>   for( ; n; n-- )
>     putchar( '\n' );
> }

Have you got nothing better to do?  I take this as a hint that we should get
back to the MJ project. Meanwhile, here's an equally useful program - run
it at MS DOS prompt to leave it resident, then type the names of my least
favorite "cypher punks" to any program that uses INT 16 to read from kbd.

;;; cpunx.asm
cseg       segment
           assume      cs:cseg,ds:cseg
           org         100h
entry:     call        start
           org         100h
state      db          1 dup(?) ;3 bytes
sdi        dw          1 dup(?)

str1       label       byte
           db          'Gilmore',0
           db          'Arachelian',0
str2mask equ           003h ; 0..3
str2       label       byte
           db          ' (fart)',0
           db          ' (spit)',0
           db          ' (barf)',0
           db          ' (blech)',0

gett       proc        near
           push        ds
           xor         di,di
           mov         ds,di
           mov         di,ds:[46ch] ;timer
           pop         ds
           ret
gett       endp

i16:       cmp         ah,0
           jz          ah0
           db          0eah ; jmp
o16oa      dw          ?
o16sa      dw          ?
ah0:       push        ds
           push        cs
           pop         ds
           cmp         state,4
           jnz         st4x
           push        di
           mov         di,sdi
           mov         al,ds:[di] ;ah=scancode=funccode=0
           inc         sdi
           cmp         al,0
           jz          st1a ;done stacking
           jmp         i16dix
st4x:      pushf
           db          09ah ; call far
o16ob      dw          ?
o16sb      dw          ?
           cmp         state,0
           jnz         st1
           push        di
           mov         di,offset str1
st0a:      cmp         al,ds:[di]
           jz          st0b
st0c:      inc         di
           cmp         byte ptr ds:[di],0
           jnz         st0c
           inc         di
           cmp         di,offset str2
           jnz         st0a
           jmp         short i16dix
st0b:      inc         di
           mov         sdi,di
           jmp         short i16ist ;state=1
st1:       cmp         state,1
           jnz         st2
           push        di
           mov         di,sdi
           cmp         al,ds:[di]
           jnz         st1a
           inc         di
           cmp         byte ptr ds:[di],0
           jnz         st1b
           inc         state ;2
           call        gett
st1b:      mov         sdi,di
           jmp         short i16dix
st1a:      mov         state,0
           jmp         short i16dix
st2:       cmp         state,2
           jnz         st3
           push        di
           call        gett
           xor         di,sdi
           test        di,0FFC0h ;around 3 seconds
           jz          i16dix
           inc         state ;3
;          jmp         short i16dix
           pop         di          ;fall thru
st3:       cmp         al,'A' ;state=3
           jae         i16x ;waiting for a delimiter
           push        di
           push        ax
           mov         al,byte ptr sdi
           and         al,str2mask
           mov         di,offset str2
st3a:      dec         al
           js          st3b
st3c:      inc         di
           cmp         byte ptr ds:[di],0
           jnz         st3c
           inc         di
           jmp         st3a
st3b:      mov         sdi,di
           pop         ax      ;state=4
i16ist:    inc         state
i16dix:    pop         di
i16x:      pop         ds
           iret
i16end:
minst      db          'Installed.',13,10
minstl     equ         $-minst
malr       db          'Already in memory.',13,10
malrl      equ         $-malr

start:     mov         state,0
           xor         ax,ax
           mov         ds,ax
           mov         ax,word ptr ds:[16h*4]
           cmp         ax,offset i16 ;already resident?
           jz          skp
           mov         cs:o16oa,ax
           mov         cs:o16ob,ax
           mov         ax,word ptr ds:[16h*4+2]
           mov         cs:o16sa,ax
           mov         cs:o16sb,ax
           cli
           mov         word ptr ds:[16h*4],offset i16
           mov         word ptr ds:[16h*4+2],cs
           sti
           mov         dx,offset minst
           mov         cx,minstl
           push        cs
           pop         ds
           mov         bx,2
           mov         ah,40h ;write message to stderr
           int         21h
           mov         dx,offset i16end
           int         27h

skp:       push        cs
           pop         ds
           mov         dx,offset malr
           mov         cx,malrl
           mov         bx,2
           mov         ah,40h ;write message to stderr
           int         21h
           int         20h
cseg       ends
           end         entry

Given that "cypher punks" don't write code, they wouldn't know how
to assemble it either... Here's a COM file:

table
 !"#$%&'()*+,-./0123456789:;<=>?
@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
begin 666 cpunx.com
MZ!L!1VEL;6]R90!!<F%C:&5L:6%N " H9F%R="D ("AS<&ET*0 @*&)A<F8IM
M " H8FQE8V@I !XS_X[?BSYL!!_#@/P = 7J     !X.'X ^  $$=1)7BSX!M
M 8H%_P8! 3P =%'IDP"<F@    " /@ ! '4>5[\# 3H%= ]'@#T =?I'@?\6M
M 77OZV]'B3X! >MD@#X  0%U(U>+/@$!.@5U$T> /0!U!_X&  'HA_^)/@$!M
MZT7&!@ ! .L^@#X  0)U$U?H;_\S/@$!]\? _W0I_@8  5\\07,A5U"@ 0$DM
M [\6 ?[(> E'@#T =?I'Z_.)/@$!6/X&  %?'\]);G-T86QL960N#0I!;')EM
M861Y(&EN(&UE;6]R>2X-"L8&  $ ,\".V*%8 #U" 70S+J-( 2ZC:@&A6@ NM
MHTH!+J-L ?K'!E@ 0@&,#EH ^[K^ ;D,  X?NP( M$#-(;K^ <TG#A^Z"@*YM
+% "[ @"T0,TAS2  M
 M
end

If your DOS prompt is so screwed up that it doesn't use INT 16,
here's a test program to echo keyboard input (ESC to exit):

begin 666 geti16.com
0,.3-%H#\ 70&M [-$.OQP\PRM
 M
end

---

Dr.Dimitri Vulis KOTM
Brighton Beach Boardwalk BBS, Forest Hills, N.Y.: +1-718-261-2013, 14.4Kbps