java回显字符_java的xxe无回显的带外传输

xxe无回显的情况下,正常的读取无特殊符号文件的时候可以只用常规的file协议来进行读取

比如payload:

%xd;

]>

&bbbb;

引入的外部dtd内容为如下:

">

%demo;

返回的内容:如果正常的内容是可以的,如果带有特殊符号的话 可以用http和ftp的带外传输方法

比如ftp的带外传输

payload:

%xd;

]>

&bbbb;

外部引入的dtd内容为如下:

">

%demo;

在读取的时候还需要架设一个本地的FTP服务器

没有深入的学习过java,这里只说自己遇到xxe无回显环境的坑

在使用ftp 进行 oob 时,对版本有限制, jdk版本 小于 7u141 和 小于 8u162 才可以读取整个文件

当FTP 遇到斜杠符号表示cd到子目录,什么意思呢?

'/' 当遇到该符号的时候,FTP读取返回的数据就会表示成 'CWD'

总结:

1、所有的【\r】 都会被替换为【\n】

2、如果不包含特殊字符,低版本 ftp 可以读多行文件,高版本 ftp 只可以读单行文件,全版本 http 都只可以读单行文件,所以这里通用的方法就是FTP来进行读取

3、版本限制是 <7u141 和 <8u162 才可以读取整个文件

4、如果含有特殊字符 【%】 【&】 会完全出错

5、如果含有特殊字符 【’】 【”】 可以稍微绕过

6、如果含有特殊字符 【?】,对 http 无影响,对 ftp 会造成截断

7、如果含有特殊字符【/】, 对 http 无影响,对 ftp 需要额外增加解析的 case

8、如果含有特殊字符【#】,会造成截断

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值