BUUCTF-MD5强弱比较-MD5()的万能密码-tornado框架注入-中文电码

这篇具有很好参考价值的文章主要介绍了BUUCTF-MD5强弱比较-MD5()的万能密码-tornado框架注入-中文电码。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

第六周 第三次

目录

学习到的知识

1.MD5强弱比较可以都可以使用数组绕过

2.基于MD5()的万能密码    ffifdyop

WEB

[BJDCTF2020]Easy MD5

​编辑[护网杯 2018]easy_tornado

Crypto

信息化时代的步伐

凯撒?替换?呵呵!

Misc

神秘龙卷风


学习到的知识

1.MD5强弱比较可以都可以使用数组绕过

2.基于MD5()的万能密码    ffifdyop

WEB

[BJDCTF2020]Easy MD5

BUUCTF-MD5强弱比较-MD5()的万能密码-tornado框架注入-中文电码

 打开环境 什么都没有 输入任何也都没有反应 我们进行抓包

BUUCTF-MD5强弱比较-MD5()的万能密码-tornado框架注入-中文电码

 发现查询语句

我们想到sql注入

发现md5函数 我们进行搜索

md5(1,2)

1:是要进行计算的字符串
2:可选  是TRUE 就是将计算完的数字进行16位字符二进制输出
        是FALSE 就是将计算完的数字进行32位字符十六进制输出

所以我们明白 我们需要输入一个能够将 16位二进制变为sql注入语句的

我们想到万能密码

在mysql中  对于字符串

''or'1xxxxxx' ---->True
''or'0xxxxxx' ---->False

所以我们要找到一个字符串 转换为hex 后再变为字符能为'or'非0

ffifdyop

变为hex后为

276F722736C95D99E921722CF9ED621C

转为字符串后

'or'6É]é!r,ùíb

BUUCTF-MD5强弱比较-MD5()的万能密码-tornado框架注入-中文电码

 所以我们输入这个字符串

BUUCTF-MD5强弱比较-MD5()的万能密码-tornado框架注入-中文电码

 查看源代码

BUUCTF-MD5强弱比较-MD5()的万能密码-tornado框架注入-中文电码

发现弱比较

使用数组绕过

MD5绕过(强弱类型比较)_md5弱类型比较_陈wonton的博客-CSDN博客

?a[]=1&b[]=2

BUUCTF-MD5强弱比较-MD5()的万能密码-tornado框架注入-中文电码

 发现MD5强比较

继续使用数组绕过

param1[]=1&param2[]=3

得到flag文章来源地址https://www.toymoban.com/news/detail-411325.html

[护网杯 2018]easy_tornado

这道对我来说特别新 并且是边看边做

本质是 SSTI注入

并且 题目也提示我们了

tornado是 python编写的框架

类似于后端渲染

sql注入是用户输入的代码
SSTI注入是框架的注入

所以我们开始答题

BUUCTF-MD5强弱比较-MD5()的万能密码-tornado框架注入-中文电码

打开环境 一个一个看过去

BUUCTF-MD5强弱比较-MD5()的万能密码-tornado框架注入-中文电码

 在每一个url上面都有一个 hash 然后这个文件就给我们是怎么计算哈希的

我们现在需要找 cookie_secret这个的数值

然后 我们搜索 发现cookie_secret这个是在tornado框架有的文件

在handler.settings 文件下

所以我们寻找注入点

当我们把hash值改变后得到

BUUCTF-MD5强弱比较-MD5()的万能密码-tornado框架注入-中文电码

 我们看看更改error

BUUCTF-MD5强弱比较-MD5()的万能密码-tornado框架注入-中文电码

 url改什么 他都会返回什么 所以我们找到注入点了 我们在这上面进行框架注入

注意 这个框架注入需要用{{}}来注入

error?msg={{handler.settings}}

BUUCTF-MD5强弱比较-MD5()的万能密码-tornado框架注入-中文电码

 得到了数值 然后我们进行计算

import hashlib
hash = hashlib.md5()

filename='/fllllllllllllag'
cookie_secret="b2ab97ba-5c7a-4fff-a8f5-c459b76e6b8a"
hash.update(filename.encode('utf-8'))
s1=hash.hexdigest()
hash = hashlib.md5()
hash.update((cookie_secret+s1).encode('utf-8'))
print(hash.hexdigest())

然后构造

file?filename=/fllllllllllllag&filehash=c446c58655463f690c65a78092d75fc3

得到flag

[护网杯 2018]easy_tornado WriteUp(超级详细!)_lunan0320的博客-CSDN博客

Crypto

信息化时代的步伐

得到新的加密方法 中文电码

中文电码查询 - 中文电码转换 - 中文电码对照表

BUUCTF-MD5强弱比较-MD5()的万能密码-tornado框架注入-中文电码

凯撒?替换?呵呵!

我们进行比对 MTHJ得到flag

BUUCTF-MD5强弱比较-MD5()的万能密码-tornado框架注入-中文电码

quipqiup - cryptoquip and cryptogram solver

使用这个暴力破解

