CtsSecurityTestCases#ListeningPortsTest定位tcp端口与pid

【问题描述】

cts失败项

armeabi-v7a CtsSecurityTestCases

android.security.cts.ListeningPortsTest#testNoListeningLoopbackTcpPorts

工具:9.0_r11

05-06 17:11:28.649 17375 17391 E TestRunner: android.security.cts.ListeningPortsTest$ListeningPortsAssertionError:
05-06 17:11:28.649 17375 17391 E TestRunner: Found port listening on addr=127.0.0.1, port=10100, UID=1000 [com.android.keychain, com.itv.android.iptv, com.android.location.fused, com.android.providers.settings,com.launcher.idn, android, com.itv.android.iptv.tvclient,com.droidlogic, com.android.wallpaperbackup, com.droidlogic.BluetoothRemote, ] in /proc/net/tcp
05-06 17:11:28.649 17375 17391 E TestRunner: at android.security.cts.ListeningPortsTest.assertNoAccessibleListeningPorts(ListeningPortsTest.java:250)
05-06 17:11:28.649 17375 17391 E TestRunner: at android.security.cts.ListeningPortsTest.testNoListeningLoopbackTcpPorts(ListeningPortsTest.java:138)

【问题结论】

定位到subtitle端口监听某次提交,回退后测试pass

AuthBlog:秋城https://www.cnblogs.com/houser0323

【分析详细】

1.定位节点inode

port=10100是十进制,/proc/net/tcp中port是十六进制,做一下转换10110-->2774,见下面2:处,对应inode为32905。

console:/ # cat proc/net/tcp
sl local_address rem_address st tx_queue rx_queue tr tm->when retrnsmt uid timeout inode
0: 7632A8C0:EA60 00000000:0000 0A 00000000:00000000 00:00000000 00000000 1000 0 58215 1 00000000 100 0 0 10 0
1: 00000000:1A85 00000000:0000 0A 00000000:00000000 00:00000000 00000000 0 0 33635 1 00000000 100 0 0 10 0
2: 0100007F:2774 00000000:0000 0A 00000000:00000000 00:00000000 00000000 1000 0 32905 1 00000000 100 0 0 10 0

2.根据inode查找pid

进入/proc/[pid]/fd/目录下ls -l 查看socket端口号,由于我们不知道在哪个pid目录下,所以遍历一下

sh脚本或者终端输入shell命令for循环遍历查找32905节点的pid:

# for dir in `find /proc -name "fd" 2>/dev/null`
> do
> ls -l $dir | grep "socket\:\[32905\]" && echo $dir
> done

结果查找到pid为4085

lrwx------ 1 root root 64 2020-05-07 11:03 46 -> socket:[32905]
/proc/4085/task/4085/fd
lrwx------ 1 root root 64 2020-05-07 11:03 46 -> socket:[32905]
/proc/4085/task/4094/fd
......
lrwx------ 1 root root 64 2020-05-07 10:47 46 -> socket:[32905]
/proc/4085/fd

3.查看pid对应的程序

console:/ # ps 4085
USER PID PPID VSZ RSS WCHAN ADDR S NAME
system 4085 3024 1124392 82892 SyS_epoll_wait 0 S com.droidlogic.SubTitleService

至此定位结束,反馈给相应模块处理

【参考资料】

1.嵌入式设备上如何通过端口号定位到进程

https://blog.csdn.net/daizhongyin/article/details/90031132

2.获取tcp/udp端口对应的进程pid

https://blog.csdn.net/ChrisNiu1984/article/details/7022745

