vnpy_ubuntu期货看穿监管信息查看

报错信息:经期货市场监控中心反馈,您在我司报备使用的第三方外部交易终端软件在生产环境中不满足看穿式监管要求。无法采集到您的私网IP1。

但是无法采集到您的硬盘序列号等其他序列号信息。

如何定位问题呢?提供下个人方法
1,官方提供的linux版本的so包,v6.3.13_20181119_tradeapi中

1
2
3
4
5
6
7
8
9
有v6.3.13_20181119_tradeapi/v6.3.13_20181119_api_clientdollectdll_linux64/LinuxDataCollect.so
这里应该有获取机器信息的c函数,那个呢?
和这个so在一起有个DataCollect.h
内容:
///获取AES加密和RSA加密的终端信息
///@pSystemInfo 出参 空间需要调用者自己分配 至少270个字节
///@nLen 出参 获取到的采集信息的长度
///采集信息内可能含有‘\0’ 建议调用者使用内存复制
DATA_COLLECT_API_EXPORT int CTP_GetSystemInfo(char* pSystemInfo, int& nLen);

明显是获取机器信息的函数

2,但是如果直接调用so里面的这个方法,会提示找不到方法
3,不妨在so中查看找类似名称

1
2
3
4
nm LinuxDataCollect.so |grep SystemInfo
0000000000085230 T _Z17CTP_GetSystemInfoPcRi
0000000000084c40 T _Z21CTP_GetRealSystemInfoPcRi
00000000000850e0 T _Z28CTP_GetSystemInfoUnAesEncodePcRi

也就是这三个方法大概率时获取信息,具体那个,名字看应该时加密或encode的差异,无所谓,都尝试下就行了

4,在python中使用cdll.LoadLibrary调用方法_Z21CTP_GetRealSystemInfoPcRi,即可(挨个试出来的)
5,最终结果实例

1
2
3
b'2@2019-07-16 18:47:37@172.16.0.154@@aced5cf6d10a@@john-P95-@4.15.@AA00000000000000@E9060900FFFBEBBF@Not'
c_int(103)
大概是2@2019-07-16 18:47:37[当前时间]@172.16.0.154[本机IP]@@aced5cf6d10a[MAC地址]@@john-P95-[机器名]@4.15.@AA00000000000000@E9060900FFFBEBBF@Not

剩下的我也不晓得干嘛的

在windows上的可参考东吴证券文档:http://www.dwfutures.com/upload/common/3/201905211006437757.doc
终端采集WinDataCollect.dll由上期技术提供,该文件在上期技术提供的API接口文件包的20181119_clientdll_windows或20181119_clientdll64_windows目录中。将本地信息采集具体内容显示,该内容即穿透式监管验证搜集的相关信息内容(目前暂定)。

功能类似如下

其他

1
2
3
4
sudo chmod 777 /sys/firmware/dmi/tables/smbios_entry_point
sudo chmod 777 /dev/mem
sudo chmod 777 /sys/firmware/dmi/tables/DMI
sudo chmod 777 /dev/sda
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×