极客大挑战 2019 RCE ME __0X01-0X0F

打开题目,源码如图,看起来很简单:

<?php

阅读更多 >>

ssti-flak框架

初始ssti漏洞

SSTI(Server-Side Template Injection) 服务端模板注入,就是服务器模板中拼接了恶意用户输入导致各种漏洞。通过模板,Web应用可以把输入转换成特定的HTML文件或者email格式

阅读更多 >>

ssi服务端包含注入

​ ssi服务端包含注入

SSI 注入全称Server-Side Includes Injection,即服务端包含注入。SSI 是类似于 CGI,用于动态页面的指令。SSI 注入允许远程在 Web 应用中注入脚本来执行代码。

阅读更多 >>

从网站源码中寻找后门脚本

import os
import requests
import re
import threading
import time

阅读更多 >>

MRCTF2020-Ezpop

MRCTF2020-Ezpop

打开网页,代码如下:

Welcome to index.php

阅读更多 >>

0CTF 2016-piapiapia

0CTF 2016-piapiapia

代码审计还有PHP反序列化一直是我的硬伤,所以想借助这个题目来理一理思路。

阅读更多 >>

SUCTF2019-python-nginx

题目源码:

@app.route('/getUrl', methods = ['GET', 'POST']) 
def getUrl(): 
  url = request.args.get("url") 

阅读更多 >>

命令执行

php调用外部程序常用的函数:
system()—执行shell命令也就是向dos发送一条指令。
shell_exec() — 通过 shell 环境执行命令,并且将完整的输出以字符串的方式返回。
exec() —执行外部程序。
passthru() — 执行外部程序并且显示原始输出。

阅读更多 >>

escapeshellarg+escapeshellcmd 函数漏洞

escapeshellarg(string $arg): string
escapeshellarg() 将给字符串增加一个单引号并且能引用或者转码任何已经存在的单引号,这样以确保能够直接将一个字符串传入 shell 函数,并且还是确保安全的。对于用户输入的部分参数就应该使用这个函数。shell 函数包含 exec(), system() 执行运算符 。
escapeshellcmd
escapeshellcmd() 对字符串中可能会欺骗 shell 命令执行任意命令的字符进行转义。 此函数保证用户输入的数据在传送到 exec() 或 system() 函数,或者 执行操作符 之前进行转义。

阅读更多 >>

nmap结合代码执行

选项 解释
-oN 标准保存
-oX XML保存
-oG Grep保存
-oA 保存到所有格式
-append-output 补充保存文件
-F 实行一次快速扫描
选项-oG
将结果Grep保存
nmap -F -oG test.txt 192.168.23.1
nmap命令中 有一个参数-oG可以实现将命令和结果写到文件
?host=’ -oG hack.php ‘
传入的参数经过了escapeshellarg与escapeshellcmd两个函数的处理,导致在hack.php’这样的情况下会产生hack.php\,解决办法就是在单引号前加空格

阅读更多 >>