it-swarm.asia

Linux'ta belirli bir bağlantı noktasının hangi işlemin açık olduğunu nasıl anlayabilirim?

Sunucumda nmap çalıştırdım ve garip bir port buldum. Bu bağlantı noktasını belirli bir işleme eşlemek için bir yol olup olmadığını anlamaya çalışıyorum ama böyle bir araç olup olmadığı hakkında hiçbir fikrim yok.

Herhangi bir öneri?

32
jnman

Diğer yazılarda bahsedilen Netstat'ın yanı sıra, lsof komutunun bunu gayet iyi yapabilmesi gerekir. Sadece şunu kullanın:

lsof -i :<port number>

ve tüm süreçler ortaya çıkmalı. OS X'te oldukça sık kullanıyorum.

lsof için Debian Yönetimi makalesi

57
bjtitus

Uyarı: Sisteminizin güvenliği ihlal edilmiş.

İhtiyacınız olan araç dosyaları (ve soketleri ve bağlantı noktalarını) listeleyecek olan lsof. Büyük olasılıkla yüklüdür ve büyük olasılıkla saldırganın sürümüdür, yani lie size gönderir.

Bu gerçekten bir rootkit. Bu davranışı daha önce gördüm ve her zaman bir rootkit. Sisteminizin güvenliği ihlal edilmiştir ve aynı makineden kaynaklanan kullandığınız hiçbir araca güvenilemez. Canlı CD'ye önyükleme yapın (salt okunur güvenilir ikili dosyalara sahiptir) ve verilerinizi, ayarlarınızı vb. Ayıklamak için bunu kullanın. Sahip olduğunuz tüm programlar, sahip olduğunuz komut dosyaları, onları terk . Onları getirme . Onlara ve sisteme, cüzzam varmış gibi davranın, çünkü do .

İşiniz bittiğinde, yörüngeden çek .

Game over man, game over.

Bunu mümkün olan en kısa sürede yapın. Oh, ve ağ bağlantınızı çıkarın - saldırgan erişiminizi engelleyin.

23
Avery Payne
Sudo netstat -lnp  

Gelen bağlantıları dinleyen bağlantı noktalarını ve bağlantı noktasının açık olduğu ilişkili işlemi listeler.

14
Joe

netstat -anp

"-P", bağlantı noktasına açık olan işlem kimliğini listelemesini söyler. -An, dinleme bağlantı noktalarını listelemesini söyler ve adları çözümlemez. Ne kadar hızlı geri döndüğünü büyük ölçüde hızlandırabilen meşgul sistemlerde.

netstat -anp | grep "LİSTE"

Bu size sadece açık portları verecektir.

4
sysadmin1138

Bağlantı noktasını işletim sistemi araçlarıyla açık göremiyorsanız ve bir izinsiz girişten şüpheleniyorsanız, bir rootkit yüklenmiş olabilir.

Rootkit, belirli işlemleri ve bağlantı noktalarını önlemek için sistem araçlarını değiştirmiş veya çekirdek modüllerini değiştirmiş olabilir.

Birkaç otomatik araçla rootkit'i kontrol edebilirsiniz. 'apt-cache search rootkit' Ubuntu'da aşağıdakileri gösterir:

chkrootkit - rootkit detector
rkhunter - rootkit, backdoor, sniffer and exploit scanner
unhide - Forensic tool to find hidden processes and ports

Bir rootkit'iniz varsa, sisteminize 'değiştirildi' ye dönebilirsiniz, ancak izinsiz girişin nasıl yapıldığını öğrenmenizi ve tekrar etmemesi için sistemi sertleştirmenizi öneririm.


Ubuntu'ya özel değiller, onları CentOS'ta da kullanabilirsiniz. Paketi arayın veya sayfalarından indirin.


Bu bağlantı noktasının çıktısı ile gerçekten pcanywhere çalıştırıyorsunuz gibi görünüyor: "�Ы� <Enter>" pcanywhere hoş geldiniz mesajı olan "Lütfen <Enter>" tuşuna basın. Sürecin neden süreç listesinde görünmediğini bilmiyorum. Kök müsün?

Tek seferlik bir işlem olup olmadığını görmek için yeniden başlatmayı deneyebilirsiniz.

4
chmeee

Cevaba @bjtitus tarafından yanıt vermek için çok ayrıntılı bilgiler edinebilirsiniz, örneğin:

$ lsof -i :8000
COMMAND  PID  USER   FD   TYPE   DEVICE SIZE/OFF NODE NAME
squid3  1289 proxy   15u  IPv6 14810490      0t0  TCP *:8000 (LISTEN)

$ ps -fp 1289
UID        PID  PPID  C STIME TTY          TIME CMD
proxy     1289     1  0 09:48 ?        00:00:00 /usr/sbin/squid3 -N -f /etc/squid-deb-proxy/squid-deb-proxy.conf

Orada kalamar süreç olduğunu görebilirsiniz, ama aslında benim squid-deb-proxy limanı ele geçiriyor.

Java uygulama için başka bir iyi örnek:

$ lsof -i :4242
COMMAND  PID USER   FD   TYPE   DEVICE SIZE/OFF NODE NAME
Java    3075 root   86u  IPv4    12019      0t0  TCP *:4242 (LISTEN)

$ ps -fp 3075
UID        PID  PPID  C STIME TTY          TIME CMD
root      3075     1 15 May24 ?        3-16:07:25 /usr/local/crashplan/jre/bin/Java -Dfile.encoding=UTF-8 -Dapp=CrashPlanService -DappBaseName=CrashPl

lsof (LiSt Open Files) uygulamasında Java'nın yararlı olmadığını görebilirsiniz. ps komutunu PID ile çalıştırdığımızda bunun CrashPlan olduğunu hemen görebiliyoruz.

0
ErebusBat