![]() |
1
dbg 2024-03-08 19:05:42 +08:00 via Android
Linux rookit
|
2
fredcc 2024-03-08 19:06:30 +08:00 via Android
木马的基本功能,一般是替换系统的 netstat 和 ss 文件实现
|
3
ho121 2024-03-08 19:08:12 +08:00 via Android
iptables
|
![]() |
4
pagxir 2024-03-08 19:10:50 +08:00 via Android
用 raw socket 就看不到
|
5
idontnowhat2say 2024-03-08 19:11:45 +08:00
ebpf
|
![]() |
6
PTLin 2024-03-08 20:09:08 +08:00
对于 ss 这种用 Netlink 的 epbf lsm 到 socket_create 应该就行
|
![]() |
7
0x20H 2024-03-09 20:23:48 +08:00
我记得见到过一次用 iptables 规则写的敲门技巧,大概就是默认情况下某个端口是关闭的,通过 ping X 次服务器触发 iptables 规则开放这个端口,再 ping X 下触发规则关闭端口。这是对外的,扫描器规则一般无法触发。
对内 netstat/ss 这种可以替换,或者 alias 写个同名函数,过滤掉要隐藏的端口,但都不保险。 持久化的话没必要让木马一直活动吧,或者没必要用这种需要网络连接的方式吧,其他方法呗 |
8
s82kd92l 2024-03-09 20:30:58 +08:00
黑产?
|
9
dode 2024-03-10 10:09:47 +08:00
命名空间,docker 主机模式网络
|
![]() |
10
lrh3321 2024-03-10 11:46:47 +08:00
raw socket
DPDK 或者弄个独立的网络命名空间/虚拟机 |
11
bfdh 2024-03-10 21:41:19 +08:00
rootkit +1
|
![]() |
12
skyrim61 2024-03-11 11:26:53 +08:00
类似于上面的这些技巧, 哪里可以学习的到?
|
![]() |
13
tomychen 364 天前
strace -o netstat.log netstat -antp
会发现 netstat 会去/proc/net/tcp(6) 读当时网络连接 至于隐藏就是 hook 了,至于 ring3 还是 ring0 ``` open("/proc/net/tcp", O_RDONLY) = 3 read(3, " sl local_address rem_address "..., 4096) = 600 write(1, "tcp 0 0 0.0.0.0:22 "..., 101) = 101 write(1, "tcp 0 0 127.0.0.1:25"..., 101) = 101 write(1, "tcp 0 196 192.168.10.6"..., 101) = 101 read(3, "", 4096) = 0 close(3) = 0 ``` read 进来,write 输出 hook 任保一个 syscall 都可以达到屏蔽输出的需求 |