BUUCTFQuoted-printable1|Quoted-printable编码BUUCTF:https://buuoj.cn/challenges文章目录目录BUUCTFQuoted-printable1 |Quoted-printable编码题目描述:密文:解题思路:flag:Quoted-printable编码:相关阅读CTFWiki题目描述:注意:得到的flag请包上flag{}提交密文:展开代码语言 flag:展开代码语言:TXTAI代码解释那你也很棒哦Quoted-printable编码:Quoted-printable编码是一种二进制数据在Internet上传输时的一种编码方式。 特点Quoted-Printable编码的一个特点是,所有可打印的ASCII字符(十进制值范围为33到126)可以直接用ASCII字符编码来表示,但等号“=”除外。 如果这两个字符出现在行尾,则必须使用Quoted-Printable编码表示。应用Quoted-Printable编码通常用于电子邮件的传输,尤其是在MIME(多用途互联网邮件扩展)标准中。
flag 请包上 flag{} 提交 密文: =E9=82=A3=E4=BD=A0=E4=B9=9F=E5=BE=88=E6=A3=92=E5=93=A6 解题思路: 1、观察密文,结合题目,直接确定为Quoted-printable flag: 那你也很棒哦 Quoted-printable编码: Quoted-printable编码是一种二进制数据在Internet上传输时的一种编码方式。
quoted-printable 如果数据是binary格式的,但是系统又不支持binary格式该怎么办呢? 其中quoted-printable和base64就是两种转换方式。 对于quoted-printable来说,就是将一个8-bit数据用7bit可读的字符来表示。 那么quoted-printable是怎么转换的呢? quoted-printable中,任何 8 位字节值都可以用 3 个字符来进行编码。=后面接两个16进制的数字。 另外Quoted-Printable 编码数据的一行不得超过76个字符。如果超出的话,可以根据需要添加软换行符。软换行符是由在编码行末尾添加=组成,软换行符不会在解码文本中显示为换行符。 base64 除了quoted-printable之外,还有一种常用的Binary-to-text encoding方式,叫做base64。
quoted-printable 如果数据是binary格式的,但是系统又不支持binary格式该怎么办呢? 其中quoted-printable和base64就是两种转换方式。 对于quoted-printable来说,就是将一个8-bit数据用7bit可读的字符来表示。 那么quoted-printable是怎么转换的呢? quoted-printable中,任何 8 位字节值都可以用 3 个字符来进行编码。=后面接两个16进制的数字。 另外Quoted-Printable 编码数据的一行不得超过76个字符。如果超出的话,可以根据需要添加软换行符。软换行符是由在编码行末尾添加=组成,软换行符不会在解码文本中显示为换行符。 base64 除了quoted-printable之外,还有一种常用的Binary-to-text encoding方式,叫做base64。
, objMailBody) do begin ContentType:='text/html;charset=utf-8'; ContentTransfer := 'quoted-printable objMailBody) do begin ContentType := 'text/html;charset=utf-8'; ContentTransfer := 'quoted-printable 发现主要是三个点: Content-Type: text/html; charset="GB2312" Content-Transfer-Encoding: quoted-printable 对于前两个好理解 quoted-printable:将由 US-ASCII 字符集中可打印的字符组成的数据编码。 之所以是中文乱码,原因是添加邮件正文时的字符集与接收邮件客户端的字符集对上。 查看邮件正文: Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable 这样一来肯定就显示乱码了
Content-transfer-encoding的值有5种—-“7bit”、”8bit”、”binary”、”quoted-printable”和”base64”—-其中”7bit”是缺省值,即不用转化的 真正常用是”quoted-printable”和”base64″两种,它们的详细用法,我在明天的笔记中会详细介绍。 7. Part_287491_22998031.1213783671982 Content-Type: text/html; charset=gbk Content-Transfer-Encoding: quoted-printable Content-Transfer-Encoding: base64 和 Content-Type: text/html; charset=gbk Content-Transfer-Encoding: quoted-printable 第二个部分是gbk编码的HTML文本,编码转化格式是quoted-printable。
Content-transfer-encoding的值有5种----"7bit"、"8bit"、"binary"、"quoted-printable"和"base64"----其中"7bit"是缺省值, 真正常用是"quoted-printable"和"base64"两种,它们的详细用法,我在明天的笔记中会详细介绍。 7. Part_287491_22998031.1213783671982 Content-Type: text/html; charset=gbk Content-Transfer-Encoding: quoted-printable Content-Transfer-Encoding: base64 和 Content-Type: text/html; charset=gbk Content-Transfer-Encoding: quoted-printable 第二个部分是gbk编码的HTML文本,编码转化格式是quoted-printable。 [延伸阅读] 1. wikipedia的MIME条目 2. MIME FAQ 3. MIME邮件面面观 (完)
image.png 8.Quoted-printable 题目:=E9=82=A3=E4=BD=A0=E4=B9=9F=E5=BE=88=E6=A3=92=E5=93=A6 Quoted-printable 知识扩充: Quoted-printable可译为“可打印字符引用编码”,编码常用在电子邮件中。 如:Content-Transfer-Encoding: quoted-printable ,它是MIME编码常见一种表示方法! Quoted-printable将任何8-bit字节值可编码为3个字符:一个等号"="后跟随两个十六进制数字(0–9或A–F)表示该字节的数值。 因为Quoted-printable编码简单、方便因此在电子邮件中应用广泛。
缺省为"US-ASCII") : 字符串 如:JMail.Charset = "US-ASCII" (3)ContentTransferEncoding : 字符串 指定内容传送时的编码方式,缺省是"Quoted-Printable 可以选择使用的是"base64", "uuencode" or "quoted-printable" 如:JMail.Encoding = "base64" (6)Log(Jmail创建的日志,前提loging
[QUOTED-PRINTABLE]? = 以上Base64和QUOTED-PRINTABLE(可打印字符引用编码)两种表示方式都可行,但使用新行或空字节等控制字符组合,可以让我们隐藏或删除原始电邮的域名后缀部分,从而允许我们将其替换。
buuoj.cn) 打开附件,得到如下信息: %66%6c%61%67%7b%61%6e%64%20%31%3d%31%7d 使用在线解码工具,结果如下所示: flag{and 1=1} ---- Quoted-Printable 编码 Quoted-Printable编码方法,适合所传输数据中,只有少量的非ASCII编码,用一个等号(=)后面加两个数字字符来表示一个非ASCII码字符。 Quoted-Printable 题目:BUUCTF在线评测 (buuoj.cn) 打开附件,得到如下信息: =E9=82=A3=E4=BD=A0=E4=B9=9F=E5=BE=88=E6=A3=92
— Quoted-printable Quoted- printable也是一种将二进制数据转换成可打印的ASCII字符的编码方式,它对ASCII字符不进行转换,只对非ASCII字符的数据进行编码转 每个非ASCII字符的字节数据,都被转换成一个”=”号后跟这个字节的十六进制数据,例如,“ab中国”的Quoted-printable编码结 果为“ab=d6=d0=b9= fa”。 显然,由于”=”号在Quoted-printable编码中具有的特殊意义,所以,原始数据中的”=”号字符也需要进行编码转换,用“=3d” 表示。 对一大段数据进行Quoted-printable编码时,可以在编码结果中的适当位置加入回车换行,在回车换行前需要额外再加入一个“=”字符,以表示后 面的换行是因编码而造成的软回车,而非原始数据中原有的回车换行 例如,对于下面一段Quoted-printable编码后的数据: =D5=E2=CA=C7=CD=A8=D0=C5=B5=C4=B3=CC=D0= =F2, =C7=EB=D6=B8=BD=CC!
"Q"表示Quoted-Printable编码,它将非ASCII字符编码为"="后跟两个十六进制数字的形式。 "B"表示Base64编码,它将数据编码为一系列ASCII字符。 举个栗子: 如果将shell.jsp通过Quoted-Printable编码方式为=?utf-8?Q?=73=68=65=6c=6c=2e=6a=73=70?
Content-Type: text/html; charset="ISO-8859-1"
; Content-Transfer-Encoding:表示的是该文件的编码类型;
;一般有两种:一种是文本类型的一般使用”QUOTED-PRINTABLE ”;
;另一种是二进制文件一般使用”BASE64”
Content-Transfer-Encoding: QUOTED-PRINTABLE
;以下是正文
... text of the HTML logo2">
Example of a copyright sign encoded with Quoted-Printable //根据不同的文件后缀名定义编码方式
class TransferEncoding
{
public const string QUOTED_PRINTABLE = "quoted-printable
默认的是“Quoted-Printable”。 有效的选项是“base64”或“quoted-printable”。
item_results[3])=="base64"){ $item_results[5] = base64_decode($item_results[4]); } if(trim($item_results[3])=="quoted-printable item_results[3])=="base64"){ $item_results[6] = base64_decode($item_results[5]); } if(trim($item_results[3])=="quoted-printable
RFC和IANA的定义,有下面几个transfer encodings方式: Name Reference 7bit [RFC2045] 8bit [RFC2045] binary [RFC2045] quoted-printable 对于普通的SMTP服务器来说,可以支持7bit、quoted-printable和base64这三种编码方式。
无论什么样的字符都会全部被编码,因此不像Quoted-printable 编码,还保留部分可打印字符。所以,它的可读性不如Quoted-printable编码!
返回字符的 ASCII 码值 parse_str — 将字符串解析成多个变量 print — 输出字符串 printf — 输出格式化字符串 quoted_printable_decode — 将 quoted-printable 字符串转换为 8-bit 字符串 quoted_printable_encode — 将 8-bit 字符串转换成 quoted-printable 字符串 quotemeta — 转义元字符集
Quoted-printable 本题提供的文本内容如下,提示为 Quoted-printable 编码。 =E9=82=A3=E4=BD=A0=E4=B9=9F=E5=BE=88=E6=A3=92=E5=93=A6 Quoted-printable 编码每三位表示一字节的数据,等号后即为两位十六进制数,可直接对应于该字节的数据