Sqlite vxWorks内核外壳能力

Sqlite vxWorks内核外壳能力,sqlite,vxworks,Sqlite,Vxworks,我的车上安装了一个汽车导航系统,我发现它运行的是vxWorks 6.9.3 我试图实现的是改变导航系统的一些隐藏设置 小说明:导航系统能够通过蓝牙连接到互联网。我安装了小型web服务器,它唯一能做的就是检测客户端的IP地址。我从总部浏览器打开了那个网站,发现了总部的ip地址。我可以扫描它的开放网络端口 结果它有23个端口打开。我可以在那里打电话。 它不需要任何密码或登录,并报告操作系统信息:Windriver vxWorks 6.9.3 我可以在这里运行各种命令,检查文件系统,等等。 但我不知道

我的车上安装了一个汽车导航系统,我发现它运行的是vxWorks 6.9.3

我试图实现的是改变导航系统的一些隐藏设置

小说明:导航系统能够通过蓝牙连接到互联网。我安装了小型web服务器,它唯一能做的就是检测客户端的IP地址。我从总部浏览器打开了那个网站,发现了总部的ip地址。我可以扫描它的开放网络端口

结果它有23个端口打开。我可以在那里打电话。 它不需要任何密码或登录,并报告操作系统信息:Windriver vxWorks 6.9.3

我可以在这里运行各种命令,检查文件系统,等等。 但我不知道怎样才能改变一些事情。我甚至找到了从USB密钥到设备传输文件的方法

我发现我要更改的所有设置都存储在.sqlite文件中。其中一些是gzip文件,并具有带有校验和的.inf文件。校验和计算的算法是专有的,所以我无法将.sqlite文件从设备传输到usb密钥,更改某些内容,而不是gzip并计算新的校验和

我认为操作系统可以以某种方式与内存中的.sqlite文件交互,而无需解压缩它们。 那么,有没有办法在使用vxWorks内核外壳的设备上打开sqlite外壳呢? 如果是的话,那将是完美的,足以实现我想要的任何事情


如果这无法实现,有人能给我一些建议,告诉我vxWorks内核外壳有哪些可能性吗

VxWorks外壳上可用的命令取决于加载的应用程序和内核本身。在shell中,您可以调用VxWorks加载的所有“公共函数”。您以类似C的语法输入函数调用,shell解析参数,将它们推到堆栈上,并跳转到函数的地址,就像C中的普通函数调用一样

检查函数是否存在的一个有用函数是
lkup“foo”
,它将列出名称中包含
“foo”
的所有函数(区分大小写!)。但它不会告诉您任何有关所请求的参数的信息。如果您没有通过shell将所有参数传递给函数,intepreter会在执行函数调用之前将一些零推送到堆栈上。这可能会导致非常奇怪的结果,甚至可能损坏您的系统(取决于功能)


如果您能够加载一个程序,您可能希望使用的函数来迭代VxWorks的所有符号
sysSymTbl

,校验和与操作系统无关;您必须与计算校验和的组件交互。@CL我想是的。但是,当我在telnet会话中时,没有像un UNIX那样的常规“commad”。只有少数看起来更像c函数调用的预定义命令。i、 e:复制“源”、“目标”用于复制文件。注意参数之间的逗号。我无法获得这些命令的完整列表来查找校验和计算程序os。所以,您提到您可以传输文件,您是否尝试获取.sqlite数据库并修改内容并将其传输回。传输文件后,重新启动设备,以便读取新的.sqllite db。正如lukas所提到的,使用lkup功能检查公共函数,例如lkup“sql”。还要检查是否有vxWorks命令解释器使用cmd命令运行。@VikashJain是的,我尝试过修改文件并将它们传输回去,但没有成功:(我认为这是因为它们是gzip文件,并且对原始文件有校验和。这非常有用,我将尝试使用lkup来获取sqlite函数