查看: 11478|回复: 2

黑客攻防技术之编码

[复制链接]
发表于 2022-3-17 02:34:29 | 显示全部楼层 |阅读模式
之前的文章提到了,应用程序需要将用户的输入看作是不安全的输入,是安全正确的做法,其中一种方式就是将用户输入的内容进行转义或编码,接下来就介绍一下web应用程序对其数据采用的几种不同的编码方案。

(1)URL编码

URL编码只允许US-ASCII字符集中的可打印字符(就是ASCII代码在0x20-0x7e范围内的字符)。所有的URL编码的字符都以%为前缀,其后是这个字符的两位十六进制ASCII代码。以下是一些常见的URL编码字符:

%3d  代表  =

%25  代表  %

%20  代表空格

%0a  代表换行

%00  代表空字节

注:编码字符“+”代表的是URL编码的空格

(2)unicode编码

1.16位unicode编码的工作原理与URL编码类似,16位unicode编码字符以%u为前缀,其后为这个字符的十六进制unicode码点。

2.UTF-8是一种长度可变的编码标准。它使用一个或几个字节表示每个字符。UTF-8编码的多字节字符以%为前缀,其后用十六进制表示每个字节。

(3)HTML编码

HTML编码是一种用于表示问题字符已将安全并入HTML文档的方案。

(4)BASE64编码

base64编码仅用一个可打印的ASCII字符就可以转换为任何二进制数据。base64编码将输入数据转换为3个字节块,每个块被分为4段,每个段6个数据位。这6个数据位只有64种不同的排列,因此每个段可使用一组64个字符表示。如果最后的输入数据块不能构成3段输出数据,就会用一个或两个等号(=)补足输出。

(5)十六进制编码

许多应用程序在传输二进制数据时直接使用十六进制编码,使用ASCII字符表示十六进制数据块。

例如:daf进行十六进制编码结果为646166

首先将daf在ASCII表中找到对应的十进制数分别为100、97、102,在将他们的十进制换成十六进制得出daf的十六进制编码。
回复

使用道具 举报

发表于 2022-3-30 11:46:47 | 显示全部楼层
看看,了解一下
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

指导单位

江苏省公安厅

江苏省通信管理局

浙江省台州刑侦支队

DEFCON GROUP 86025

旗下站点

邮箱系统

应急响应中心

红盟安全

联系我们

官方QQ群:112851260

官方邮箱:security#ihonker.org(#改成@)

官方核心成员

Archiver|手机版|小黑屋| ( 沪ICP备2021026908号 )

GMT+8, 2025-3-7 07:04 , Processed in 0.021626 second(s), 12 queries , Gzip On, MemCache On.

Powered by ihonker.com

Copyright © 2015-现在.

  • 返回顶部