NSSL-SJTU / SaTC

A prototype of Shared-keywords aware Taint Checking, a novel static analysis approach that tracks the data flow of the user input between front-end and back-end to precisely detect security vulnerabilities.
274 stars 48 forks source link

关于dlink878的复现问题 #33

Open FallinSlee opened 1 year ago

FallinSlee commented 1 year ago

您好!CVE-2019-8316命令注入漏洞发生在librcm.so的tw_add_url_filter_iptables_rule,SaTC已经找到了这个关键词,但是请问为什么result-librcm.so-ref2sink_cmdi-XXXX.txt文件最后的结果都是Not found呢? QQ截图20230406012940 QQ截图20230406012957

FallinSlee commented 1 year ago

作者您好,我发现了问题所在,这个漏洞并不是由关键词allow产生的,而是在prog.cgi中添加到nvram,然后在librcm.so中获取。我运行了命令: time python satc.py -d /home/satc/SaTC/SaTC_data/dlink878 -o /home/satc/SaTC/SaTC_data/output/dlink878_tmp3 --ghidra_script=share2sink --ref2share_result=/home/satc/SaTC/SaTC_data/output/dlink878_tmp3/ghidra_extract_result/prog.cgi/prog.cgi_ref2share.result --ghidra_script=ref2sink_cmdi -b librcm.so --taint_check prog.cgi的ref2share文件中可以看到识别出来了关键词 QQ截图20230504000136 但是librcm.so却没有分析出结果,请问这是哪里出错了? 3

smile0304 commented 10 months ago

导致这个问题是因为污点传播并不止实在一个二进制程序中传播的,需要执行比较多的步骤。我在这个issue中回答了类似的问题: https://github.com/NSSL-SJTU/SaTC/issues/9

qijiale commented 3 months ago

您好@FallinSlee ,我使用 binwalk -Me 解析 DIR_878_FW120B05_decode.BIN时,并没有得到任何的可执行文件。我应该如何来解析这个BIN文件呢

FallinSlee commented 3 months ago

您好@FallinSlee ,我使用 binwalk -Me 解析 DIR_878_FW120B05_decode.BIN时,并没有得到任何的可执行文件。我应该如何来解析这个BIN文件呢

您是否尝试了命令 sudo binwalk -Me DIR_878_FW120B05_decode.BIN --run-as=root ?

qijiale commented 3 months ago

@FallinSlee 显示错误 General Error: Cannot open file : [Errno 2] No such file or directory: '--run-as=root'