上传关
[1]
查看源代码,发现JS代码。提交时onclick进行过验证。
ctrl+shift+i 打开开发者工具,将conclick修改为 return True,即可以上传
上传php文件,拿到KEY
key is IKHJL9786#$%^&
[2]
查看源代码,发现JS文件。发现是经过服务器端验证。
伪造一张jpg图片进行上传,利用burp截断,将文件名改为PHP就拿到key
key is 76tyuhjsdvytig#$%^&
[3]
查看源代码,发现JS代码。
var filename=document.getElementById("file");
var str=filename.value.split(".");
var ext=str[1];
发现只是验证了文件名后第一个后缀,进行 file.jpg.php进行绕过
得到key key is 76tyuh12OKKytig#$%^&

解密关
[1] 以管理员身份登录系统
直接点重置密码,发现返回空白的页面。查看源代码,发现tip1,验证自己思路没错。
在url中发现参数sukey,长度为32位,对其进行MD5解密。发觉以下规律
payload:

import requests
import hashlib
import time

se = requests.session()
headers = {'Cookie': 'PHPSESSID=25443616fac3435849c2f3e77b54a4ca'}

while 1:
sukey = hashlib.new('md5', str(int(time.time()))).hexdigest()
url = 'http://lab1.xseclab.com/password1_dc178aa12e73cfc184676a4100e07dac/reset.php?sukey=' + sukey + '&username=admin'
r = se.get(url, headers=headers)
if r.content:
print r.content
break
else:
print 'Cracking: ' + sukey

拿到key

[2] 邂逅对门的妹纸

一个包,打开后发现是经过加密的。需要解密。
根据提示做一个字典
with open("password.txt","w") as f:
for year in range(1980,2015):
for month in range(1,13):
for day in range(1,32):
f.write("%d%02d%02d\n" % (year,month,day))

开始暴力破解。
root@kali:~/Desktop# aircrack-ng wifi-crack.cap
Opening wifi-crack.cap
Read 17812 packets.

# BSSID ESSID Encryption

1 54:E6:FC:53:E6:D0 hackinglab WPA (1 handshake)

Choosing first network as target.

Opening wifi-crack.cap
Please specify a dictionary (option -w).

Quitting aircrack-ng...

发现BSSID,ESSID

root@kali:~/Desktop# aircrack-ng -e hackinglab -b 54:E6:FC:53:E6:D0 -w password.txt wifi-crack.cap
Opening wifi-crack.cap
Reading packets, please wait...

Aircrack-ng 1.2 beta3

[00:00:05] 5436 keys tested (954.82 k/s)

KEY FOUND! [ 19940808 ]

Master Key : 92 D0 BF EB 09 69 E7 29 78 85 B4 48 64 20 D9 E9
17 B2 70 20 1B E7 A9 B9 06 27 C6 65 B0 5B 92 FA

Transient Key : 58 1D E4 36 66 67 BA 5A 76 17 A7 75 34 27 C4 3F
BA D0 1A 5C 43 6E C1 87 FA A6 07 84 17 AA 1B A8
8F 24 B4 6D 54 39 CD 0B BA BA 95 63 43 A7 6C E1
4D 1A C1 17 23 47 F1 3D 9A 8C 42 24 5D 8E 24 69

EAPOL HMAC : 02 C8 6C C3 C6 51 2D DC CA 68 ED 8A 5C 9D CE A6
得到密码,MD5加密提交

[3]万恶的Cisco
直接安装 cisco_crack进行破解
a = "02070D48030F1C294940041801181C0C140D0A0A20253A3B"
crack=cisco_decrypt.CiscoPassword()
crack.decrypt(a)
S = 2
S = 3
S = 4
S = 5
S = 6
S = 7
S = 8
S = 9
S = 10
S = 11
S = 12
S = 13
S = 14
S = 15
S = 16
S = 17
S = 18
S = 19
S = 20
S = 21
S = 22
S = 23
S = 24
'aishishenmadongxi@Admin'

