tcpdump过滤器表达式通过adb中断

蜜雪儿

我在Android平板电脑上安装了tcpdump,并正在从根adb shell运行命令。我正在tcpdump手册页示例中进行工作,尤其是以下示例

要打印所有往返于端口80的IPv4 HTTP数据包,即仅打印包含数据的数据包,而不打印例如SYN和FIN数据包以及仅ACK数据包。

tcpdump 'tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)'

如果我在桌面(Ubuntu)上执行上述命令,则运行正常。如果我尝试在我的Android设备上执行它,如下所示:

adb shell tcpdump 'tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)'

我收到此错误:

/system/bin/sh: can't create 2)) != 0): Read-only file system
/system/bin/sh: here document missing
tcpdump: syntax error

并且以下命令可以在Android设备上正常运行:

tcpdump 'tcp port 80'

似乎过滤器表达式未正确解析或类似,但老实说,我不确定它的工作原理,因此不确定从哪里开始进行故障排除。关于出什么问题或如何解决的任何想法?

用户44841

引号引起命令adb传递三个参数:

  1. shell
  2. tcpdump
  3. tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)

大概然后尝试运行命令

tcpdump tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)

在Android机器上没有引号(因为您在键入命令的机器上的外壳删除了引号)。

你可能可以做

adb shell tcpdump "'tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)'"

这意味着adb命令将被传递

  1. shell
  2. tcpdump
  3. 'tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)'

这样它将尝试运行命令

tcpdump 'tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)'

在Android机器上。

例如,也会存在相同的问题ssh命令

ssh localhost tcpdump 'tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)'

得到错误

bash: -c: line 0: syntax error near unexpected token `('
bash: -c: line 0: `tcpdump tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)'

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

通过正则表达式过滤器过滤Google BigQuery列

来自分类Dev

通过lambda表达式应用过滤器后,如何获取Stream的大小?

来自分类Dev

如何在C#中通过表达式树构建集合过滤器

来自分类Dev

如何通过表达式选择自定义过滤器?

来自分类Dev

如何在C#中通过表达式树构建集合过滤器

来自分类Dev

如何使用正则表达式通过 id 获取项目过滤器?

来自分类Dev

熊猫DataFrame过滤器正则表达式

来自分类Dev

AngularJS过滤器表达式未更新

来自分类Dev

ElasticSearch正则表达式过滤器

来自分类Dev

Grails过滤器正则表达式

来自分类Dev

表达式模块错误“过滤器对象”

来自分类Dev

带有深层过滤器的JSONPath表达式

来自分类Dev

ElasticSearch正则表达式过滤器

来自分类Dev

过滤器中的AngularJS逻辑表达式?

来自分类Dev

在angularJS过滤器的表达式中使用“或”

来自分类Dev

应用linq过滤器转换表达式

来自分类Dev

高级过滤器/表达式以限制条目

来自分类Dev

Logstash Grok过滤器正则表达式

来自分类Dev

iMacros 的正则表达式过滤器

来自分类Dev

DynamoDB 过滤器表达式的用途是什么?

来自分类Dev

谓词表达式作为过滤器参数

来自分类Dev

AngularJS 过滤器根据表达式动态应用

来自分类Dev

流过滤器正则表达式

来自分类Dev

角度顺序通过过滤器'。' 谓词表达式反转角度v1.0.7中的数组

来自分类Dev

正则表达式拉丁字符过滤器和非拉丁字符过滤器

来自分类Dev

添加查找表达式后未显示Django过滤器字段-Django过滤器库

来自分类Dev

对于表达式过滤器不过滤任何内容

来自分类Dev

为什么jq有时需要过滤器表达式,而有时则不需要过滤器表达式?

来自分类Dev

为什么jq有时需要过滤器表达式,而有时则不需要过滤器表达式?

Related 相关文章

  1. 1

    通过正则表达式过滤器过滤Google BigQuery列

  2. 2

    通过lambda表达式应用过滤器后,如何获取Stream的大小?

  3. 3

    如何在C#中通过表达式树构建集合过滤器

  4. 4

    如何通过表达式选择自定义过滤器?

  5. 5

    如何在C#中通过表达式树构建集合过滤器

  6. 6

    如何使用正则表达式通过 id 获取项目过滤器?

  7. 7

    熊猫DataFrame过滤器正则表达式

  8. 8

    AngularJS过滤器表达式未更新

  9. 9

    ElasticSearch正则表达式过滤器

  10. 10

    Grails过滤器正则表达式

  11. 11

    表达式模块错误“过滤器对象”

  12. 12

    带有深层过滤器的JSONPath表达式

  13. 13

    ElasticSearch正则表达式过滤器

  14. 14

    过滤器中的AngularJS逻辑表达式?

  15. 15

    在angularJS过滤器的表达式中使用“或”

  16. 16

    应用linq过滤器转换表达式

  17. 17

    高级过滤器/表达式以限制条目

  18. 18

    Logstash Grok过滤器正则表达式

  19. 19

    iMacros 的正则表达式过滤器

  20. 20

    DynamoDB 过滤器表达式的用途是什么?

  21. 21

    谓词表达式作为过滤器参数

  22. 22

    AngularJS 过滤器根据表达式动态应用

  23. 23

    流过滤器正则表达式

  24. 24

    角度顺序通过过滤器'。' 谓词表达式反转角度v1.0.7中的数组

  25. 25

    正则表达式拉丁字符过滤器和非拉丁字符过滤器

  26. 26

    添加查找表达式后未显示Django过滤器字段-Django过滤器库

  27. 27

    对于表达式过滤器不过滤任何内容

  28. 28

    为什么jq有时需要过滤器表达式,而有时则不需要过滤器表达式?

  29. 29

    为什么jq有时需要过滤器表达式,而有时则不需要过滤器表达式?

热门标签

归档