Lemon's blog

Lemon's blog

Do one thing at a time, and do well.

Crypto—RSA常见题型总结
前言:做了很多有关RSA的题,有必要总结一下,题永远做不完的,但是大致的规律都是不变的! 0x01 基本工具的使用经常使用的RSA工具有openssl、分解整数工具等 openssl这里也有必要说一下Openssl,OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。 而且Openssl可以提供对称加密算法、非对称加密算法、信息摘要算法、密钥和证书管理,实际上OpenSSL提供的CA应用程序就是一个小型的证书管理中心(CA),实现了证书签发的整个流程和证书管理的大部分机制。 查看公钥文件:...
记第一次线下AWD感受及复现
前言:之前忙于期末复习,没有及时总结当时参赛的感受及复现,这次就来总结一下。 第一次参赛线下AWD感受由于是第一次参加AWD比赛,各方面经验都不足,在参赛的前几天也是疯狂搜集各种脚本、框架、工具等,同时也参考大师傅的博客进行学习,下面就叙述一下我学习的过程: 一、进行备份看了很多大师傅的博客,有的师傅博客中写到有些AWD比赛可能给的SSH账户密码相同,所以可以下载一些Github上修改SSH密码的批量脚本,可以让对手在一开始就丢分,但是经过这次比赛,发现其实现在的比赛已经不会再出现这种人为的漏洞了,主办方也会避免这种漏洞出现,否则整场比赛也没什么意意义了,因此我觉得批量修改SSH密码的脚...
XML外部实体注入
前言:最近做了一道WEB题,涉及到XML外部实体注入(即XXE漏洞),恰好也没有系统的学习过,这次就了解一些其攻击方式包含的原理,并通过WEB题来实战一番。 0x01:简单了解XML12345XML 指可扩展标记语言(EXtensible Markup Language)XML 是一种标记语言,很类似 HTMLXML 被设计为传输和存储数据,其焦点是数据的内容XML 被设计用来结构化、存储以及传输信息XML 允许创作者定义自己的标签和自己的文档结构 XML的优点:xml是互联网数据传输的重要工具,它可以跨越互联网任何的平台,不受编程语言和操作系统的限制,非常适合Web传输,而且xml有助...
原理+实战掌握注入方法
前言:SQL注入是web安全中最常见的攻击方式,SQL注入有很多方法,但如果只知道payload,不知道原理,感觉也很难掌握,这次就总结一下我所遇到的SQL注入方法,原理分析+题目实战。 0x00 Xpath报错注入涉及函数updatexml():对xml进行查询和修改 extractvalue():对xml进行查询和修改 报错语句构造1select extractvalue(1,concat(0x7e,user(),0x7e)); 12mysql> select extractvalue(1,concat(0x7e,user(),0x7e));ERROR 1105 (HY00...
通过sql-labs进行sql注入学习(11-22)
前言:SQL注入是入门web安全的基础,所以得仔细学习SQL注入。 从十一关开始便是POST请求,这次从第十一关来做 第11关尝试万能密码' or 1=1#,有回显,看来是单引号闭合,抓包进行操作,还是回显注入,不过是从GET方式变成了POST方式。 payload:12345678910判断列数uname=' order by 1,2,3#查找数据库uname=' union select 1,database()#查表uname=' union select 1,group_concat(table_name) from information_schema.tables ...
任意文件下载漏洞简析
前言:之前没有接触过这个知识,恰好这次有一道题考了这方面的知识,就来详细的学习一下任意文件下载漏洞 任意下载漏洞简介由于业务需求,很多网站往往需要提供文件(附件)下载的功能块,但是如果对下载的文件没有做限制,直接通过绝对路径对其文件进行下载,那么,恶意用户就可以利用这种方式下载服务器的敏感文件,对服务器进行进一步的威胁和攻击。 任意下载漏洞的危害通过任意文件下载,可以下载服务器的任意文件,web业务的代码,服务器和系统的具体配置信息,也可以下载数据库的配置信息,以及对内网的信息探测等等。 通过上面的简单介绍,可以看出任意下载漏洞是很常见的,如果对用户查看或下载的文件不做限制,就又可能被利...
从一道题深入HTTP协议与HTTP请求走私
前言:最近参加了一次线上赛,发现其中有一道web题蛮有意思,之前是一道国赛题的,这次是加了点WAF,但当时没有仔细学习过HTTP协议和HTTP走私协议,所以也就没有绕过WAF,这次就来弥补这个遗憾 HTTP/1.1协议定义:HTTP(超文本传输协议):一种无状态的、应用层的、以请求/应答方式运行的协议,它使用可扩展的语义和自描述消息格式,与基于网络的超文本信息系统灵活的互动 HTTP协议工作于客户端-服务端架构之上。浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求。Web服务器根据接收到的请求后,向客户端发送响应信息。 之前对于HTTP协议的理解就仅限于此,但...
BUUCTF web(一)
前言:最近参加了一场CTF比赛,菜的一批,接下来多练习web题、MISC、密码学,多思考,提高一下自己做题的思路,以及代码审计、编写脚本的能力。 [HCTF 2018]WarmUp查看源码,发现<!--source.php-->,打开发现源码 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950<?php highlight_file(__FILE__); if (! empty($_REQUEST['file']) ...
Jarvis OJ web(一)
前言:总结一下最近做过的jarvisoj的web题,有的很有意思,能学习到很多新知识 LOCALHOST 提示很明显,伪造IP地址即可 抓包进行伪造,即可得出flag Login一个提交页面,源码中也没有发现什么线索,抓包来看一下有一句提示1"select * from `admin` where password='".md5($pass,true)."'" 这里就涉及到MD5函数的一个知识点了这到题我们只需让password后面的语句为真即可,参考了大师傅的博客,提供了这样一个字符串 123456content: ffifdyophex: 276f722736c95d99e92172...
I春秋——web Write up(三)
前言:继续总结,学习更多关于web知识和练习编写脚本的能力。 GetFlag一个登陆框加上验证码,不过有一点不同的是substr(md5(captcha), 0, 6)=e7e24a,截取MD5加密后验证码的前6位,而且需要等于后面的值(后面的值是变化的) 那就属于MD5碰撞了,就模仿大师傅写一个python脚本跑一下 123456789101112131415import requests//requests库是一个常用的用于http请求的模块import base64import sys//该模块提供对解释器使用或维护的一些变量的访问,以及与解释器强烈交互的函数import hash...
avatar
Lemon
witness me