[4]万恶的加密
提示华为的交换机,谷歌搜一下,看到一篇文章,可惜 Windows 下跑不了这个脚本,放到 Kali 下,成功拿到 key。

# coding=utf-8
from Crypto.Cipher import DES

def decode_char(c):
if c == 'a':
r = '?'
else:
r = c
return ord(r) - ord('!')

def ascii_to_binary(s):
assert len(s) == 24
out = [0]*18
i = 0
j = 0

for i in range(0, len(s), 4):
y = decode_char(s[i + 0])
y = (y << 6) & 0xffffff
k = decode_char(s[i + 1])

y = (y | k) & 0xffffff
y = (y << 6) & 0xffffff
k = decode_char(s[i + 2])

y = (y | k) & 0xffffff
y = (y << 6) & 0xffffff
k = decode_char(s[i + 3])
y = (y | k) & 0xffffff

out[j+2] = chr(y & 0xff)
out[j+1] = chr((y>>8) & 0xff)
out[j+0] = chr((y>>16) & 0xff)

j += 3
return "".join(out)

def decrypt_password(p):
r = ascii_to_binary(p)
r = r[:16]
d = DES.new("\x01\x02\x03\x04\x05\x06\x07\x08", DES.MODE_ECB)
r = d.decrypt(r)
return r.rstrip("\x00")

if __name__ == '__main__':
miwen = "aK9Q4I)J'#[Q=^Q`MAF4<1!!"
print u'明文' + decrypt_password(miwen)

[5] 喜欢泡网吧的小明
不会

[6]异常数据
发现加密数据后面有个=,明显的base64加密。但是都是大写,很有可能全部转为大写
payload
from base64 import *
import re

def dfs(res, arr, pos):
res.append(''.join(arr))
i = pos
for i in range(i, len(arr)):
if arr[i] <= 'Z' and arr[i] >= 'A':
arr[i] = arr[i].lower()
dfs(res, arr, i + 1)
arr[i] = arr[i].upper()

arr = list('AGV5IULSB3ZLVSE=')
res = []

dfs(res, arr, 0)

res_decode = map(b64decode, res)

for i in res_decode:
if re.findall(r'\\x', repr(i)):
continue
else:
print i
hey!IRovKU!
hey!IRoveU!

[7]md5真的能碰撞嘛?
<?php
$flag=FLAG;
if(isset($_POST["password"])){
$password=$_POST['password'];
$rootadmin="!1793422703!";
if($password==$rootadmin){die("Please do not attack admin account!");}

if(md5($password)==md5($rootadmin)){
echo $flag;
}else{
die("Password Error!");
}
}
?>
>>> hashlib.md5("!1793422703!").hexdigest()
'0e332932043729729062996282883873'
开头为0e最后值显示为0.
直接百度“MD5,0e” post提交 password=s214587387a拿到flag

[8]小明爱上了一个搞硬件的小姑凉
改为txt文件。发现
serialization::archive 10 25 SaleaeAsyncSerialAnalyzer 0 20 13973230967232177885 1 1 9600 8 1 0 1 0 0
Async Serial Analyzer 百度搜索为一文件名。
查看其它writeup,为下载该软件,打开就可以拿到flag

[9]
没思路,以后补充

转载于:https://www.cnblogs.com/Elope/p/6525075.html

