- 博客(150)
- 资源 (8)
- 收藏
- 关注
原创 Java代码审计学习笔记
此处仅作代码分析,不涉及环境配置及工具使用。0x00 反序列化带来的安全问题0x01 反射基础知识反射是Java核心特征之一,反射允许运行中的Java程序获取自身的信息,并且可以操作类或对象的内部属性。通过反射在运行时获得程序或程序集中每一个类型的成员和成员的信息, 反射机制可以动态地创建对象并调用其属性,这样的对象的类型在编译期是未知的。所以我们可以通过反射机制直接创建对象,即使这个对象的类型在编译期是未知的。反射的核心是 JVM 在运行时才动态加载类或调用方法/访问属性,它不需要事先(写代码的
2021-10-11 15:34:54
502
4
原创 菜鸡的DASCTF Sept X 浙江工业大学秋季挑战赛WP
1.签到题目:#!/usr/bin/env python# -*- coding: utf-8 -*-from Crypto.Util.number import *import randomflag=b'flag{******************}'n = 2 ** 256e=bytes_to_long(flag)m = random.randint(2, n-1) | 1c = pow(m, e, n) #m mod(e)nprint('m = ' + str(m))prin
2021-09-25 21:04:33
1665
17
原创 羊城杯2021-网络安全大赛部分writeup
1.签到<?phpecho("SangFor{".md5("28-08-30-07-04-20-02-17-23-01-12-19")."}");?>图1是二八定律(28),图2是八卦(8),图3是三十而立(30),图4是北斗七星(07),图5是江南四大才子(04),图6是歼20(20),图7是两个黄鹂(02),图8是一起来看流星雨(一起谐音17),图9是乔丹的球服(23),图10是一马当先(01),图11是十二星座(12),图12是19点播放的新闻联播(19)...
2021-09-11 22:09:18
2942
2
原创 2021DASCTF八月挑战赛WP
1.签到略。2.[crypto]easymath参考:https://zhuanlan.zhihu.com/p/363648238exp:s_shift = 1862790884563160582365888530869690397667546628710795031544304378154769559410473276482265448754388655981091313419549689169381115573539422545933044902527020209259938095466283
2021-08-31 12:19:10
618
原创 CTF学习笔记之XXE
一直对XXE理解不是很深入,今天仔细研究一下XXE以及CTF里面的XXE题型0x00 XML基本格式XML 文档有自己的一个格式规范,这个格式规范是由 DTD控制的。文档类型定义(DTD)可定义合法的XML文档构建模块。它使用一系列合法的元素来定义文档的结构。DTD 可被成行地声明于 XML 文档中,也可作为一个外部引用。带有 DTD 的 XML 文档实例:<?xml version="1.0"?><!DOCTYPE note [<!ELEMENT note (
2021-07-08 20:55:39
1354
2
原创 2021GKCTF X DASCTF应急挑战杯部分Writeup
1.签到尝试了一波发现是16进制的base64编码,并且base64编码被反转了。a = 'wIDIgACIgACIgAyIK0wIjMyIjMyIjMyIjMyIjMyIjMyIjMyIjMyIjMyIjMyIjMyIjMyIjMiCNoQD'b='jMyIjMyIjMyIjMyIjMyIjMyIjMyIjMyIjMyIjoQDjACIgACIgACIggDM6EDM6AjMgAzMtMDMtEjM'c='t0SLt0SLt0SLt0SLt0SLt0SLt0SLt0SLt0SLt0SLt0SLt
2021-06-26 17:16:35
2970
2
原创 BUUCTF笔记之N1BOOK
1.[第一章 web入门]常见的搜集robots.txt得到一部分flag:flag1:n1book{info_1备份文件index.php~得到第二部分flag:flag2:s_v3ry_im访问.index.php.swp得到第三部分flag:flag3:p0rtant_hack}
2021-06-18 16:02:41
5683
10
原创 第五届强网杯某些wp
F12提示得到源码:const salt = random('Aa0', 40);const HashCheck = sha256(sha256(salt + 'admin')).toString();let filter = (data) => { let blackwords = ['alter', 'insert', 'drop', 'delete', 'update', 'convert', 'chr', 'char', 'concat', 'reg', 'to', 'qu
2021-06-14 11:16:46
721
2
原创 BUUCTF笔记之Basic部分WP
1.Linux Labs这题就是熟悉一下ssh了。登录找到flag.txt:2.Java Sec Code这题有点无语,感觉更像是宣传Java Sec Code这个项目。拿flag:http://057bfb68-fe8f-4ecb-ad38-ad35f029e01b.node3.buuoj.cn/rce/exec?cmd=env题外话,对于学习java漏洞来说,这个github项目确实是很好的,我们不能仅仅局限于拿flag刷分数,更多的是要深入研究代码背后的思想。.
2021-06-04 20:00:18
5915
6
原创 BUUCTF笔记之Reverse(Java及android部分)
先把这最简单的拿下,将来或许会继续研究reverse1.easyre拖进winhex,直接搜flag:2.
2021-06-03 19:16:24
1841
2
原创 GKCTF2020笔记
CryptoCTF还是要多做,不然就会吃没见识的亏1.小学生的密码学e(x)=11x+6(mod26)密文:welcylk(flag为base64形式)这题是典型的仿射密码。上代码:然后得到flag{c29yY2VyeQ==}
2021-06-03 15:04:49
489
1
原创 第三届美团网络安全高校挑战赛(初赛)部分writeUp
1.sql扫目录发现check.php。发现是post注入,fuzz一下之后构造以下payload:POST /check.php HTTP/1.1Host: eci-2ze7rwkw5ezzihayuqha.cloudeci1.ichunqiu.comUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Firefox/78.0Accept: text/html,application
2021-05-24 21:21:49
1548
1
原创 BUUCTF笔记之Misc系列部分WriteUp(一)
话说misc系列可以说是调剂放松了,web和crypto做吐了,就来做点简单的misc放松一下。1.N种方法解决乍一看以为真是个exe,我还拖进IDA看了一波,结果还是吃了没见识的亏,后来IDA无果,拖进winhex看发现是一个图片文件。。。重命名为jpg打开无果,发现文件头后面有个base64,看看文件末尾有等于号,那把中间这一大坨拿出来解码试试:解码出来提示是png了,那把它解码之后的数据转成图片:扫码得到flag。...
2021-05-24 19:27:22
3044
原创 BUUCTF笔记之Web系列部分WriteUp(三)
1、[CISCN2019 华北赛区 Day2 Web1]Hack World最近多做做sql注入,感觉自己在这一块还是很菜,进去就给了提示flag在flag表的flag字段
2021-05-22 21:40:47
7307
4
原创 BUUCTF笔记之Crypto部分WriteUp(二)
1、凯撒?替换?呵呵!凯撒密码一般就是26个字母经过单纯的按字母顺序来位移的加密方法(一般)如:abc=def进阶版的凯撒就不按照字母顺序的加密,等于是一个字母打乱顺序,使用类似密码本的形式对应另一个字母。所以就要经过暴力破解出每一种可能的对应加密。这里使用工具:https://quipqiup.com/我自己打算给出一个脚本,在本地爆破...
2021-05-17 22:50:49
3284
原创 BUUCTF笔记之Web系列部分WriteUp(二)
1、[极客大挑战 2019]Http不敢置信12世纪了还有这种简单题,我还在拼命扫目录和备份。。。。在secret.php重发http请求头Referer: https://www.Sycsecret.com修改User-Agent为Syclover:这里伪造来源IP添加一个字段X-Forwarded-For: 127.0.0.1拿到flag....
2021-05-17 22:13:09
2714
1
原创 BUUCTF笔记之Crypto部分WriteUp(一)
1、RSA1直接上代码:import gmpy2 as gpp = 8637633767257008567099653486541091171320491509433615447539162437911244175885667806398411790524083553445158113502227745206205327690939504032994699902053229q = 12640674973996472769176047937170883420927050821480010581
2021-05-08 16:41:41
1643
2
原创 BUUCTF笔记之Real部分WP(一)
发起一个请求,抓包:将其修改为POST请求:然后放进repeater,假加入payload:写入了一个显示phpinfo的文件,实际操作可以写入一句话。然后访问这个php:拿到flag:
2021-02-15 16:27:45
6788
2
原创 BUUCTF笔记之[强网杯 2019]随便注write up
题目:用引号试一下:爆字段数量:1' order by 2;#字段数量为2.接下来使用select会爆一个结果:return preg_match("/select|update|delete|drop|insert|where|\./i",$inject);提示使用正则检索提交的姿势里有没有上述关键字。大小写绕过失败,双写绕过失败。...
2020-12-02 00:50:39
851
原创 靶机渗透之SickOS
主机发现:扫描:网站指纹信息扫描:访问该机器web服务:nikto扫描:确认可以"put"等方法来进行注入:使用curl的put方法上传一个文件,成功:上传一个webshell:可以用蚁剑连接:生成反弹shell脚本:上传反弹shell脚本:启动msf并设置lhost和lport,然后访问上传的反弹shell,获取到shell:接下来提权。使用python编译一个bash:再执行命令:echo
2020-11-29 11:02:13
329
原创 BUUCTF之[ThinkPHP]5-Rce WP及getShell的新姿势
题目给了提示:https://github.com/vulhub/vulhub/blob/master/thinkphp/5-rce照上面的POC做就能在phpinfo中找到flag,此处不再赘述。拿到flag之后我想通过这个payload拿一波webshell,故使用以下POC写一句话,先创建一个php文件:http://xxxxxxxxx/index.php?s=/Index/\think\app/invokefunction&function=call_user_func_
2020-10-10 19:17:37
3342
6
原创 靶机渗透之peixun-server提权
攻击机:主机发现:信息收集:端口详细信息:尝试访问80端口,发现其有一web站点可以访问:对url:http://192.168.11.128/storypage_04.php?id=115进行测试,检查是否有SQL注入漏洞:报错,此处应该有注入点。爆破数据库名:得到该数据库的所有数据库名:information_schema,mysql,performance_schema,tcic,test爆当前使用的数据库为tcic:爆表名:
2020-09-15 20:44:45
363
1
原创 第四届强网杯强网先锋的部分write up
打开看到代码: <?phphighlight_file("index.php");if(preg_match("/flag/i", $_GET["ip"])){ die("no flag");}system("ping -c 3 $_GET[ip]");?> 这是命令执行,试了试可以执行ls命令:http://39.96.23.228:10002/index.php?ip=;ls但是过滤了cat vi vim和"flag"关键字,因此构造payl
2020-08-24 09:22:38
535
8
原创 XCTF进阶区Crypto之你猜猜 write up
我们刚刚拦截了,敌军的文件传输获取一份机密文件,请君速速破解。下载下来是个txt,里面一串神秘代码:504B03040A0001080000626D0A49F4B5091F1E0000001200000008000000666C61672E7478746C9F170D35D0A45826A03E161FB96870EDDFC7C89A11862F9199B4CD78E7504B01023F000A0001080000626D0A49F4B5091F1E00000012000000080024000
2020-07-02 16:18:41
2172
原创 XCTF进阶区Crypto之flag_in_your_hand write up
下载下来查看html源码和js源码:<html> <head> <title>Flag in your Hand</title> <style type="text/css"> body { padding-left: 30%; } #flag { font-family: Garamond, serif; font-size: 36px; } #flagtitle {
2020-07-02 15:35:30
966
原创 XCTF新手区Crypto writeup
1.base64直接拿去base64 decode就行:cyberpeace{Welcome_to_new_World!}2.Caesar这题凯撒密码。分别设置位移量为1-25,输出25条结果后看到位移量为12时有意义,故位移量为12:cyberpeace{you_have_learned_caesar_encryption}...
2020-06-30 20:09:53
1006
原创 Graphin使用自定义节点时点击画布节点自动渲染错误信息的解决办法
Graphin的文档还是太简略了,很多东西只得自己摸索。自定义节点的代码如下:import '@antv/graphin/dist/index.css'; // 引入Graphin CSSconst defaultStyles = { /** container 容器 */ containerWidth: 40, containerStroke: '#0693E3', containerFill: '#fff', /** text 文本 */ fo
2020-06-29 13:22:27
1517
原创 React项目打包发布到Tomcat页面空白解决办法
按照教程在APP.js配置了路由,然后命令行执行cnpm run build打包,生成build目录,将其发布到SSM的webContent目录下,启动SSM项目后,访问index.html无内容。原因:APP.js里是这样写的://根组件import React from 'react';import { BrowserRouter as Router,Route} from 'react-router-dom';import Login from '../commponents/logi
2020-06-18 13:12:57
1488
原创 React学习笔记(一)使用Create React App快速构建一个React项目并创建一个登陆页面
首先安装nodeJsApp.js中这么写:import React from 'react';import logo from './logo.svg';import './App.css';function App() { //设置页面标题 document.title = '这里写标题'; //无状态组件获取input的值 let usernameid; //用户名输入框的值 let passwordid; //密码输入框的值 const login =
2020-06-17 16:48:03
915
原创 ArrayList+HashSet实现HashMap
直接上代码:package Test;import java.util.ArrayList;import java.util.HashMap;import java.util.HashSet;import java.util.Iterator;/** * Hash-based Map */public class HAMap<K, V> implements Iterable<K> { /** * Represents a key-va
2020-06-07 01:03:22
704
1
原创 Java实现带权并查集Weighted Quick Union Disjoint Sets
我们使用父数组和权值策略将较小树的根连接到较大树的根 ○如果连接(p,q)中的树的大小相等,则通过将 p 的根连接到 q 的根来断开连接。
2020-05-17 08:54:23
1209
3
原创 第二届网鼎杯Crypto、web部分writeup
1.签到玩完游戏,打开控制台查看js输出就有flag。2.Crypto之boom直接将exe拖进IDA,无脑F5得到伪代码,计算两个方程一个md5,拼起来就是flag
2020-05-10 19:17:19
3218
原创 D3 v3版本绘制力导向图更新节点时JS控制台报错 :Error: <circle> attribute cx: Expected length, "NaN"解决办法
D3的v3版本,很古老了。拿来绘制力导向图,初始化代码如下://代码不完整,仅作演示以说明问题//节点数组 var nodes = [ { name: "sssss" ,phone:"18888888888"}, { name: "vvvv" ,phone:"199999999"},{ name: "ggggg" ,phone:"20000000"} ]; //连线数组 var ...
2020-05-06 20:17:15
4541
4
原创 Java使用数组实现双向循环队列
ARDeque在本实验中,我们将使用an array实现dequeo在前两次作业中,我们使用链表实现了deque我们还将使用泛型,以便deque可以存储任何类型的对象o array的起始大小/长度必须为4o使用resizing:在本节课讨论的数组加倍和数组减半 删除前,如果已满则加倍大小 删除后,如果大小小于或等于四分之一,则将大小减半o使用循环数组,...
2020-05-04 14:53:21
1609
java的ElGamal算法实现
2018-04-25
第四届Xman个人排位赛流量分析之strange_ssid复现
2019-12-29
第三方服务器获取微信公众号图文消息
2019-07-25
Java写的AES文件加密软件
2018-12-24
HttpClient发起HTTPs请求.rar
2019-07-25
commons-scxml2-2.0-SNAPSHOT.jar
2017-06-25
RSATool2v17.rar
2017-07-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