Bug #3543
软件包安全编译有不通过项
0%
Description
测试步骤:
1、Linux测试PC上将天翼网关设备软件包解压到目录 swdl
2、在Linux测试PC上执行 checksec --dir =swdl, 对软件包目录所有的可执行文件进行检查,输出报告,查看每一个文件的编译选项执行结果
统计所有非”.KO”类型文件的每一项编译选项开启的百分比
通过标准:
1.查看每一个文件的编译选项,当返回为以下结果时表示该项测试通过:
NX:“NX enabled”;
RELRO:”Full RELRO”;
PIE:“DSO”或“PIE enabled”;
RPATH:“No RPATH”;
RUNPATH:“No RUNPATH”;
Symbols:“No Symbols”;
2.所有非”.KO”类型文件中,开启了编译选项的统计应该为:
NX开启率达成100%;
RELRO(FULL)开启率达成100%;
PIE开启率达成100%;
RPATH/RUNPATH开启率达成100%;
Symbols开启率达成100%
实际结果:
有文件不符合安全编译要求
Partial RELRO No canary found NX enabled No PIE No RPATH No RUNPATH No Symbols No 0 13 jffs2-root/bin/hostapd_cli
Partial RELRO No canary found NX enabled No PIE No RPATH No RUNPATH No Symbols No 0 0 jffs2-root/bin/ethtool
Partial RELRO No canary found NX enabled No PIE No RPATH No RUNPATH No Symbols No 0 21 jffs2-root/bin/hostapd
No RELRO No canary found NX disabled No PIE No RPATH No RUNPATH No Symbols No 0 0 jffs2-root/usr/sbin/zsp_min.out
History
#1 Updated by 家衡 付 22 days ago
ethtool是从solution/tools/拷贝到文件系统的,之前从T09分支同步过来的,之前是安全的
在:
commit 786e63bcdb243dd5dd65d706f0359a0c547131a9
Author: pengliangyuan <pengly@iaat-tech.com.cn>
Date: Wed May 21 16:53:39 2025 +0800
hisilicon和solution目录同步到1.12.T05
这笔提交更新了不安全的ethtool二进制,因为不太清除这里二进制海思有没有更新功能,不好直接回退到覆盖之前,需和海思确认是回退还是提供新的二进制
hostapd不开启安全编译可以使用,开启安全编译之后hostapd在:
hostapd_cli_add: ADD bss_config=vap0:/var/hostapd_wlan0_vap0.conf
上层通过添加vap会导致hostapd段错误崩掉,这里不开启fPIE -pie就不会崩,此选项提示生成位置无关代码
手动运行hostapd:hostapd -P /var/run/hostapd/hostpid -g /var/run/hostapd/global
手动调用:hostapd_cli -i global ADD bss_config=vap0:/var/hostapd_wlan0_vap0.conf
hostapd_cli_add: ADD bss_config=vap0:/var/hostapd_wlan0_vap0.conf
Configuration file: /var/hostapd_wlan0_vap0.conf (phy vap0) --> new PHY
Could not open configuration file '/var/hostapd_wlan0_vap0.conf' for reading.
Failed to set up interface with /var/hostapd_wlan0_vap0.conf
Adding interface bss_config=vap0 failed
如果页面去开启wifi:
hostapd_cli_add: ADD bss_config=vap0:/var/hostapd_wlan0_vap0.conf
Configuration file: /var/hostapd_wlan0_vap0.conf (phy vap0) --> new PHY
[1]+ Segmentation fault hostapd -P /var/run/hostapd/hostpid -g /var/run/hostapd/global
zsp_min.out应该是海思要更新二进制