如何转储“纯”和纯二进制位序列?
例如,我有这个:
0000000: 10001001 01010000 01001110 01000111 00001101 00001010 .PNG..
0000006: 00011010 00001010 00000000 00000000 00000000 00001101 ......
000000c: 01001001 01001000 01000100 01010010 00000000 00000000 IHDR..
0000012: 00000010 01011000 00000000 00000000 00000001 10010000 .X....
0000018: 00001000 00000010 00000000 00000000 00000000 11111101 ......
000001e: 01010111 10001001 11001111 00000000 00000000 00000000 W.....
0000024: 00000111 01110100 01001001 01001101 01000101 00000111 .tIME.
Run Code Online (Sandbox Code Playgroud)
左边的那些行号和右边的 ASCII 对我来说是个问题。我确实尝试过将其删除:
xxd -b /root/Desktop/image.png | sed -r "s/\d32{3,}.*//g" | sed "s/.*://" | sed "s/\d32//g"
Run Code Online (Sandbox Code Playgroud)
但是,我没有成功:
100010010101000001001110010001110000110100001010.PNG..
000110100000101000000000000000000000000000001101......
010010010100100001000100010100100000000000000000IHDR..
000000100101100000000000000000000000000110010000.X....
000010000000001000000000000000000000000011111101...... …Run Code Online (Sandbox Code Playgroud) 背景:我们的 Linux 发行版有一个第三方供应商软件,我们目前正在测试该软件lubuntu。我们有安装文件和install.shshell 脚本,用于在正确的目录中安装该软件所需的二进制文件。
我们想确定该软件在内部使用哪些静态库(这样我们就可以判断它们是否已过时并在我们的环境中引入漏洞)。
到目前为止我们所做的:我们查看了ldd但它只列出了共享库或动态库。与 相同objdump。我们过去常常strings查看隐藏在其中一些二进制文件中的字符串,以查看库版本号等的标志。但对于大型二进制文件来说,这是一个非常耗时且低效的过程。
问题:在Linux环境下如何发现并列出软件中使用的静态库?
我知道链接质量表示数据包丢失、错误等。但是当它告诉我链接质量是“31/70”时,什么是“31”,什么是“70”?