CtsSecurityTestCases#ListeningPortsTest定位tcp端口与pid的更多相关文章

  1. 常见tcp端口

    TCP端口 7 = 回显 9 = 丢弃 11 = 在线用户 13 = 时间服务 15 = 网络状态 17 = 每日引用 18 = 消息发送 19 = 字符发生器 20 = ftp数据 21 = 文件传 ...

  2. 常见tcp端口说明

    TCP端口(静态端口)TCP 0= ReservedTCP 1=TCP Port Service MultiplexerTCP 2=DeathTCP 5=Remote Job Entry,yoyoTC ...

  3. Python3实现TCP端口扫描

    在渗透测试的初步阶段通常我们都需要对攻击目标进行信息搜集,而端口扫描就是信息搜集中至关重要的一个步骤.通过端口扫描我们可以了解到目标主机都开放了哪些服务,甚至能根据服务猜测可能存在某些漏洞. TCP端 ...

  4. Python3实现TCP端口扫描器

    本文来自 高海峰对 玄魂工作室 的投稿 作者:高海峰 QQ:543589796 在渗透测试的初步阶段通常我们都需要对攻击目标进行信息搜集,而端口扫描就是信息搜集中至关重要的一个步骤.通过端口扫描我们可 ...

  5. window下查看TCP端口连接情况

    window下查看TCP端口连接情况:netstat -ano -p tcp|findstr 10001

  6. 【转】Windows10下80端口被PID为4的System占用导致Apache无法启动的分析与解决方案

    昨天刚更新了Windows10,总体上来说效果还是蛮不错的,然而今天在开启Apache服务器的时候却发现,Apache莫名其妙的打不开了,起初以为是权限的问题,于是使用管理员身份的控制台去调用命令ne ...

  7. windows tcp端口映射或端口转发

    windows tcp端口映射或端口转发 windows内部有一个叫netsh的玩意,可以把tcp端口进行映射或转发,可惜不支持udp.举个例子:一台windows有一个80端口,对外可以访问.另有一 ...

  8. 免费内网映射外网绑定,tcp端口转发(windows)

    在tcp socket开发过程中,想要外网客户端映射到本地启动的tcp服务端,总结本地tcp端口映射外网方法: 1.打开ngrok后注册用户,网址 ngrok:https://www.ngrok.cc ...

  9. TCP端口检测工具

    很多时候,我们需要测试 tcp 端口.ping 命令虽然好用,但不能测试端口,因为 ping 基于ICMP协议,属于IP层协议,所以无法测试传输层的 TCP/UDP 端口.幸好有tcping命令,可以 ...

随机推荐

  1. spark本地开发环境搭建及打包配置

    在idea中新建工程 删除新项目的src,创建moudle 在父pom中添加spark和scala依赖,我们项目中用scala开发模型,建议scala,开发体验会更好(java.python也可以) ...

  2. mysql的事务四个特性以及事务的四个隔离级别

    一.事务四大属性 分别是原子性.一致性.隔离性.持久性. 1.原子性(Atomicity) 原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,因此事务的操作如果成功就必须要完全应用到数据库, ...

  3. pytorch cheatsheet

  4. C - Infinite Fence -1260C

    考虑区间长度,我们让r和b除以他们的__gcd这样,这样得到的r和b是互质或者相等的.我们取他们两个小的那个.假设是b.那么被涂的方块应该是b,2b,3b,4b,....kb. 相邻的两个方块之间的区 ...

  5. Joomla 3.4.6 Remote Code Execution漏洞复现

    0x00:简介 Joomla是一套全球有名的CMS系统. Joomla基于PHP语言加上MySQL数据库所开发出来的WEB软件系统,目前最新版本是3.9.12. Joomla可以在多种不同的平台上部署 ...

  6. Java环境下 selenium webDriver + chrome浏览器搭建与调试

    一.首先下载selenium webDriver jar包,下载地址如下: http://selenium-release.storage.googleapis.com/index.html 二.下载 ...

  7. Scapy的基本使用

    关于Scapy Scapy是一个可以让用户发送.侦听和解析并伪装网络报文的Python程序.这些功能可以用于制作侦测.扫描和攻击网络的工具. 换言之,Scapy 是一个强大的操纵报文的交互程序.它可以 ...

  8. tensorflow1.0 数据队列FIFOQueue的使用

    import tensorflow as tf #模拟一下同步先处理数据,然后才能取数据训练 #tensorflow当中,运行操作有依赖性 #1.首先定义队列 Q = tf.FIFOQueue(3,t ...

  9. 理解java容器底层原理--手动实现LinkedList

    Node java 中的 LIinkedList 的数据结构是链表,而链表中每一个元素是节点. 我们先定义一下节点: package com.xzlf.collection; public class ...

  10. lua实现游戏抽奖的几种方法

    ^_^内容原创,禁止转载  假设配置如下: local reward_pool = { {weight = , item = {, num = }}, {weight = , item = {, nu ...