上期本公众号介绍了传统伪基站取证的一般步骤,没想到引起了众多读者的反馈,就伪基站的一些技术问题与小编展开了深入的探讨。本期小编将就读者反馈的一些关于传统伪基站的取证鉴定产生争议的问题进行探讨。
一
关于桌面中TXT
根据王洪庆,王即墨等2015年发表在《刑事技术》上的“伪基站”数据取证研究,“桌面的TXT文件是通过调用函数随机生成 46000XXXXXXXXXX、46001XXXXXXXXXX 和 46002XXXXXXXXXX(X 为 0-9 的随机数)的 IMSI 号码写入到桌面的“任务 名称 _id.txt”文件中,使其总数量满足 count 的值”。 按照此说法,桌面的TXT文件中的IMSI记录是随机生成的,无法作为主要判断依据。
为了证实论文中的说法,小编在/var/usr/openbts/Lib/Action/BusinessAction.class.php中找到了这段代码,见下图。
由于手头没有可进行实验的设备,因此,小编暂时也无法判断,但是小编会持续关注,也希望有相关检验经验的同仁们能给小编提供经验分享。
二
关于日志中年份判断
在伪基站类案件的量刑中,IMSI记录是一个非常重要的判定依据。前一期就介绍过,它可能存在于伪基站的OpenBTS.log、syslog系列文件、桌面TXT文件、send.data以及TMSI.db数据库中。而对于判断常用到的OpenBTS.log、syslog系列文件、send.data以及桌面TXT文件中,OpenBTS.log、syslog系列文件的内容中只记录了月日时分秒,没有记录年份,而send.data以及桌面TXT文件内容中更是看上去没有任何时间的痕迹。一般情况下,鉴定过程中常常会结合文件创建修改时间进行判断。
其实,在这些文件中,有一个非常重要的信息,可以作为判断时间,尤其是确认年份的重要依据。在伪基站的gsm_business数据表中有一列名为id的列(短信任务id),里面有一串10位长的数字,可以通过Decode进行解析。以下图为例,gsm_business表中第三列,id列信息为1460007355,对应的time列的信息为2016-04-07 13:35:55。
我们使用Decode进行解析,一般使用的是Unix:Numeric Value,可以看到解析的时间信息为Thu, 07 April 2016 13:35:55 +0800,与gsm_business表中time列的数据一致。因此,短信任务id包含了时间戳的信息。
短信任务id列同样也存在于OpenBTS.log、syslog系列文件以及send.data中。如果是在OpenBTS.log和syslog系列文件中,以addsms作为关键字进行搜索,可以发现addsms后面跟着的就是短信任务id,如下图所示。
而在send.data中,第一列即为短信任务id。
在桌面的TXT文件中,文件名包含了短信任务id。
三
OpenBTS.log和syslog的关系
在大多数伪基站中,一般只有OpenBTS.log或者只有syslog系列文件。小编总结了一下,正常情况下,syslog系列文件中的IMSI记录应小于等于OpenBTS.log中的记录,原因是syslog系列文件会有删除。但是,理论上,syslog系列文件中的IMSI记录,在OpenBTS.log中都能找到一一对应。
四
新型伪基站的取证
鉴于很多读者在问小编关于新型伪基站的取证方法,小编只能很遗憾的告诉大家,新型伪基站只要关机状态或者重启过就不存在之前的使用数据,因为新型伪基站为Ubuntu LiveCD系统。
此外,即便是还在运行的新型伪基站,取证条件非常苛刻,可以在开机的状态下拆机检验,成功率非常低,一不小心就会重启。而且必须要有空余的USB连接口,以连接键盘鼠标和存储设备以导出涉案数据。注意:新型伪基站一般是使用U盘或者SSD硬盘。
当然了,如果你很幸运,嫌疑人肯告诉你新型伪基站的无线网络密码(前提他知道),以及伪基站的用户名和密码等,并且该伪基站允许运行远程登录的方式,那么你也可以尝试远程登录进行取证。
还有一点,新型伪基站的遥控器看上去和车钥匙很像,现场取证时,千万不要随便乱按。
小编语录
这是对上一篇传统伪基站的取证的补充,由于上一篇一经推出,有非常多的读者来与小编交流了伪基站取证的经验,也使小编获取了很多新知识,收获良多,在此表示深深的感谢!
再次强调,本公众号所有观点仅是小编个人的一点心得,可能存在失误,如有不足之处,还请大家见谅。
如需转载可与小编进行联系,下图是小编微信号。