Bug 10175 - pidentd lookups reports root user when using rlogin.
pidentd lookups reports root user when using rlogin.
Status: CLOSED WORKSFORME
Product: Red Hat Linux
Classification: Retired
Component: pidentd (Show other bugs)
6.1
i386 Linux
medium Severity medium
: ---
: ---
Assigned To: Trond Eivind Glomsrxd
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2000-03-14 16:56 EST by Jesper Brouer
Modified: 2008-05-01 11:37 EDT (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2000-05-14 17:05:04 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Jesper Brouer 2000-03-14 16:56:35 EST
pidentd lookups reports root user when using rlogin.

This problem only occurs on RedHat6.1, it works fine on RedHat6.0.


When I use rlogin to login on an remote server, pidentd reports USERID as
"root".  If I use telnet the USERID is correct.

syslog when using rlogin: (fx: rlogin 10.0.0.229)
-------------------------
Mar 14 22:43:24 host2 in.identd[6011]: reply to 10.0.0.229: 1023 , 513 :
USERID : UNIX :root

syslog when using telnet: (fx: telnet 10.0.0.229)
-------------------------
Mar 14 22:49:42 host2 in.identd[6045]: reply to 10.0.0.229: 1833 , 23 :
USERID : UNIX :hawk


I have tried to upgrade and "downgrade" to different version of pidentd.

I have tried the following rpm packages on both RedHat6.1 and RedHat6.0:
 ((XX) <== specifices which RH version the rpm originally belongs to)

   pidentd-2.8.5-3  (RedHat6.0)
   pidentd-3.0.7-5  (RedHat6.1)
   pidentd-3.0.10-2 (RedHat6.2beta)

All my tests concludes that any version of pidentd on RedHat6.0 works
perfectly, and none of the versions works on RedHat6.1.
Comment 1 Jeff Johnson 2000-05-14 17:05:59 EDT
I don't believe this is a pidentd problem, as it "works for me" when I
rlogin localhost and check /var/log/messages (Red Hat 6.2/sparc with
pidentd-3.0.10-5). You might want to check /etc/pam.d/rlogin, as I dimly
remember a last minute change there. FWIW, here's what I have:

#%PAM-1.0
auth       sufficient   /lib/security/pam_rhosts_auth.so
auth       required     /lib/security/pam_securetty.so
auth       required     /lib/security/pam_pwdb.so shadow nullok
auth       required     /lib/security/pam_nologin.so
account    required     /lib/security/pam_pwdb.so
password   required     /lib/security/pam_cracklib.so
password   required     /lib/security/pam_pwdb.so shadow nullok use_authtok
session    required     /lib/security/pam_pwdb.so
Comment 2 Christoffer Hall-Frederiksen 2000-06-30 16:40:50 EDT
It has nothing to do with PAM!

When I rlogin to a host, the host throws a ident-lookup back 
at the machine I come from. If I use rlogin I get the answer
'root' not my username. But if I use telnet I get the right 
result. So the problem must be the suid-bit on rlogin.  It must 
be a uid,euid problem since all identd does is lookup the uid
of whoever owns the tcp-connection.


--
  Christoffer
Comment 3 Christoffer Hall-Frederiksen 2000-06-30 19:24:13 EDT
OK .... mystery solved!

The problem is as follows:

pidentd wants the uid of a connection. It looks up i /proc/net/tcp
to see who owns the given connection. The problems is that /proc/net/tcp
lists the euid and not the uid. Since rlogin is suid-root it gets euid 0
and that is why identd return root and not the real name. 

Now the big one ... how to solve it ;) I'ev asked on linux-kernel
if euid is really what should be listed in /proc/net/tcp.

--
  Christoffer (hall@diku.dk)



Note You need to log in before you can comment on or make changes to this bug.