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

做投资要关注哪些网站百度网站怎么用

做投资要关注哪些网站,百度网站怎么用,动漫制作专业专科学校,如何确认wordpress使用什么主题什么是python格式化字符串漏洞 python中,存在几种格式化字符串的方式,然而当我们使用的方式不正确的时候,即格式化的字符串能够被我们控制时,就会导致一些严重的问题,比如获取敏感信息 python常见的格式化字符串 百…

什么是python格式化字符串漏洞

python中,存在几种格式化字符串的方式,然而当我们使用的方式不正确的时候,即格式化的字符串能够被我们控制时,就会导致一些严重的问题,比如获取敏感信息

python常见的格式化字符串

百分号形式进行格式化字符串

>>> name = 'Hu3sky'
>>> 'My name is %s' %name
'My name is Hu3sky'

使用标准库中的模板字符串

string.Template()

>>> from string import Template
>>> name = 'Hu3sky'
>>> s = Template('My name is $name')
>>> s.substitute(name=name)
'My name is Hu3sky'

使用format进行格式化字符串

format的使用就很灵活了,比如以下
最普通的用法就是直接格式化字符串

>>> 'My name is {}'.format('Hu3sky')
'My name is Hu3sky'

指定位置

>>> 'Hello {0} {1}'.format('World','Hacker')
'Hello World Hacker'
>>> 'Hello {1} {0}'.format('World','Hacker')
'Hello Hacker World'

设置参数

>>> 'Hello {name} {age}'.format(name='Hacker',age='17')
'Hello Hacker 17'

百分比格式

>>> 'We have {:.2%}'.format(0.25)
'We have 25.00%'

获取数组的键值

>>> '{arr[2]}'.format(arr=[1,2,3,4,5])
'3'

用法还有很多,就不一一列举了
这里看一种错误的用法
先是正常打印

>>> config = {'SECRET_KEY': 'f0ma7_t3st'}
>>> class User(object):
...     def __init__(self, name):
...             self.name = name
>>> 'Hello {name}'.format(name=user.name)
Hello hu3sky

恶意利用

>>> 'Hello {name}'.format(name=user.__class__.__init__.__globals__)
"Hello {'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <class '_frozen_importlib.BuiltinImporter'>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' (built-in)>, 'config': {'SECRET_KEY': 'f0ma7_t3st'}, 'User': <class '__main__.User'>, 'user': <__main__.User object at 0x03242EF0>}"

可以看到,当我们的name=user.__class__.__init__.__globals__时,就可以将很多敏感的东西给打印出来

Python 格式化字符串漏洞(Django为例) | 离别歌这个里面有很多从的操作实例,我了解到这个是来自XYCTF2025的web-fate

#!/usr/bin/env python3
import flask
import sqlite3app = flask.Flask(__name__)def db_search(code):with sqlite3.connect('database.db') as conn:cur = conn.cursor()cur.execute(f"SELECT name FROM country WHERE code=UPPER('{code}')")found = cur.fetchone()return None if found is None else found[0]@app.route('/')
def index():return flask.render_template("index.html")@app.route('/api/search', methods=['POST'])
def api_search():req = flask.request.get_json()if 'code' not in req:flask.abort(400, "Empty country code")code = req['code']if len(code) != 2 or "'" in code:flask.abort(400, "Invalid country code")name = db_search(code)if name is None:flask.abort(404, "No such country")return {'name': name}if __name__ == '__main__':app.run(debug=True)

这是题目源码,是一个几乎不可能绕过的sql注入

但是这里的传参使用的是flask.request.get_json(),这个方法没有对传入的类型做检查。因此,我们可以传入非字符串类型的变量

在python中,当我们使用f-string直接传入非字符串参数时,就会被强转为字符串

所以这题可以这样解:

{"code":["1') UNION SELECT FLAG FROM FLAG --","1"]}

传入的code为列表,因而可以通过waf(len为2,没有'元素)随后直接被f-string强转,拼入sql语句,如下:

SELECT name FROM country WHERE code=UPPER('["1') UNION SELECT FLAG FROM FLAG --","1"]')

就可以完成一次SQL注入。拿到FLAG表里的FLAG值。


文章转载自:

http://zgRXlHxR.nzhzt.cn
http://GESzS8qN.nzhzt.cn
http://oqqjviQv.nzhzt.cn
http://VOP3MWmi.nzhzt.cn
http://DGWkvrXN.nzhzt.cn
http://w46754Xi.nzhzt.cn
http://DiqTJGOo.nzhzt.cn
http://tyOPIZrr.nzhzt.cn
http://nRw9jnB8.nzhzt.cn
http://T4VXSubI.nzhzt.cn
http://4yl1nrIY.nzhzt.cn
http://pybEWoym.nzhzt.cn
http://hvVU5dFX.nzhzt.cn
http://oSooctUI.nzhzt.cn
http://8WpZiqtM.nzhzt.cn
http://nUBmPyw7.nzhzt.cn
http://Uu9kekM7.nzhzt.cn
http://FLASwBm3.nzhzt.cn
http://rcnGYYrC.nzhzt.cn
http://XQotIP6q.nzhzt.cn
http://QJ5fMUCe.nzhzt.cn
http://LOAjwCn1.nzhzt.cn
http://B9LeOXtD.nzhzt.cn
http://1DQzE2sy.nzhzt.cn
http://ubI081pg.nzhzt.cn
http://sx6NXDJr.nzhzt.cn
http://d2yNLluA.nzhzt.cn
http://RSrnVLsG.nzhzt.cn
http://bwusP5wG.nzhzt.cn
http://Xlymzo8V.nzhzt.cn
http://www.dtcms.com/wzjs/757277.html

相关文章:

  • 做网站开发很赚钱吗急招工地土建施工员
  • 制作好网站怎么导入济南营销型网站
  • 网站建设包括啥机关单位建设网站 说明
  • 网站版权 备案icp中文门户网站有哪些
  • 乔拓云智能建站免费注册工信部企业网站备案吗
  • 齐大胜请于果做网站是第几集做网站开发有哪些优点呢
  • 瀑布流 网站 php 源码建个企业营销型网站
  • 沟通交流类网站有哪些精装房软装设计公司
  • 免费直播网站开发无网站网络营销
  • tp5企业网站开发中山网站设计收费标准
  • 网站怎么创建内容wordpress美化编辑插件
  • 程序网站开发html代码雨
  • 好的网站分享如何在网站上做网上亮照
  • 重庆所有做网站的公司有哪些建设银行网站名称怎么写
  • 营销网站建设是什么意思潍坊免费网站制作
  • 网站制作赚钱吗网站策划做啥
  • 学做网站应该看那些书卓越网站建设的优点
  • 江苏省建设工程注册中心网站电子商城网站设计实训报告
  • 佛山网站婚纱摄影网站源码下载
  • 比特币做游戏币的网站网站建设款计入哪个会计分录
  • 长沙品质企业建站服务电话淄博怎么做网站
  • 设计网站官网狗网站建设兆金手指花总
  • 沈阳建网站的公司长沙人才网
  • 吉林省住房与建设厅网站重庆公司办社保需要什么资料
  • 漯河市建设局网站龙华区住房和建设局网站
  • 风险的网站怎么出现动态ip如何做网站
  • 大安移动网站建设网站开发系统架构图
  • 达州大亚网站建设中国建筑装饰设计网
  • 东莞做网站一年费用东营北京网站建设
  • 广州公司建站模板著名建筑设计网站