• SEO文章推广! 合作联系qq:122325244 正式全面改版 !免费SEO地址:https://www.seozhan.cn/tool 站长QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏SEO站长博客吧

SCAT:信令搜罗和阐述用具

脚本编程 SEO站长博客 2个月前 (08-01) 36次浏览 已收录 0个评论

摘要

SCAT 是一个由python编写的信令采集和认识器械,它会通过 USB 解析 Qualcomm 和 Samsung 基带的诊断讯息,并天生包罗蜂窝局限平面音问的 GSMTAP 数据包流。

   装配恳求 PC

目前仅正在 Linux 上测试过,且大批为 Ubuntu 的种种衍生版本。Python版本不得低于python 3,此外还需求装配以下外部模块:

pyUSB

pySerial

要确切解码 SCAT 天生的 GSMTAP 数据包,需求 Wireshark 2.6.0 或更高版本。看待老版本的 Wireshark,咱们供给了一个 Wireshark Lua 插件来助助其扩展 GSMTAP 解码功效。SCAT 利用的 GSMTAP 界说基于 libosmocore 0.11.0。

   智老手机

蜂窝设置务必通过 USB 透露诊断端口。这苛重取决于所利用的设置,咱们无法为一共设置供给一个通用的处分计划。利用要害字(你的设置名称)qpst 正在网上寻求获取,基于 Qualcomm 的智老手机透露诊断端口的方式。

三星:正在拨号器中输入*#0808#,抉择包罗 DM 的自便 USB 形式条款;

韩版:正在拨号器中输入 3197123580,暗号为 9964127764320821。

2018 年往后的某些版本的固件,将会遏止利用上述代码拜候暗藏菜单。目前并无处分计划。

LG:正在拨号器中输入 277634#*#(TODO:USB 测试菜单的真实位子)

正在某些 LG 设置上,纵使启用 USB 测试形式诊断端口也不会正在 Linux 中透露。这是因为利用了众个 USB 设置修设导致的;发起正在此类设置中更改现时 USB 修设的 udev 法例。

索尼:需求 root。获取一个有 root 权限的 adb shell,并输入号令.eng 1。

Nexus:需求 root。获取一个有 root 权限的 adb shell,并输入号令 fig diag,adb。

不实用于 Pixel 设置!

Sailfish OS:( TODO:若何批改 usb-moded 扶植)

   利用

固然咱们发起大师直接利用 USB 来拜候诊断端口,但倘若你的智老手机的诊断端口可能通过串行端口拜候,那也是个不错的抉择。一共基于 Qualcomm 的智老手机的 qcserial 内核模块并没有包罗相闭诊断端口的讯息,而基于三星的智老手机也没有如此的模块。

通过 USB 拜候基带诊断:

   $ scat.py -t qc -u -a 001:010 -i 2

-t qc 界说咱们正正在解析 Qualcomm 基带。看待 Samsung 基带需求将 qc 替代为 sec,且需求咱们手动供给型号,如下所示:

   $ scat.py -t sec -m e333 -u -a 001:006 -i 2

可用型号类型如下:

-m cmc221s:CMC221S,用于早期的三星 LTE 调制解调器/智老手机;

-m e303:调制解调器芯片 ExynosModem303;

-m e333:调制解调器芯片 ExynosModem333

较新的 Exynos 调制解调器可与-m e333 选项沿途利用,YMMV。

-u 指定咱们通过 USB 拜候的诊断设置

固然有饱动式算法可能确定毗连的设置,但依旧发起大师能鲜明指定诊断节点的 USB 设置地方和接口编号。-a 001:010 指定地方,该地方效力 lsusb 号令中可睹的无别语法。-i 2 指定诊断节点的接口编号,该编号也是特定于设置的。

通过串口拜候基带诊断:

   $ scat.py -t qc -s /dev/ttyUSB0

将/dev/ttyUSB0 替代为你的诊断设置。

默认状况下,scat将包发送到 127.0.0.1,局限平面包行为gsmtap发送到 udp 端口 4729,用户平面包行为 ip 发送到 udp 端口 47290。

利用 Ctrl+C 退出利用步伐。

   高级选项

可能利用-H 127.0.0.2 开闭更改发送 GSMTAP 数据包的宗旨地。比方,以下号令将所少睹据包发送到 127.0.0.2:

   $ scat.py -t sec -m e333 -u -a 001:006 -i 2 -H 127.0.0.2

利用以下号令,以便或许利用 Wireshark 轻松对其实行排序:

   ifconfig ethUSB 127.0.0.2 netmask 255.255.255.0 up sudo route add -net 127.0.0.0 netmask 255.255.255.0 gw 127.0.0.1

可能利用其他号令的输出自愿确定 USB 总线地方。以下示例实用于三星 Galaxy S5 Mini:

   val=$(lsusb awk /Samsung/ {print substr($4, 1, length($4)-1)}) sudo ./scat.py -t sec -m e303 -u -a 001:$val -i 4 -H 127.0.0.2 已测试过的设置

以下设置已由作家和奉献者实行测试:

   设置名称/型号 解决器 基带 需要参数 是/否需求 root Nokia 8110 4G (TA-1048) Snapdragon 205 MSM8905 X5 -t qc Yes Google Nexus 5 (LG-D821) Snapdragon 800 MSM8974 MDM9x25 -t qc Yes Google Nexus 5X (LG-H791) Snapdragon 808 MSM8992 X10 -t qc Yes Google Pixel 2 (G011A) Snapdragon 835 MSM8998 X16 -t qc Yes 还需批改体例分区 LG G Flex 2 (LG-H955) Snapdragon 810 MSM8994 X10 -t qc No Sierra Wireless EM7455 – X7 (MDM9635) -t qc – Sony Xperia X (F5122) Snapdragon 650 MSM8956 X8 -t qc Yes Samsung Galaxy S III LTE (SHW-M210K) Exynos 4412 CMC221S -t sec -m cmc221s No Samsung Galaxy S4 LTE (GT-I9505) Snapdragon APQ8064T Qualcomm MDM9215 -t qc No Samsung Galaxy S5 Mini (SM-G800F) Exynos 3470 Exynos Modem 303 -t sec -m e303 No Samsung Galaxy S6 (SM-G920F) Exynos 7420 Exynos Modem 333 -t sec -m e333 No/Yes Samsung Galaxy S6 Edge+ (SM-G928F) Exynos 7420 Exynos Modem 333 -t sec -m e333 No/Yes Samsung Galaxy S8 (SM-G950F) Exynos 8895 Exynos Modem 355 -t sec -m e333 No/Yes

注:以上列外并未列出一共基于 Qualcomm 的设置。

   已知纰谬

正在某些 Qualcomm 设置上,退出并众次启动利用步伐后初始化最终会挂起,而且不会显示任何音问。根基源由仍正在观察中。处分计划:重启智老手机;

正在某些三星设置上,欠缺 EARFCN 等元数据讯息或没有展示局限平面音问。倘若碰到此类状况,请示知你的处境以获取处分计划。

   参考文献

Byeongdo Hong,Shinjo Park,Hongil Kim,Dongkwan Kim,Hyunwook Hong,Hyunwoo Choi,Jean-Pierre Seifert,Sung-Ju Lee,Yongdae Kim。

窥视蜂窝围墙花圃 – 一种紧闭式搜集诊断方式-IEEE Transactions on Mobile Computing(2018.2)


SEO站长博客 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:SCAT:信令搜罗和阐述用具
喜欢 (0)
[h4ck3st@126.com]
分享 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址