环境创建 1 2 3 conda create -n flask python=3.11 conda activate flask pip install flask 关于flask Flask是一个使用python编写的轻量级的Web应用框架,其WSGI工具采用werkzeug,模板引擎使用jinja2,后面的ssti基本都围绕这flask进行。 简单案例 下面简单的创建一个flask应用 1 2 3 4 5 6 7 8 9 10 11 from flask import Flask app = Flask(__name__) # 路由 @app.route("/") d
阅读全文 »

PHP中的类 1 2 3 4 5 6 7 8 9 class Dog { var $name; var $species = "dog"; function call() { echo "woof woof"; } } 上面定义了一个Dog类,并且他又两个成员变量,分别是name和species,然后还有一个成员方法call(),可以通过下面代码去创建和使用 1 2 3 4 5 6 7 8 # 创建对象 $dog1 = new Dog(); # 给dog1设置name属性 $dog1->name = "luck"; # 调用
阅读全文 »

常见命令执行函数 system 1 2 3 4 5 6 7 8 可以直接把命令丢给system,他会直接运行并且输出返回的内容。 exec() 1 2 3 4 5 6 7
阅读全文 »

畸形的爱 攻击者ip地址1 nginx日志 31网段之外的基本都是内网ip,所以不考虑 palu{192.168.31.240} 攻击者ip地址2 这道题目没做出来,主要原因是光做主线了,这个简单过了一下,没有在意到docker容器,在webserver中有一个webdata容器,开启会报错,原因是在题目创建时绑定了一个当时主机的ip,复现的虚拟机因为环境问题无法从挂起状态恢复导致虚拟机的ip被本地的dhcp更换了,所以开启不了,具体报错如下 1 2 3 root@ubuntu:/var/www/html# docker start WebData Error response fr
阅读全文 »

栈基础知识 栈基础概念 栈是程序运行时的一块区域,主要用于存储临时数据、管理函数调用和返回地址。他有很多的特点,他是一种后进先出的数据结构,操作主要有压栈与出栈两种,并且在程序的内存中他的数据是从高地址往低地址走的。简单说,就是程序运行时的“临时记事本”。 栈顶与栈底 对于栈有两个比较重要的寄存器,一个是栈顶一个是栈顶,在32位操作系统中,寄存器EBP表示栈底,ESP表示栈顶。栈底代表当前栈的最开始的位置,栈顶很好理解,就是栈的最顶部,在操作栈的时候主要分为压栈和出栈,具体是下面两个汇编指令 1 2 push ebx # 压栈,ebx的数据压入栈顶,并且ESP(栈顶) + size
阅读全文 »

网站从Typecho&Handsome迁移到Hexo&Next,后面会把质量较高的文章陆续迁移到当前网站。

阅读全文 »

问题复现 博主用的是雷电模拟器+VMware-Ubuntu虚拟机,雷电模拟器有自己的内部网络,然后虚机用的网络模式也是NAT,因为对这个安卓模拟器的网络结构不是很了解,我尝试直接通过虚机去adb连接NAT内宿主机的IP,命令如下 1 2 boychai@lab:~$ sudo adb connect 10.0.0.1:5555 failed to connect to 10.0.0.1:5555 连接是失败的,也尝试过通过打开雷电模拟器的远程ADB调试,依旧是失败的。 解决方案 这里找到了一个通用的解决方案,只要是两个设备网络可以联通即可实现adb的连接,不去别于设备是否为虚机、模
阅读全文 »

写在前面 相关教程: https://www.bilibili.com/video/BV1wT411N7sV 相关帖子: https://www.52pojie.cn/thread-1706691-1-1.html 相关附件可以从相关帖子中拿到地址,这里不多说环境相关的内容了。 广告展示 打开软件的第三关,打开之后有一个等待三秒的提示如下图 提示完毕之后的内容是一号弹窗 广告去除 给爷停三秒 在MT管理器的Activity的记录中,找到下面内容 这代表当前等待的这个页面的名字是AdActivity,我们通过jadx-gui找到这个位置 查看这个函数发现下面java代码 1 2 3
阅读全文 »

写在前面 没想到我有一天会去研究汇编,这是我从未设想的道路。😭 学习环境安装 项目地址: https://github.com/HaiPenglai/bilibili_assembly/ 教学视频: https://www.bilibili.com/video/BV1eG4y1S7R5 安装配置具体可以参考视频,非常详细,本文不多介绍环境的安装与配置。 基础指令与寄存器 Debug命令 概述 Debug是DOS、Windows都提供的实模式(8086 方式)程序的调试工具。使用它,可以查看CPU各种寄存器中的内容,内存的情况和机器码级跟踪程序的运行。 功能 * R命令 查看、改变CP
阅读全文 »

前言 基于组件理解文章,这里单独做一个对于openstack网络组件Neutron的理解,本文只是我自己对于它的理解,因为网上的资料比较有限,本文只能代表我个人理解,有不对的地方欢迎大佬指正。我的环境是Linux Bridge + VXLAN的形式,具体的配置体现可以参考搭建文章的下面内容 官方文档-1: https://docs.openstack.org/neutron/stein/install/controller-install-rdo.html 官方文档-2: https://docs.openstack.org/neutron/stein/install/controller-
阅读全文 »