- 2024-11-21ESP协议解释
EncapsulatingSecurityPayload(ESP)是IPsec(InternetProtocolSecurity)协议套件中的一个核心组件,专门用于在网络通信中提供数据的加密和完整性保护,确保数据在传输过程中安全可靠。ESP可以保护数据免受窃听、篡改和伪造。一、ESP的主要功能 1. 数据加密:
- 2024-11-19Pwnable_Start
初始阶段先查文件信息start题目,通通没有开启。获得信息,小端序分析阶段发现没有main函数,只有汇编代码运行看一下这里esp先入栈,随后的xor等清空寄存器,然后又push进去了Let`sstarttheCTF:的字符。下面提醒调用了sys_write函数,即调用80h中断的四号程序sys_write显示
- 2024-11-19从汇编看函数调用传参过程
1示例代码#include<stdio.h>intfunc(intparam1,intparam2,intparam3){intvar1=param1;intvar2=param2;intvar3=param3;printf("var1=%d,var2=%d,var3=%d",var1,var2,var3);returnvar1;}
- 2024-11-19网络安全协议之IPsec
简介IPSec(Internet协议安全)是一个工业标准网络安全协议,工作在OSI模型的第三层,即网络层,为IP网络通信提供透明的安全服务,可使TCP/IP通信免遭窃听和篡改,可以有效抵御网络攻击,同时保持易用性。IPSec是一种端到端的安全模式,通信数据由发送方加密,接收方解密,网络中其他的节点和主
- 2024-11-18ESP32蓝牙学习--GATT协议学习
前言在了解了基础的蓝牙相关概念后,接下来通过学习其GATTServer的例程,了解其如何通过蓝牙注册GATT服务来收发数据。GATTServer例程解析图中可以看出,官方的例程当中,gatt_server和gatt_server_service_table两个例程都是用于GATT服务器创建的,二者区别在于:gatt_server:主要展
- 2024-11-17堆栈图
一、1、找到画堆栈图从401168开始画,ctrl+g出来一个弹窗,在弹窗上输入要找到哪一行输入0x401168,他会直接跳转2、在那一行f2下断点点开始运行让cpu运行到该行停止(画堆栈图要关注栈底EBP,栈顶ESP两个寄存器)(1)调用前(2)push2:栈顶减4,2被压入,为压栈push2之后栈顶减了4,2被压入,为压栈
- 2024-11-17使用 ESP-IDF 进行esp32-c3开发第二步:Linux 和 macOS 平台工具链的标准设置
先上文档,后面实践Linux和macOS平台工具链的标准设置[English]详细安装步骤请根据下方详细步骤,完成安装过程。设置开发环境以下是为ESP32-C3设置ESP-IDF的具体步骤。第一步:安装准备第二步:获取ESP-IDF第三步:设置工具第四步:设置环境变量第五步:开始使用ES
- 2024-11-13【嵌入式】ESP32开发(一)ESP-IDF概述
文章目录1前言2IDF环境配置3在VSCode中使用IDF3.1使用ESP-IDF例程3.2底部按钮的作用【重要!】3.3高级用法4ESP-IDF框架分析5从零开始创建一个项目5.1组件(component)6主要参考资料7遇到的一些问题与解决办法8对于ESP-IDF开发的一些感受
- 2024-11-11ESP32开发__搭建VSCode开发环境试编译项目
目录1.概述2.安装相关必要插件3.VSCode及相关扩展件安装3.1.VSCode3.2.ESP-IDFVisualStudioCodeExtension3.3.ConfigureESP-IDF4.Demo试运行4.1.打开工程4.2.连接设备并配置端口4.3.配置工程4.3.1. 设置“目标”芯片4.3.2.menuconfig配置工程选
- 2024-11-117-35 求给定精度的简单交错序列部分和
本题要求编写程序,计算序列部分和1-1/4+1/7-1/10+...直到最后一项的绝对值不大于给定精度eps。输入格式:输入在一行中给出一个正实数eps。输出格式:在一行中按照“sum=S”的格式输出部分和的值S,精确到小数点后六位。题目保证计算结果不超过双精度范围。输入样
- 2024-11-09超详细C语言函数栈帧的创建和销毁的过程讲解,细节满满
目录一、ebp和esp二、main函数的函数栈帧(解释反汇编)(1)、push操作(2)、mov操作(3)、sub操作(4)、然后又是三个push操作(5)、lea操作:(6)、接着四步操作:三、如何创建的变量(创建变量的反汇编)(1)、第一个inta=10:此时如果没有给a变量赋值,那么该位置的值就是CCCCCCCC,这就是为什么未
- 2024-11-09函数的栈帧空间创建与销毁全过程(详解~)
目录一.什么是函数栈帧?二.理解函数栈帧的创建能解决哪些问题?三.创建函数栈帧空间的之前认知3.1什么是栈3.2认识相关寄存器3.3汇编指令四.创建和销毁全过程4.1预备知识4.1.1调用堆栈4.2打开反汇编4.3函数栈帧创建编辑4.4函数栈帧销毁一.什么是函数栈
- 2024-11-07PWN(栈溢出漏洞)-原创小白超详细[Jarvis-level0]
题目来源:JarvisOJ https://www.jarvisoj.com/challenges题目名称:Level0题目介绍:属于栈溢出中的ret2text意思是Returntotext当程序中有可利用的危险函数控制程序的返回地址到原本的函数实现溢出利用 基础过程(看个人习惯):运行程序查看程序流程file查看文件内存
- 2024-11-07使用 vscode 简单配置 ESP32 连接 Wi-Fi 每日定时发送 HTTP 和 HTTPS 请求
最新博客文章链接文字更新时间:2024/11/07由于学校校园网,如果长时间不重新登陆的话,网速会下降,所以想弄个能定时发送HTTP请求的东西。由于不想给路由器刷系统,也麻烦。就开始考虑使用局域网内的服务器,不过由于服务器没有Wi-Fi模块,也不想搞USB无线wifi网卡,就想着干脆用单
- 2024-10-30ESP32-LVGL驱动框架
问题背景最近在调试一个新屏幕的过程中,使用LVGL官方的lvgl_esp32_driver驱动,在我这个分辨率比较大(454x454)的屏幕下会出现,在分配完成buff后,若buff过大会出现,在刷屏的时候会这种警告。txdatatransfer>hardwaremaxsupportedlen研究了底层代码后发现在spi_master.c文件
- 2024-10-27ESP32 使用 MAX98357 调用ESP-A2DP库播放蓝牙音乐
ESP32-A2DP 库github链接:https://github.com/pschatzmann/ESP32-A2DP 硬件:ESP32+MAX989357+喇叭代码:(注意将其中的I2S引脚定义为自己的MAX98357相连接的引脚)最佳实践:在VSCode的PlatformIO的Library,查找ESP32-A2DP,然后将其安装进工程中。 #include"ESP_I2S.h"
- 2024-10-27【保姆级IDF】ESP32最强WIFI模式:AP+STA,实现数据中继站
Tips:抛砖引玉,本文记录ESP32学习过程中遇到的收获。如有不对的地方,欢迎指正。目录1.前言2.实现功能3.代码思路4.代码讲解4.1AP_STA模式下的其他设备接入以及接入其他设备的WIFI配置4.2自身作为AP和STA模式下的不同套接字的创建及配置4.3WIFI事件中被调用的接受
- 2024-10-25ESP-IDF搭建项目的目录结构
ESP-IDF中组织项目,下面我将详细介绍ESP-IDF项目的目录结构,并指导您如何设计项目,以便整合之前提供的代码。目录ESP-IDF项目目录结构概述创建ESP-IDF项目项目目录结构详解3.1根目录3.2main目录3.3components目录(可选)配置文件详解4.1CMakeLists.txt文件4.2
- 2024-10-24【保姆级IDF】ESP32使用WIFI作为AP模式TCP通信:连接客户端+一对多通信
#1024程序员节|征文#Tips:抛砖引玉,本文记录ESP32学习过程中遇到的收获。如有不对的地方,欢迎指正。1.前言 关于ESP32的WIFI这部分基础知识,在网上可以找到许多,包括TCP协议、套接字等等,博主之前的文章也有介绍,在此本文不再赘述,直接讲清楚标题功能如何实现,并说明
- 2024-10-24二进制菜鸟的杂谈-调试与pwn
反调试技术NLFlagGlobalPEB的偏移当被调试的时候会有标志位:FLG_HEAP_ENABLE_TAIL-CHECK()FLG_HEAP_ENABLE_FREE_CHECK()FLG_HEAP_VALIDATE_PARAMETERS()一般为:moveax,fs:[30h]moval,[eax+68h]moval,70hcmpal,70h其实是因为isDebugger被检测到了进而影响
- 2024-10-23汇编语言
寄存器RIP存放下一条指令的偏移地址RSP存放当前栈帧的栈顶偏移地址RBP存放当前栈帧的栈底偏移地址RAX通用寄存器。存放函数的返回值汇编实际中执行指令时,EIP已经移动到下一行了cmp语句cmpa1,0x61suba1,0x61本质a1-0x61a1=a1-0x61不同a1不会赋值a1
- 2024-10-20101 - Lecture 9
CPU的内部操作,包括寄存器、堆栈和指令执行过程CPURegistersCPU寄存器•CPU寄存器是CPU内用于临时存储数据的特殊存储器。寄存器的操作速度比主存储器(内存)更快。Pentium处理器中各种寄存器,包括通用寄存器、基地址寄存器、指令指针(EIP)等。CPUstatusflagsCPU状态标志(F
- 2024-10-17mqtt与云服务器
mqtt目录mqtt回顾云服务器的操作MQTT协议--将官方库移植到工程--应用--可能会出现的问题:完整代码回顾--昨天我们写的AT指令是直接写在main中,在while循环的外面,没有很好的封装,所以今天我们写一个函数来封装AT指令 //要保证能在while循环中运行uint8_tstate
- 2024-10-17ESP32-IDF GPIO 专题
目录一、基本介绍1、配置结构体2、API2.1gpio_config2.2gpio_reset_pin2.3gpio_set_intr_type2.4gpio_intr_enable2.5gpio_intr_disable2.6gpio_set_level2.7gpio_get_level2.8gpio_set_direction2.9gpio_set_pull_mode2.10gpio_isr_register2.11gpio_install
- 2024-10-14esp32_lvgl_driver小缺陷
问题背景最近在调试一个新屏幕的过程中,使用LVGL官方的lvgl_esp32_driver驱动,在我这个分辨率比较大(454x454)的屏幕下会出现,在分配完成buff后,若buff过大会出现,在刷屏的时候会这种警告。txdatatransfer>hardwaremaxsupportedlen研究了底层代码后发现在spi_master.c文件