车联网入门
车联网入门前言更多的是对车联网安全认知过程的记录,希望能找到车联网安研需要的一些技能树和研究的大体方向。
最初对车联网安全的认知,大概要从sky-go在MOSEC 20 BaijiuCon里汽车安全talk里的一张汽车安全攻击面导图说起:
首先从我们朴素的车联网认知出发,结合图里认识的关键字,有两个常规思路的攻击路径:
云服务。IoT设备所谓万物互联,除了局域内用CAN或PLC连接的情况,基本都是借助云服务实现,这就把这部分车联网安全问题可以归类为主机安全问题和一些认证相关的问题。
移动终端。也就是图里从Phone到IVI的路径,可能通过WiFi,可能通过蓝牙,可以通过协议、无线电的安全问题考虑,也可以从移动端的安全问题入手。
然后,了解一下图里相对生僻的关键字所代表的进入车内网路径:
GNSS,定位模块。
ADAS,先进驾驶辅助系统。
Sensor,传感器。(图里最右边红色圆柱确实看不清,问了Sky-go的师傅,大概是传感器这方面)
V2X,基于蜂窝(Cellular)通信演进形成的车用无线通信技术(Vehicle to Everything),RSU(路侧设备)、OBUs( ...
路由器漏洞挖掘工具总结
路由器漏洞挖掘工具总结固件的解包与封装firmware-mod-kit工具下载
基于binwalk的解打包⼯具
安装⽅法:
⾸先安装依赖
1sudo apt-get install git build-essential zlib1g-dev liblzma-dev python-magic
安装工具
12345git clone https: / github.com/mirror/firmware-mod-kit.git cd firmware-mod-kit/src ./configure & make
解包固件
将固件 firmware.bin 解包到 working_directory/ 下
1./extract_firmware.sh firmware.bin working_directory/
重新打包固件
将新⽣成的固件放到 output_directory 下
1./build_firmware.sh output_directory/ working_directory/
基于文件系统的信息收集trommel工具下载
trom ...
路由器漏洞基本知识
路由器漏洞基本知识路由器作为连接网络的关键设备,其安全性至关重要。了解路由器漏洞的基本知识是进行漏洞分析和挖掘的必要前提。
漏洞分类路由器漏洞可以按照不同的特征进行分类,以便更好地理解和应对这些漏洞。
密码破解漏洞密码破解漏洞是通过对WiFi加密密码进行破解来获取未授权访问权限的一种漏洞。攻击者可以利用WPS的PIN爆破、WiFi弱密码爆破或管理员账号密码爆破等方式来获取路由器的控制权。
WEB漏洞WEB漏洞是指存在于路由器的Web服务器中的漏洞。这些漏洞可能包括SQL注入、命令执行、跨站请求伪造(CSRF)和跨站脚本攻击(XSS)等。
后门漏洞后门漏洞是由开发人员为了方便后续调试而故意留下的安全漏洞。然而,一旦黑客发现这些后门,就会对路由器的安全性造成严重威胁。
溢出漏洞溢出漏洞是指由于缓冲区溢出等原因导致的内存溢出问题。攻击者可以通过利用这些漏洞来执行恶意代码,实现对路由器的攻击和控制。
路由器仿真firmAE
路由器仿真firmAE前言其实比起用仿真软件去防真路由器,其实更加推荐的是买一个对应的路由器来复现,省下搭建的环境的时间,z1r0师傅的建议是这样
FirmAE 简介FirmAE是由国外安全研究团队开发的一款全自动固件仿真工具,FirmAE工具以Firmadyne工具为基础,提出了仲裁仿真的技术方式,将固件仿真成功率由Firmadyne的16.28%提高到了79.36%。经FirmAE团队测试,目前已经成功对来自八家设备供应商的超过1100款无线路由器和网络摄像机固件进行了模拟。
FirmAE工具的官方代码仓库为:https://github.com/pr0v3rbs/FirmAE
FirmAE 工具安装FirmAE官方推荐使用Ubuntu 18.04系统进行安装部署,FirmAE工具的安装部署十分简单,只需要拉取工具仓库后执行安装脚本即可。
首先运行git clone –recursive https://github.com/pr0v3rbs/FirmAE命令
Clone FirmAE
1git clone --recursive https://github.com/pr0v3r ...
贪吃蛇代码
贪吃蛇代码功能
初始化snake,食物,窗口大小
绘制背景和蛇还有食物的图标(游戏玩法,和分数)
snake的移动
snake改变方向
snake吃食物(游戏分数)
游戏暂停
播放音乐
三部曲
加载游戏数据(初始化,init();)
绘制图形(绘图 DrawMap();)
玩家操作(数据更新 move();ChangeDir();)
实现过程
训练模型验证成功率99,模型测试结果只有85,如何提高
训练模型验证成功率99,模型测试结果只有85,如何提高当您的模型在训练数据上显示出很高的精确度(99%),但在测试数据上的表现显著下降(85%)时,这通常指示模型可能出现了过拟合。过拟合是指模型学习到了训练数据中的细节和噪声,从而在新的、未见过的数据上表现不佳。以下是一些策略来减少过拟合并改善模型在测试数据上的表现:
1. 简化模型过于复杂的模型更容易捕捉训练数据中的噪声。您可以尝试减少模型的复杂度:
减少树的数量(n_estimators)。
减少树的最大深度(max_depth)。
增加叶节点所需的最小样本数(min_samples_leaf)。
2. 增加正则化增加模型的正则化可以抑制模型复杂度,从而减少过拟合:
对于 XGBoost,可以增加 lambda(L2 正则化项)和 alpha(L1 正则化项)的值。
3. 使用更多的训练数据如果可能,增加更多的训练数据可以帮助模型学习更泛化的特征,而不是仅仅适应当前的训练数据。
4. 采用交叉验证使用交叉验证而不仅仅是单一的训练集/测试集分割,可以帮助您更准确地评估模型在未知数据上的表现。
5. 调整学习率调整学习 ...
计划任务
计划任务一、概念计划任务就是按照计划定时的去执行任务
二、crond程序crond程序是linux里负责执行计划任务的程序
(1)使用crontab命令调用crond进程
(2)crond程序–每隔一分钟去检查是否有计划任务要执行.
2、crond进程的启动、重启、停止
(1)service crond start–启动
(2)service crond stop–停止==systemctl stop crond
(3)service crond restart–重启(先关闭后启动)
三、管理计划任务1、编辑计划任务:crontab -e
2、查看计划任务:crontab -l
3、删除计划任务:crontab -r或者将计划任务注释掉
4、计划任务的定时设置:
计划任务的格式:
时间设置的一些特殊表示方法:
(1)*表示任意时间
(2),表示间隔的多个不连续的时间点
(3)/n表示指定间隔的时间频率
(4)~表示连续的时间范围
例如:
(1)0 7 * * *–每日的七点
(2)0 12 */3 * * –每隔三天的12点
(3)30 ...
解释器类型的Pwn题目总结
解释器类型的Pwn题目总结0x01 写在前面在近期的比赛中,发现解释器类型的题目越来越多,因此决定进行一个专项的题目总结。
Pwnable_bf:此题是利用了brainfuck本身的特性以及题目没有对GOT进行保护导致我们可以便捷的进行利用。
2020 RCTF bf:此题是因为解释器的实现存在漏洞,并不是利用语言本身的特性。
2020 DAS-CTF OJ0:此题是直接让我们写程序来读flag,而我们读flag时又需要绕过一些题目的过滤语句~
DEFCON CTF Qualifier 2020 introool:此题严格来说并不是实现的解释器,但是它仍然是直接依据我们的输入来生成可执行文件,属于广义上的解释器。
[Redhat2019] Kaleidoscope:此题创新性的使用了fuzz来解题。
2020 DAS-CTF OJ1:此题仍然为直接让我们写程序来读flag,但是他限制了所有括号的使用!
0x02 什么是解释器解释器(英语Interpreter),又译为直译器,是一种电脑程序,能够把高级编程语言一行一行直接转译运行。解释器不会一次把整个程序转译出来,只像一位“中间人” ...
解决 GitHub Failed to connect to 127.0.0.1 port 7890 after 5 ms Connection refused
解决 GitHub Failed to connect to 127.0.0.1 port 7890 after 5 ms: Connection refused查询下代理,如果有,就取消。然后重新设置代理端口即可。
1、查询代理
1env|grep -i proxy
2、有
1234通过系统命令取消代理unset http_proxyunset https_proxyunset all_proxy
12345678通过git取消代理设置git config --global --unset http.proxygit config --global --unset https.proxygit config --global https.proxy http://127.0.0.1:1080git config --global https.proxy https://127.0.0.1:1080git config --global --unset http.proxygit config --global --unset https.proxynpm config delet ...
西湖论剑IOT蓝牙
西湖论剑IOT蓝牙前言转载文章,记录学习
来源
https://xuanxuanblingbling.github.io/wireless/ble/2021/06/26/ble/
蓝牙协议协议简介新老并存是蓝牙协议栈复杂的主要原因,协议分层如图:
想了解最全面的蓝牙协议栈设计,可以去 蓝牙官网 找,目前最新的白皮书是:Bluetooth Core Specification v5.3。
协议实现谈协议分层总是很简单,因为上面这种图片随处可见,但其本质的内容是一个抽象的设计方案,而不是具体的实现方案(软件代码,硬件电路)。对于黑客来说,我们不仅仅关注抽象的协议设计上有没有问题,更关注的是协议的实现,因为设计一般都是经过世界上顶尖的大脑们反复推敲出来的,而实现可能就是某个开发者半夜一边吃外卖一边写出来的。协议设计的问题可能在白皮书中隐约看到,但实现的漏洞你是不可能从白皮书中看出来的,比如:
Bleeding Tooth:Linux蓝牙驱动远程代码执行分析与利用
bluetooth_stack开源蓝牙协议栈源码分析与漏洞挖掘
物联网安全拔“牙”实战——低功耗蓝牙(BLE)初探
记一次智能 ...