BUUCTF-MD5强弱比较-MD5()的万能密码-tornado框架注入-中文电码

 发现第一条就是可以读的句子

Misc

神秘龙卷风

暴力破解

Brainfuck - interpreter online

BUUCTF-MD5强弱比较-MD5()的万能密码-tornado框架注入-中文电码

放入网站BUUCTF-MD5强弱比较-MD5()的万能密码-tornado框架注入-中文电码

得到flag

到了这里,关于BUUCTF-MD5强弱比较-MD5()的万能密码-tornado框架注入-中文电码的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 一文搞懂MD5、SHA-1、SHA-2、SHA-3,哪个算法比较安全

    MD5、SHA-1、SHA-2、SHA-3都是比较常见的单向散列函数,这几种单向散列函数都有自己的特性。下面,给大家介绍一下它们的区别,以及MD5、SHA-1、SHA-2、SHA-3的安全性如何,哪种算法比较安全? 一、简介 单向散列函数是指对不同的输入值,通过单向散列函数进行计算,得到固定

    2024年02月15日
    浏览(50)
  • 忘记网站admin密码怎么办?如何修改数据库md5值与admin密码巧解

    如果你不小心忘记了网站管理员账号密码,应该如何找出呢? 小编总结了两种方法: 方法一: 打开数据库,找到admin的user字段,修改user用户名对应的密码md5植。下面是常见md5值替换表: 数据库修改MD5: 14e1b600b1fd579f47433b88e8d85291 密码:123456 e10adc3949ba59abbe56e057f20f883e 密码:

    2024年02月09日
    浏览(70)
  • Java使用MD5加盐对密码进行加密处理,附注册和登录加密解密处理

    在开发的时候,有一些敏感信息是不能直接通过明白直接保存到数据库的。最经典的就是密码了。如果直接把密码以明文的形式入库,不仅会泄露用户的隐私,对系统也是极其的不厉,这样做是非常危险的。 那么我们就需要对这些铭文进行加密。 现在市场是加密的方式已经

    2024年02月02日
    浏览(42)
  • 【北京航空航天大学】【信息网络安全实验】【实验一、密码学:DES+RSA+MD5编程实验】

    1. 通过对DES算法的代码编写,了解分组密码算法的设计思想和分组密码算法工作模式; 2. 掌握RSA算法的基本原理以及素数判定中的Rabin-Miller测试原理、Montgomery快速模乘(模幂)算法,了解公钥加密体制的优缺点及其常见应用方式; 3. 掌握MD5算法的基本原理,了解其主要应用

    2024年02月19日
    浏览(52)
  • Linux shell编程学习笔记44:编写一个脚本,将md5sum命令执行结果保存到变量中,进而比较两个文件内容是否相同

    在  Linux shell编程学习笔记42:md5sum https://blog.csdn.net/Purpleendurer/article/details/137125672?spm=1001.2014.3001.5501 中,我们提到编写一个在Linux系统下比较两个文件内容是否相同的脚本。 基本思路是: 其中有两个难点: 1.文件的md5值的获取 2.md5值的比较 对于第1个难点,我们的解决办法是

    2024年04月10日
    浏览(75)
  • 【MD5】什么是MD5?md5的简要描述

    MD5:英文全称是 Message-Digest Algorithm 5。 中文名为 消息摘要算法第五版。它是消息摘要算法,属于 Hash 算法的一种。 正常情况下,它的结果是一个 长度为 32位 的 16进制 的 字符串 。 也有一些地方会用到 16 位的 MD5的结果,它实际上是从 32位 字符串中取中间的第9位到第24位的

    2024年02月08日
    浏览(50)
  • PHP md5()函数详解,PHP计算MD5,md5()绕过,md5()漏洞原理剖析

    「作者主页」: 士别三日wyx 「作者简介」: CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」: 对网络安全感兴趣的小伙伴可以关注专栏《网络安全入门到精通》 md5() 可以计算字符串的 「MD5散列值」 。 语法 参数 $str :需要计算的字符串

    2024年02月06日
    浏览(44)
  • macOS - md5 | md5sum

    大文件传输是否完整,你可以使用 md5 进行校验 linux 上使用 md5sum 命令,在macOS 上 md5 命令是和 md5sum 等效的 参考:https://blog.csdn.net/cnds123321/article/details/124946370 Linux macOS Linux - md5sum Usage: md5sum [OPTION]… [FILE]… Print or check MD5 (128-bit) checksums. With no FILE, or when FILE is -, read standard

    2024年01月18日
    浏览(40)
  • linux:md5命令以及md5的使用场景

    MD5广泛用于数据完整性校验和密码存储,它是一种不可逆的加密算法,目前无法解密。它会逐位对文件的内容进行校验。是文件的内容,与文件名无关,也就是文件内容相同,其md5值相同。 在数据完整性校验中,MD5可用于验证数据的完整性。例如,在下载文件后,可以对下载

    2024年02月06日
    浏览(44)
  • win中查看MD5、Linux中查看MD5

    Git Bash Here

    2024年02月04日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包