<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Computer Support &#187; spammer</title>
	<atom:link href="http://www.xiitec.com/blog/tag/spammer/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.xiitec.com/blog</link>
	<description></description>
	<lastBuildDate>Wed, 30 Dec 2009 08:40:28 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Identifying Local Problem Users</title>
		<link>http://www.xiitec.com/blog/2009/02/25/identifying-local-problem-users/</link>
		<comments>http://www.xiitec.com/blog/2009/02/25/identifying-local-problem-users/#comments</comments>
		<pubDate>Wed, 25 Feb 2009 17:35:23 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Sendmail]]></category>
		<category><![CDATA[local]]></category>
		<category><![CDATA[spam]]></category>
		<category><![CDATA[spammer]]></category>

		<guid isPermaLink="false">http://www.xiitec.com/blog/?p=252</guid>
		<description><![CDATA[Spammers hide their true identities. You want to provide as much   information as possible to track down spammers that use your system.

Run the auth service (identd) to provide account information that cannot be hidden   by masquerading or other email techniques.
The IDENT protocol is defined in RFC 1413, Identification Protocol. The protocol [...]]]></description>
			<content:encoded><![CDATA[<p>Spammers hide their true identities. You want to provide as much   information as possible to track down spammers that use your system.</p>
<p><span id="more-252"></span></p>
<p>Run the auth service (identd) to provide account information that cannot be hidden   by masquerading or other email techniques.</p>
<p>The IDENT protocol is defined in RFC 1413, Identification Protocol. The protocol provides a means   for determining the identity of the user who initiated a network connection. The   identd daemon implements the IDENT protocol on   Unix systems. Run identd to provide additional   information to remote system administrators to aid them in tracking down the   cause of problems. In the context of sendmail, this information might help them   track down a spammer, if one sets up shop on your system. For example, assume a   user on a system running identd tries to   perpetrate a forgery by issuing the SMTP EHLO command using a false   hostname:</p>
<pre>ehlo www.ora.com

250-rodent.wrotethebook.com Hello IDENT:r+9Gemj2wip8fAJDU8kDZlyUiReTZjYc@chef.

wrotethebook.com [192.168.0.8], pleased to meet you</pre>
<p>When the remote system, in this case <em>rodent.wrotethebook.com</em>, responds to the EHLO command, it   ignores the forged <em>www.ora.com</em> hostname. Instead it says &#8220;hello&#8221; to the   host it finds at the connection address 192.168.0.8. It responds with the   hostname associated with that address, which is <em>chef.wrotethebook.com</em>,   and the identification information provided by the identd service running on <em>chef</em>. This information   is propagated in the mail in a Received: header, as shown below:</p>
<pre>Received: from www.ora.com

(IDENT:r+9Gemj2wip8fAJDU8kDZlyUiReTZjYc@chef [192.168.0.8])

by rodent.wrotethebook.com (8.12.9/8.12.9) with ESMTP id gB4N6T301540

for &lt;craig@rodent.wrotethebook.com&gt;; Wed, 4 Dec 2002 18:06:40 -0500</pre>
<p>The information provided by the identd service running on the host at 192.168.0.8   identifies the user who sent the mail. The string provided by identd, r+9Gemj2wip8fAJDU8kDZlyUiReTZjYc in the   example, is not a simple username. In this case, the identd information   is encrypted.</p>
<p>identd monitors port 113. When   identd is running, the remote server can request   information about any TCP connections from your server to the remote server by   sending the source and destination port pair to the identification server. identd then responds by sending either the requested   information associated with the connection or an error. This information allows   remote mail servers to put a real username on the Received: header in   incoming email. People who abuse the mail system do not like to have their real   usernames known. Providing their names to their victims makes it hard for them   to stay in business. Unfortunately, many firewalls block port 113 because the   security people fear that too much information is given out by the identd service. This fear is unfounded when the identd information is encrypted, as it is in this   example. However, many security administrators prefer to play it safe, so they   block the port. If it is blocked at your firewall, you might not be able to use   identd.</p>
<p>The IDENT protocol is also known by the service name   auth, as this grep of <em>/etc/services</em> shows:</p>
<pre>$ <strong>grep ^auth /etc/services</strong>

auth    113/tcp    ident   # User Verification</pre>
<p>Most sendmail administrators prefer to call the service <em>ident</em> or identd to avoid confusing it with   the ESMTP AUTH keyword.   Additionally, identd is not an authentication   tool—it is an auditing tool. Real spammers, who control their own systems, can   put anything they want in an identd response, so   the response cannot be trusted for real authentication. You, however, are not a   spammer. You run identd to provide additional   audit trail information to track down users who abuse your system.</p>
<p>Many Unix systems run identd   on-demand from inetd or xinetd. The following line added to <em>inetd.conf</em> would implement &#8216;blocking spam with the access database&#8217;<a href="0596004710_sendmailckbk-chp-6-sect-1.html#sendmailckbk-CHP-6-SECT-1"></a> on a system using inetd and an on-demand   identd service:</p>
<pre>auth stream tcp nowait nobody /usr/sbin/in.identd in.identd -t120</pre>
<p>This, of course, is just an example. You would need to   customize the program pathname and the command-line arguments to fit your system   and your needs. You should also check the identd   manpage for options that prevent the user from disabling identd.</p>
<p>Some other Unix systems run identd as part of the system startup process. Our   sample Red Hat Linux system is an example. A chkconfig command adds identd to the boot process, and a service command starts identd immediately:</p>
<pre># <strong>chkconfig --list identd</strong>

identd          0:off   1:off   2:off   3:off   4:off   5:off   6:off

# <strong>chkconfig --level 35 identd on</strong>

# <strong>chkconfig --list identd</strong>

identd          0:off   1:off   2:off   3:on    4:off   5:on    6:off

# <strong>service identd start</strong>

Generating ident key:                                      [  OK  ]

Starting identd:                                           [  OK  ]</pre>
<p>The first chkconfig command   shows that identd is not included in the boot   process on this sample Linux system. The second chkconfig command adds it to the startup process for   run levels 3 and 5—the run levels associated with networked, multiuser operation   on most Linux systems. The final chkconfig   command shows the effect of this change. Of course, there is no reason to reboot   the system just to start identd, so the   service command is used to run the identification service   immediately.</p>
<p>This is the first time that identd has been started on this server. Notice the   first line of output from the service command. It   tells us that a key is being generated for identd. This key is used to encrypt the information   sent to the remote system. The administrators of the remote system cannot   decrypt the information because they do not have the key. If they suspect a   problem, they must send you the encrypted string, which you can then decrypt   using the <em>/etc/identd.key</em> file and the idecrypt command. The   information from the identd server is encrypted   for security reasons. Security people dislike identd because it exposes information about systems and   users that can be misused by spammers and intruders. Encrypting the identd response allows you to run the identification   daemon without any significant security risks.</p>
<p>For example, the Received: header shown earlier in   this section displays the 32 character, BASE64 encoded string   r+9Gemj2wip8fAJDU8kDZlyUiReTZjYc that the remote system received from   our sample system in response to the IDENT query. This does not provide any   information that can be exploited by a spammer or an intruder, but it can be   used by you to obtain information about the local user who sent the mail. When   the remote system administrator contacts you with a problem report, obtain the   32-byte string, enclose it in square brackets, and decode it with the idecrypt command, as shown:</p>
<pre># <strong>idecrypt </strong>

<strong>[r+9Gemj2wip8fAJDU8kDZlyUiReTZjYc] </strong>

Wed Dec  4 17:00:24 2002 500 192.168.0.8 1029 192.168.0.3 25  <em>Ctrl-D </em></pre>
<p>The decoded string provides:</p>
<ul>
<li>The date and time the connection was made</li>
<li>The UID of the user who initiated the connection (500 in this   example)</li>
<li>The IP address of the source of the connection   (192.168.0.8)</li>
<li>The source port (1029)</li>
<li>The destination IP address (192.168.0.3)</li>
<li>The destination port of the connection (25, which is the SMTP   port)</li>
</ul>
<p>All of this information is useful in tracking who is abusing   your system. However, identd does have major   limitations. It only returns a useful UID if the user actually logs into your   system. If it is being misused in some other way, the information provided might   not be useful. Additionally, running identd adds   some processing overhead to each piece of mail. As with most things, identd has both pluses and minuses.</p>
<p>On our sample Red Hat Linux system, the identd service   is preconfigured in the <em>/etc/identd.conf</em> file. Additionally, the   identd service can be configured from the command line using   command-line options. On a Red Hat Linux system, the identd   command-line options used during startup are defined as values for the   IDENTDOPTS variable in the <em>/etc/sysconfig/identd</em> file. See the   identd manpage for specifics on the <em>identd.conf</em> configuration   commands and the command-line options.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.xiitec.com/blog/2009/02/25/identifying-local-problem-users/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
