Flask 框架的 XSS 和 SSTI 漏洞

Flask 是什么

Flask 是一个使用 Python 编写的轻量级 Web 应用框架,模板引擎使用 Jinja2

Flask 的基本使用

安装 Flask 库

1
python3 -m pip install flask

第一个 Hello, world!

1
2
3
4
5
6
7
8
9
10
11
from flask import Flask

app = Flask(__name__)

@app.route('/')
def Hello_world():
return 'Hello, world!'

if __name__ == '__main__':
# 若在 IDE 里调试,把 debug 设置为 False
app.run(debug=True, port=8080)
阅读全文 »

记一道简单的 PHP 反序列化

题目来源与环境搭建

题目来源

second-xupt-ctf pop

环境搭建

  1. 使用 Docker 和 Docker Compose 搭建,Docker 使用教程见 Docker — 从入门到实践

    关于 Docker 的一个很不错的视频(快速入门)

    https://www.bilibili.com/video/BV1s54y1n7Ev/

  2. 修改docker-compose.yml的端口配置
    1
    vim docker-compose.yml

    把 ports 里的 8085 修改成你想要的端口

  3. 使用以下命令构建 Docker 镜像

    进入题目根目录下运行命令(可先对 Docker 进行换源)

    1
    docker build -t pop .
  4. 使用以下的命令创建运行容器

    进入题目根目录下运行命令

    1
    docker-compose up -d
阅读全文 »

本文介绍如何在 Ubuntu 下安装 LAMP 和 LNMP 环境

简介

LAMP:即 Liunx 下 Apache,MySQL,PHP 环境
LNMP:即 Linux 下 Nginx,MySQL,PHP 环境

搭建环境:Ubuntu 20.04 LTS

若无特殊说明,请使用 root 身份来运行本文中的命令,本文只介绍基本的环境搭建,不包括网站的搭建和管理

阅读全文 »

Linux 下的环境变量

Linux 下添加环境变量

如果你想像在 Windows 下为用户添加环境变量,你可以这样做:

  1. 进入用户的环境配置文件.bashrc中(~ 表示的是用户的家目录,比如我用 paoka 登录,那么 ~ 就是/home/paoka

    1
    vim ~/.bashrc

    注意:如果你使用的 shell 不是 bash ,而是 zsh(例如在 Kali Linux 下),那么你就要这样做,因为配置文件不同:

    1
    vim ~/.zshrc
  2. 进行修改,首先按下 G 切换到最后一行,按下 i 进入插入模式,新建一行输入:

    1
    export PATH="/opt/miniconda3/bin:"$PATH

    这里我以/opt/miniconda3/bin为例,你可以改成你自己的,但要注意在路径后添加冒号,在最后添加$PATH
    然后按下shift + ;输入wq回车,这样就修改完成了

    $PATH 是一个变量,PATH="/opt/miniconda3/bin:"$PATH是在原有的 $PATH 前添加/opt/miniconda3/bin:
    因为不同的路径在 Linux 里用冒号分割,所以要在最后添加冒号

  3. 到这里还没结束,你还要执行下面的命令让修改生效

    1
    source ~/.bashrc 

    注意:如果你使用的 shell 是 zsh:

    1
    source ~/.zshrc 

    source 命令把配置文件的内容读取到目前的 shell 环境里,也可以使用小数点来代替 source 命令
    其实你也可以关闭当前的 shell 重新打开一个 shell 或者注销重新登陆来使之生效(某些情况下会不方便),这是因为当你因为打开 shell 时,shell 会自动读取配置文件的内容(注销重新登录也是关闭 shell 后重新打开了一个 shell 嘛)

    到此为止,你的环境变量就配置成功了,这个环境变量只对你当前的用户生效,下面我会具体说明环境变量

阅读全文 »