图片隐写的小试牛刀
时间:2022-07-22
本文章向大家介绍图片隐写的小试牛刀,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
无意拿到一个图片隐写的题目,纯分享让你更直观了解图片隐写的解题套路
1.开局一张图,保存图片为 ds.jpg
2.根据提示对网站进行信息搜集,先用 dirb 直接对网站进行简单扫描
3.扫出两个 sitemap.xml 和 pass.txt 两个文件,保存字典文件为 pass.txt
4.结合字典的隐写题的思路有 steghide、F5、outguess 等加密,逐一尝试 5.利用 steghide 解密 (1)安装 steghide
apt-get install steghide (2)python 编写结合获取的密码字典遍历验证(Python2 语法编写的)
# -*- coding: utf8 -*-
from subprocess import *
def foo():
stegoFile='ds.jpg'
extractFile='hide.txt'
passFile='pass.txt'
errors=['could not extract','steghide --help','Syntax error']
cmdFormat='steghide extract -sf "%s" -xf "%s" -p "%s"'
f=open(passFile,'r')
for line in f.readlines():
cmd=cmdFormat %(stegoFile,extractFile,line.strip())
p=Popen(cmd,shell=True,stdout=PIPE,stderr=STDOUT)
content=unicode(p.stdout.read(),'gbk')
for err in errors:
if err in content:
break
else:
print content,
print 'the passphrase is %s' %(line.strip())
f.close()
return
if __name__ == '__main__':
foo()
print 'ok'
pass
6.解密成功,获取第二关入口
bb@SC-201912210537:~$ sudo python2 2.py
the file "hide.txt" does already exist. overwrite ? (y/n)
steghide: did not write to file "hide.txt".
the passphrase is $SRV
Ok
bb@SC-201912210537:~$ cat hide.txt
HI~
恭喜你成功拿下第一关,这道题考的是图片隐藏。
NOW
我们开始进入第二关吧。
第二关要求:
《破解下面加密页面的密码》
https://blog.bbskali.cn/index.php/archives/1884/
提示:
1:利用Burp暴力破解
2:密码字典通过对本站信息收集找找看。
good luck
7.访问第二关发现为简单的暴力破解
8.利用 burp 进行暴力破解 Burp 的 https 抓包配置:https://blog.csdn.net/qq_36502272/article/details/93495744 (1)抓包发送至爆破模块
右键发送至 intruder 模块
(2)加载密码字典得出结果,通过 length 进行排序找出结果
参考资料
[1]下载地址: https://imgkr.cn-bj.ufileos.com/1d8772a4-fcdf-4a66-a218-cf2c6c1a34b1.jpg
- Spring Cloud中Feign的继承特性
- JavaScript 常用方法总结
- Spring Cloud中声明式服务调用Feign
- Spring Cloud中Hystrix仪表盘与Turbine集群监控
- 轻量级压力测试工具 - AB
- Spring Cloud中Hystrix的请求合并
- Spring Cloud中Hystrix的请求缓存
- mysql主从复制配置
- Spring Cloud系列勘误
- Spring Cloud Stream使用细节
- Redis3 对集群进行重新分片
- Spring Cloud Stream初窥
- jquery事件绑定性能测试
- Spring Cloud Bus整合Kafka
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Android使用GridView实现日历的方法
- Android控件AppWidgetProvider使用方法详解
- R语言使用链梯法Chain Ladder和泊松定律模拟和预测未来赔款数据
- Android ViewPager实现左右滑动的实例
- R语言通过伽玛与对数正态分布假设下的广义线性模型对大额索赔进行评估预测
- R语言中回归模型预测的不同类型置信区间应用比较分析
- 第06期:Prometheus 存储
- 新特性解读 | 数组范围遍历功能
- 技术分享 | MySQL 内存管理初探
- 新特性解读 | 窗口函数的适用场景
- Android自定义View 仿QQ侧滑菜单的实现代码
- Android view随触碰滑动效果
- TextView使用SpannableString设置复合文本 SpannableString实现TextView的链接效果
- FragmentTabHost使用方法详解
- Android编程实现仿优酷圆盘旋转菜单效果的方法详解【附demo源码下载】