[LWN Logo]
[Timeline]
Date: Wed, 14 Feb 2001 13:27:22 -0500 (EST)
From: William Stearns <wstearns@pobox.com>
To: Matt Fearnow <matt@sans.org>, Lara Moncrief <Laragiac@aol.com>,
Subject: Ramenfind Ramen detection and removal tool, V0.4

  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.
  Send mail to mime@docserver.cac.washington.edu for more info.

---1463747317-1037663283-982175242=:1102
Content-Type: TEXT/PLAIN; charset=US-ASCII

Good day, all,
	Attached is the latest version of the Ramenfind detection and
removal tool.  V0.3 was supposed to have been the final release, but a new
Ramen variant showed up.
	The goals of the tool are:

        - It should be a shell script so it can be run from a single
floppy linux if the user chooses.
        - It should use standard utilities on a Redhat Linux system.
        - It should allow for either detection or detection and removal of
the worm.  By default, it should only detect and perform no action.
        - It should run as a non-root user, invoking sudo as necessary.
        - The user should be given the chance to confirm each command
before it is run.
        - The script should provide an option to archive the ramen files
for later analysis.
	- It should check for needed support utilities.

	Changes from version 0.3:
- Ramenfind now handles a new ramen variant, which:
	- creates /usr/sbin/update, which kills off the trojan lpd and
restarts it.
	- doesn't remove index.html's (no changes needed to Ramenfind).
	- adds a new crontab entry: run update every minute of the first
day of the month.
	- adds a new crontab entry: nuke synscan every minute of 1am.
	- mails /etc/shadow off to "chicha" and "libero" accounts and wipe
entries from maillog.
	- runs "2", which appears to mail off notices to two email
accounts (at least one of which has been disabled; no word on the other).
	- runs /usr/bin/lpd on future boots from rc.sysinit.
	- moves netstat to /usr/lib/ldlibns.so .
	- replaces netstat with a wrapper c app that discards certain
lines:
		"/usr/lib/ldlibns.so {parameters} | grep -v ftp | \
		grep -v 28593 | grep -v 212.102 | grep -v b92 | \
		grep -v 147.91 | grep -v grep | grep -v ldlibns | \
		grep -v -- -i"
	- moves ps to /usr/lib/ldlibps.so .
	- replaces ps with a wrapper c app that discards certain lines:
		"/usr/lib/ldlibps.so {parameters} | grep -v tail | \
		grep -v ipsc | grep -v synscan | grep -v .sh | \
		grep -v grep | grep -v ldlibps | grep -v -- -i"
	- moves /bin/login to /usr/lib/ldliblogin.so and replaces it with
a trojan.
	- copies "td" to /usr/bin/lpd (normal path is /usr/sbin/lpd) and
runs it.  td is a Stacheldracht agent.
	- makes minor changes to scan.sh (no changes needed to Ramenfind).

- Handle issues of using ps in Ramenfind when ps may have been trojanized.

        This, and any future versions of this script will soon be
available at the following URL's:

http://www.sans.org/y2k/ramen.htm
http://www.ists.dartmouth.edu/IRIA/knowledge_base/tools/ramenfind.html
http://www.linuxlock.org/features/ramenfix.html

	Many thanks to all who have contributed to this tool.  In
particular, thanks to Francisco for providing this new variant, Max Vision
for his anlysis of the original Ramen and Dave Dittrich for his additional
analysis of Ramen2.
	If you have problems, suggestions, or requests, please contact me
at: William Stearns <wstearns@pobox.com>

	MD5sums for this tool:
49330da7a84b67a694830d3cf7948106  ramenfind.v0.4
47ec41edc981a66df35e1dcaec2fa47c  ramenfind.v0.4.gz

	Cheers,
	- Bill

---------------------------------------------------------------------------
	"Ironically, DeCSS was published on the Web by a U.S. court (as
evidence) as a result of legal action against people who posted DeCSS on
the Web.  Oops."
	-- Sandy McMurray, readme@passport.ca
	http://canoe.ca/TechNews/column_readme.html
--------------------------------------------------------------------------
William Stearns (wstearns@pobox.com).  Mason, Buildkernel, named2hosts,
and ipfwadm2ipchains are at:                http://www.pobox.com/~wstearns
LinuxMonth; articles for Linux Enthusiasts! http://www.linuxmonth.com
--------------------------------------------------------------------------

---1463747317-1037663283-982175242=:1102
Content-Type: APPLICATION/x-gzip; name="ramenfind.v0.4.gz"
Content-Transfer-Encoding: BASE64
Content-ID: <Pine.LNX.4.30.0102141327220.1102@sparrow.websense.net>
Content-Description: ramenfind.v0.4.gz
Content-Disposition: attachment; filename="ramenfind.v0.4.gz"

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
BkQGL5sxZIsAW1qt/wFUtGoTxI8AAA==
---1463747317-1037663283-982175242=:1102--