Newsgroup: it.comp.sicurezza.unix
Titolo: discrepanze?

Allora:
[buttha: ~]$ grep -v ^# /etc/inetd.conf
ident   stream  tcp  wait   nobody /usr/sbin/in.identd in.identd -w -t120
nntp    stream  tcp     nowait  news    /usr/sbin/tcpd /usr/sbin/leafnode
telnet	stream	tcp	nowait	nobody	/usr/sbin/tcpd /usr/local/bin/alshell
in piu' ho postfix, che gira con un suo uid/gid apposito: postifix.
Insomma: non c'e' niente che giri come root.
Domanda:
perche`, nmap, mi rileva questo:
[buttha: ~]$ nmap -sT -I -F 127.0.0.1 
Starting nmap V. 2.3BETA6 by Fyodor (
fyo...@dhp.com
, 
www.insecure.org/nmap/
)
Interesting ports on localhost (127.0.0.1):
Port    State       Protocol  Service         Owner
23      open        tcp       telnet                  root
25      open        tcp       smtp                    root
113     open        tcp       auth                    nobody
119     open        tcp       nntp                    root
515     open        tcp       printer                 root
6000    open        tcp       X11                     root
C'e' qualche discrepanza, oppure devo interpretare in modo diverso l'Owner?
Forse che l'owner indica chi ha mandato in esecuzione il servizio, ma non i
privilegi di tale servizio?
ciao
Buttha
-- 
* Per rispondere in email rimuovere una i dall'indirizzo
* RSA fingerprint: 7772 5C72 7392 538B  34B8 A189 13BC 867A
  DH/DSS  "      : 3CAD 35F0 1D5D F46B 7D95  33F8 5784 B463 A328 7B05
* 
http://members.xoom.it/buttha/

6000    open        tcp       X11                     root
Questo e` X, idem.
-- 
ciao, | [Per rispondere togli "toglimi" dal mio indirizzo.]
Marco | * The Internet is full. Go away.  -- Joel Furr *

 Insomma: non c'e' niente che giri come root.
ps aux | grep inetd
Prova a confrollare con fuser che processo "binda" la porta prima che il
servizio sia in uso: cio' RICHIEDE un processo che giri come root,
mentre per utilizzale la connessione, una volta stabilita puo' farlo
quasiasi utente.
-- 
Live free or die.  --  Debian/GNU/Linux die hard.

 Questo e` X, idem.
si si :)
Quello che non mi tornava, erano  i possessori dei processi: nmap mi rileva
dei root, ma sotto inetd i servizi sono chiamati con altri gid/uid.


 quasiasi utente.
dimmi se ho ben capito: inetd dovrebbe essere quello che fa il bind della porta, e per quello, il servizio, sembra essere utilizzato da root.
In realta', quando qualcuno usa il servizio, se ne occupa inetd (in particolar modo tcpd), e in quel momento i privilegi del servizio sono quelli settati in inetd.conf. Giusto?
Cmq, ecco i risultati:
[root: /home/buttha]# fuser -n tcp 23
23/tcp:                264
[root: /home/buttha]# ps -ax | grep 264
  264 ?        S      0:00 inetd
che mi paiono confortanti :)


dei root, ma sotto inetd i servizi sono chiamati con altri gid/uid.
Nessuno dei due e` lanciato da inetd.
X gira come root perche` deve accedere all'hardware, lpd perche` deve
fare il binding della porta 515.


 che mi paiono confortanti :)
Appunto....


>6000    open        tcp       X11                     root
MdI> Questo e` X, idem.
non tutti se non erro, mi ricordo di un vecchio exploit che collegandosi
alla 6000 [da remoto] di una linux-box, la trasformava in un ottimo
key-logger.
fritz

key-logger.
Ne dubito, a meno che tu non dia esplicitamente accesso al remoto.


 tcpd... beh, errore di sbaglio :)
Facci attenzione, a seconda di quello che fai nella hosts.deny/allow
rischi di far partire dei loopi infiniti fra te e l'altro host...
Ciao,
Alberto
-- 
Alberto BARSELLA
PGP fingerprint = 13 3F 22 D2 0B 0A D3 25  F1 89 FE B5 82 AD 75 2A
** Beliefs are dangerous. Beliefs allow the mind to stop functioning.
A non-functioning mind is clinically dead.  Believe in nothing... **

  -  Debian User
   GnuPGid 0xC9F7DB89/1024 - Bologna soccia (mondo maiale) [GemBoy]
 Key fingerprint = EE38 2537 FA41 D481 4998  EB24 905A 999F C9F7 DB89
Undergraduate Student of Computer Science at Bologna Univerity [Italy]

 un esempio?
Il tizio chiede ident, tu fai partire un aggeggio che fa ident del
tizio dall'altra parte, che ha anche lui usato un tcp wrapper su ident
che chiede ident, quindi tu vedi ri-arrivare un tizio che chiede
ident.... etc. etc. etc. etc. (mi sembra che i tcp wrappers provino a
fare ident, BTW).
Un altro esempio e' il finger, spesso uno usa "safe_finger"
nell'azione di tcp wrapper per cercare di avere info: se si mettono in
due a fare finger quando arriva un finger parte un loop infinito.