网络信息安全攻防学习平台 上传,解密通关writeup相关推荐

  1. 网络信息安全攻防学习平台——基础关

    本文首发链接 查看我的个人博客:https://hubinqiang.com 网络信息安全攻防学习平台基础关 第1题 题目:key在哪里? 过关地址 方法:直接查看网页源代码即可查到key. Key: ...

  2. 网络信息安全攻防学习平台-基础关

    网络信息安全攻防学习平台-基础关 游戏地址[http://hackinglab.cn/ShowQues.php?type=bases] 第一题 key在哪里? 这类题时最简单的,一般只需在浏览器内打开 ...

  3. 网络安全特训之——网络信息安全攻防学习平台(基础关)

    网络信息安全攻防学习平台(基础关) 一.key在哪里 项目场景: 解决方法: 二.再加密一次你就得到key啦 项目场景 解决方法: 三.猜猜这是经过了多少次加密 项目场景: 解决方法: 四.据说MD5 ...

  4. 网络安全特训之——网络信息安全攻防学习平台(选择题)

    网络信息安全攻防学习平台(选择题) 文章目录 网络信息安全攻防学习平台(选择题) 第一题 第二题 第三题 第四题 第五题 第六题 第七题 第八题 第九题 第十题 第十一题 第十二题 第十三题 第十四题 ...

  5. #033 信安培训基础题Python解决网络安全实验室|网络信息安全攻防学习平台

    第三题猜猜这是经过了多少次加密?分值: 200 加密后的字符串为:一大串 字符串最后面是= 所以是base64.b64decode编码究竟为啥有=就是base64咱也不知道 咱也不敢问咋解密也是从网上 ...

  6. 网络安全实验室|网络信息安全攻防学习平台(基础关)

    第一题:key在哪里? http://lab1.xseclab.com/base1_4a4d993ed7bd7d467b27af52d2aaa800/index.php CTRL+U 查看源码发现ke ...

  7. 网络安全实验室|网络信息安全攻防学习平台(脚本关)

    1. 小明这次哭了,key又找不到了!!! key啊,你究竟藏到了哪里,为什么我看到的页面上都没有啊!!!!! 地址: http://lab1.xseclab.com/xss1_30ac8668cd4 ...

  8. 网络信息安全攻防学习平台(基础关)

     目录 key在哪里? 再加密一次你就得到key啦~ 猜猜这是经过了多少次加密? 据说MD5加密很安全,真的是么? 种族歧视 HAHA浏览器 key究竟在哪里呢? ​编辑key又找不到了 冒充登陆用户 ...

  9. 网络黑客攻防学习平台之选择题

    网络信息安全攻防学习平台学习地址: http://hackinglab.cn/index.php 今天来看理论知识选择题,直接给出答案哈: 1.主要用于加密机制的协议是( D) A. HTTP B. ...

最新文章

  1. 新工作总结之权限系统设计
  2. 函数在机器底层是如何实现的_智能货柜专题三:如何实现不同机器“千机千面”?...
  3. 在当当买了python怎么下载源代码-爬虫实战一:爬取当当网所有 Python 书籍
  4. ITK:计算图像的最小,最大,方差和均值
  5. Windows 7 在资源管理器中显示软件快捷方式
  6. 安卓开发中SpannableString之富文本显示效果
  7. python 图表_使用Streamlit-Python将动画图表添加到仪表板
  8. css 绘制三角形_解释CSS形状:如何使用纯CSS绘制圆,三角形等
  9. 用复制mysql/data 文件夹 下面的数据库的形式来复制数据库出现的问题
  10. java如何去掉html标签_Java后端去掉HTML标签获取纯文本-Fun言
  11. 企业千人千面管理模式_华世界集团获国家高新技术企业认定
  12. FFmpeg源代码结构图 - 编码
  13. Developer Zone Android*
  14. 为什么选择STM32-M3
  15. Apache的网页与安全优化
  16. mapminmax 用法
  17. 母亲节是在每年五月份的第二个星期日,给定年份,求出当年母亲节的日期
  18. 园区人工智能开启双创模式,“1+N”创新型组织发展成效初显
  19. 【AVS】AVS2编码器开源啦:xAVS2
  20. 10公斤无人机动力测试台测试-拉力、扭矩、转速

热门文章

  1. SpringMVC日期格式化
  2. rem移动端布局怎么适配IOS和Android
  3. SQL 条件匹配(一)
  4. go 自定义error怎么判断是否相等_Go 1.13 errors 基本用法
  5. 前端工作总结179-watch的使用
  6. 神仙打架?细数玩刺激战场中被检测的几种情况:你中招了吗?
  7. 三维可视化数据中心机房监控管理系统
  8. 我花了一个星期,做出了公司的管理系统,只需几个步骤!
  9. nsq Android客户端,NSQ源码-Nsq客户端
  10. java stdout_如何正确读取子进程的stdout / stderr输出?