- 博客(128)
- 收藏
- 关注
原创 数据结构---顺序表(1)
顺序表定义线性表类型模板:#define LIST_INIT_SIZE 100 //线型表存储空间的初始分配量,可修改typedef struct{ //结构 ElemType elem[LIST_INIT_SIZE]; //elemtype元素类型也可与根据具体而修改 int length; //当前长度}SqList; //顺序表的结构类型定义://--------顺序表的存储结构----#define MAX 100 //顺序表可能达到的最大长度 ty
2022-02-08 13:08:06
597
原创 Java学习(二)--数组操作及冒泡排序
1.遍历数组:public class Demo03 { public static void main(String[] args) { int[] arrays = {1,2,3,4,5,6,7,8,9}; //dayin for (int i = 0; i < arrays.length; i++) { System.out.println(arrays[i]); } }}2.计算和
2022-02-08 10:42:42
598
原创 【BUU】[GXYCTF2019]BabyUpload
1.本题知识:图片尺寸小于2000字节,但对文件头没有检验。检验content-type且只能为jp(e)g,png与gif都不行。.htaccess配置文件替换。过滤了一些敏感函数,以及php声明绕过,ph后缀过滤后好像没办法绕过去上传php文件。2.别人的wp很详尽,我就对被拦截的情况来阐述吧:后缀名不能有ph:我们后缀只能为jpg上传,但没有文件包含函数可以利用,图片马上传上去没用。因此就可以尝试.htaccess文件替换来将任意后缀解析为php。AddType applicat
2022-02-07 22:18:06
795
转载 数据结构与算法C语言版—绪论
1.基本概念和术语 1、数据(data):所有能输入到计算机中去的描述客观事物的符号 数值性数据非数值性数据(多媒体信息处理)2、数据元素(data element):数据的基本单位,也称结点(node)或记录(record)3、数据项(data item):有独立含义的数据最小单位,也称域(field) 三者之间的关系:数据 > 数据元素 > 数据项 例:学生表 > 个人记录 >  ...
2022-02-07 09:58:40
471
原创 java学习(一)---打印乘法表与三角
1.九九乘法表(格式一)://javapublic class ForDemo03 { public static void main(String[] args) { for (int j = 1;j <= 9;j++) { for (int i = 1; i <= j; i++) { System.out.print(j + "*" + i + "=" + (i * j) + "\t");
2022-02-06 15:26:09
1742
原创 提权—Linux 定时任务&环境变量&数据库
Linux提权环境变量安全-(aliyun,本地):前提:需要配合SUID进行环境变量提权且是本地用户环境下进行(因此比较难实现)提权过程:手写调用文件-编译-复制文件-增加环境变量-执行触发。//demo.c文件#include<unistd.h>void main(){ setuid(0); setgid(0); system("ps");}gcc demo.c -o shell //手写一个c语言文件,并上传编译为shell文件cp /bin/sh ...
2022-02-04 20:23:00
2908
原创 提权—Linux 脏牛内核漏洞&SUID&信息收集
1.Linux信息收集:Linux 提权自动化脚本 4个脚本(这几个项目都可以在github找到):两个信息收集:LinEnum,linuxprivchecker两个漏洞探针:linux-exploit-suggester ,linux-exploit-suggester21)LinEnum:通过webshell等权限将脚本上传到/tmp目录然后执行即可(这个目录是一个临时目录,重启后会清空,一般是可以进行读写的,上传其他目录可能会因为权限不够而失败)。2)Linuxprivchecker:.
2022-02-04 12:35:04
2891
原创 提权-win烂土豆&dll劫持&引号路径&服务权限
以下几种提权方法的适合环境(web用户/本机用户)因方法而不同,有的方法在两种权限下都适用,一般也都是本机权限大于webshell权限。win 烂土豆提权(MS16-075):烂土豆(Rotten Potato)提权是一个本地提权,是针对本地用户的,不能用于域用户,webshell环境或本地普通用户环境都可以适用。过程:msf生成上传烂土豆-执行烂土豆-利用msf窃取模块-窃取 SYSTEM-成功(漏洞编号:CVE-2016-3225)。我们是用之前的令牌窃取提权无法成功,因为web.
2022-02-02 20:34:21
1732
1
原创 提权—win本地提权令牌窃取&进程注入
之前介绍的是web环境下的提权方式,而本地提权可以参考这两种方法,但适用范围受版本限制较大。Winserver08&win7令牌窃取:成因:进行远程过程调用时请求提升权限,然后调用它从而生成特权安全令牌以执行特权操作。当系统允许令牌不仅用于进程本身,还用于原始请求进程时,漏洞就会出现。工具:msf令牌窃取方式在Windows2008之后的高版本操作系统已经没用了,只能用于一些低版本系统,比如:Microsoft Windows XP Professional SP3和之前版本Wind
2022-02-02 15:59:08
1249
原创 提权-Redis&Postgre数据库
Redis数据库权限提升:利用计划任务执行命令反弹shell写ssh-keygen公钥使用私钥登录低权限写webshell0x01:计划任务(crontab计划任务反弹shell)0x02:公私钥(写入公钥,私钥登录)0x03:写webshell(借助报错或phpinfo等方法知道物理路径)具体搭建环境与复现操作参考:https://blog.csdn.net/weixin_39664643/article/details/112966774https://www.cnblo...
2022-02-02 11:14:33
709
原创 提权-MY&MS&ORA数据库提权
数据库提权:在利用系统溢出漏洞无果的情况下,可以采用数据库进行提权来获得系统权限,不是提升数据库用户的权限,但需要知道数据库提权的前提条件:服务器开启数据库服务及获取到最高权限用户密码。除 Access 数据库外,其他数据库基本都存在数据库提权的可能。#数据库应用提权在权限提升中的意义#WEB 或本地环境如何探针数据库应用#数据库提权权限用户密码收集等方法#目前数据库提权对应的技术及方法等提权流程:服务探针->信息收集->提权利用->获取权限探针查看是否...
2022-02-01 13:33:30
1632
原创 提权—Win溢出提权用户检测利用
1.权限提升环境问题:WEB与本地提权web:我们借助web的网站权限webshell进而获取服务器操作系统的用户权限此为web提权。本地:windows上有许多用户:普通用户,system用户,administrator用户等,我们将普通用户提升到高权限用户称为本地提权。两者比较显然web提权更繁琐难度更大。windows系统版本一般也以winserver08/12居多,winxp/7/10很少用来搭服务器。windows各种用户权限:常见windows命令也要记住:3.我们.
2022-01-30 23:21:50
1191
原创 提权—网站的权限后台漏洞第三方
1.权限提升:此处提权指的不是让网站的普通用户获取到管理员的权限(那属于网站的逻辑漏洞)而是我们已经利用网站的漏洞拿到了一些权限乃至webshell后如何利用网站权限进而获取到数据库、操作系统、服务器等的权限。2.具体有哪些权限需要我们知道和了解掌握的?后台权限、网站权限、数据库权限、接口权限、系统权限、域控权限等。1)后台权限(获得方式:爆破、注入猜解、弱口令等):一般网站或应用后台智能操作应用的界面内容、数据图片等信息,无法操作程序的源代码或服务器上的资源文件。(如后台功能存在文件操作的话.
2022-01-30 13:34:35
4291
原创 审计—PHP 框架 MVC 类上传断点调试挖掘
1.MVC概念:https://www.cnblogs.com/wsybky/p/8638876.html2.Thinkphp了解下:其中的入口文件、目录结构、架构、配置等等。https://sites.thinkphp.cn/15563313.最详细的phpstorm+xdebug调试详细教程5.phpstorm断点调试代码执行过程:...
2022-01-28 17:55:59
431
原创 代码审计入门
代码审计1.审计前提:我们首先要知道审计目标的程序名、版本、当前环境(系统,中间件,脚本语言等信息)、各种插件等等。2.审计思路:1)关键字:搜索可控变量及特定函数,不存在过滤或过滤不严谨存在绕过导致的安全漏洞。2)定点分析:指定漏洞的常见地方,比如用户中心的上传、留言板等地的xss、登录框的sql injection等。3)断点调试:对于代码的执行过程分析、追踪,是否执行sql语句(数据库监控)/调用外部应用api/包含外部网页等等。3.知道常见漏洞产生的根本—函数/关键字:漏洞函数/.
2022-01-28 14:48:59
1236
原创 渗透测试之waf绕过基础
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录思维导图 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结思维导图:一、信息收集此处只针对对于目标网站直接扫描的信息收集讲解,其他辅助信息收集手段如:查旁站/识别cms等手段也不会遇到waf拦截。1.安全狗—防ddoscenos目前用的不熟练,于是我将服务器系统换成了winserver,搭建上web环境和安全狗,打开cc拦截开关,本地.
2022-01-28 01:04:37
3901
原创 渗透测试之漏洞发现(工具)
一、操作系统1.扫描发现漏洞(工具):Goby使用手册:https://cn.gobies.org/docs.htmlNmap(更推荐命令行的,图形化的功能不够全)Nmap扩展默认在scripts文件夹下,其他第三方扩展下载:插件下载:https://github.com/scipag/vulscanhttps://github.com/vulnersCom/nmap-vulners博客:https://www.cnblogs.com/shwang/p/1262366.
2022-01-23 19:21:26
1895
原创 XXE漏洞
概念全称XML External Entity Injection, 即xml外部实体注入漏洞,导致可加载恶意外部文件,造成文件读取、命令执行、内网端口 扫描、攻击内网网站等危害。了解一些xml,我们知道xml是一种数据存储类型,用于传输,而html用于显示。XML被设计为数据和存储数据,XML文档结构包括XML声明、DTD文档类型定义(可 选)、文档元素,其焦点是数据传输工具。自己当初的学习笔记XML与HTML的主要差异:XML被设计为传输和存储数据,其焦点是数据的内容。HTML被设.
2022-01-21 11:34:04
617
原创 php反序列化学习(1)
序列化与反序列化序列化(Serialization):将对象的状态信息转换为可以存储或传输的形式的过程。在序列化期间,对象将其当前状态写入到临时或持久性存储区。反序列化:从存储区中读取该数据,并将其还原为对象的过程,称为反序列化。简而言之:就是序列化后将对象转换为二进制等形式,反序列化就是将其逆回来,就是数据类型格式的相互转换。反序列化漏洞原理未对用户输入的序列化字符串进行检测,导致攻击者可以控制反序列化过程,从而导致代码执行、SQL注入、目录遍历等不可控后果。在反序列化的过程中自动触发了.
2022-01-18 20:08:30
532
原创 逻辑类漏洞
1.越权:分为水平越权、垂直越权与未授权访问。水平越权:通过更换某个ID之类的身份标识,从而使A账号获取修改B账号数据;垂直越权:使用低权限身份的账号,发送高权限账号才能有的请求,获取其更高权限的操作;未授权访问:通过删除请求中的认证信息后重放该请求,依旧可以访问或者完成操作(比如随意登录后台);2.pikachu靶场:1)水平越权:我们修改username即可更改为其他用户。源码:<?php/** * Created by runner.han * There is n.
2022-01-14 16:50:39
1102
原创 文件操作安全
1.文件上传:可以见上篇博客。2.文件包含:1)就是将指定文件当成指定脚本代码执行,可以包含txt、图片:2) php 中涉及到的常见危险函数:include()include_once()require()require_once()3)分类为本地包含与远程包含。(在php中all_url_include开启时可以远程包含)4)绕过:00截断、长度溢出截断、伪协议等。比如有的include函数会在这样写,我们就需要00截断来绕过:$filename=$_GET['filen..
2022-01-10 12:33:05
1662
原创 SSRF漏洞学习
1.原理及成因ssrf:服务端请求伪造,这个漏洞危害其实挺大的,外网直接打到内网,利用一台服务器上的web服务进而访问内网其他资产信息。SSRF 形成的原因:大都是由于服务端提供了从其他服务器应用获取数据的功能且没有对目标地址做过滤与限制。比如从指定URL地址获取网页文本内容,加载指定地址的图片,下载等等。简而言之就是无法外网直接访问内网的其他主机,就能这个存在ssrf的主机当跳板来实现访问内网。2.危险函数主要是curl()函数,不过别的类似可以利用协议引入的函数也可以,比如file_get_.
2022-01-02 00:33:37
1007
原创 CSRF漏洞
1.CSRF:CSRF:跨站请求伪造(Cross-site request forgery)CSRF是一种挟制用户在当前已登录的Web应用程序上执行非本意的操作的攻击方法。当用户访问含有恶意代码的网页时,会向指定正常网站发送非本人意愿的数据请求包(如转账给hack,向hack发送API等)如果此时用户恰好登录了该正常网站(也就是身份验证是正常的)就会执行该恶意代码的请求,从而造成CSRF。XSS 利用的是用户对指定网站的信任,CSRF 利用的是网站对用户网页浏览器的信任。CSRF是借用户的权限完成攻
2022-01-01 20:48:01
1849
1
原创 【功防世界】base64stego
1.首先zip伪加密破解密码:2.打开文件看到很多行base64,U3RlZ2Fub2dyYXBoeSBpcyB0aGUgYXJ0IGFuZCBzY2llbmNlIG9mIHdyaXRpbmcgaGlkZGVuIG1lc3NhZ2VzIGluIHN1Y2ggYSB3YXkgdGhhdCBubyBvbmV=LCBhcGFydCBmcm9tIHRoZSBzZW5kZXIgYW5kIGludGVuZGVkIHJlY2lwaWVudCwgc3VzcGU=Y3RzIHRoZSBleGlzdGVuY2Ugb
2021-12-23 20:01:27
641
原创 【攻防世界】ext3
1.下载得到一个无后缀文件,根据题目百度ext,大致就是一个文件系统,里边必定包含着flag。2.根据wp知道可以在linux下打开该文件,mount命令挂载linux系统外的文件:mnt f1fc23f5c743425d9e0073887c846d23 /mnt/123/可以在文件夹下看到许多文件。3.在目录下打开该文件:...
2021-12-23 19:25:47
890
原创 [HarekazeCTF2019]Sqlite Voting
1.打开题目可以看到连链接到两个地址,投票是简单的post传输id,fuzz一下不出所料过滤挺严:source.php源码:sql文件:2.审计下发现只能在update处注入,而且update成功与否返回结果不同,因此此处用盲注,但是已经把单双引号过滤了,没办法闭合,那怎么办?参考writeup貌似是利用报错来进行盲注,利用了sqllite的一个abs()函数溢出漏洞:payload:abs(case(length(hex((select(flag)from(flag))))&{1&l
2021-12-23 02:44:46
2169
原创 【buuctf】我吃三明治
1.这题不是将信息隐藏在第二张图片里而是在两者拼接处:2.jpg文件头:FFD8开始;FFD9结束,中间类似base32:flag{6f1797d4080b29b64da5897780463e30}
2021-12-19 18:14:34
925
转载 php获取文件后缀6种方法
php获取文件后缀的6中方法: <?php$filename = 'mypic.gif'; // 1. The "explode/end" approach$ext = end(explode('.', $filename)); // 2. The "strrchr" approach$ext = substr(strrchr($filename, '.'), 1); // 3. The "strrpos" approach$ext = substr($filename, st
2021-12-19 11:31:28
1240
原创 【buuctf】RSA4(低加密指数广播攻击)
1.首先可以看出三组n与c,其次两者都是5进制,需要转换。2.对于低指数攻击,之前那篇总结博客也写过,需要着重了解下中国剩余定理:3.exp:# -*- coding: UTF-8 -*-import gmpy2import libnumdef CRT(data): sum = 0 m = 1 for n in data: m = m*n[0] for n,c in data: m1 = m/n mr = gmpy2.invert(m1,n) sum = sum+mr
2021-12-19 00:56:43
1914
原创 【buuctf】RSA5(低指数加密广播攻击)
1.描述:即如本题一样有多个n,c但m,e相同。2.思路:试图找到每个n的最大公因式,从而分解n,得到p,q。3.exp(python2环境):import gmpy2e=65537n1 = 20474918894051778533305262345601880928088284471121823754049725354072477155873778848055073843345820697886641086842612486541250183965966001591342031562953
2021-12-19 00:42:20
919
原创 【buuctf】rsa2(e很大的指数攻击)
1.根据题目解出d然后求其md5值即可,直接rsawienerattack尝试分解e得到d:2.exp(python2环境下):import hashlibN = 10199180977755325347027675139926474013115768232925267350179215450700615843443200914199536724196252570595004625340018888465826249653470643879151507188586089755273665689956
2021-12-19 00:23:56
1990
原创 [GUET-CTF2019]BabyRSA(p,q灵活应用)
1.首先可以推算:n=p*q=(p+1)(q+1)-(p+q)-1欧拉函数:φ(n)=(p-1)(q-1)=phi=(p+1)(q+1)-2*(p+q)2.exp:import libnuma=0x1232fecb92adead91613e7d9ae5e36fe6bb765317d6ed38ad890b4073539a6231a6620584cea5730b5af83a3e80cf30141282c97be4400e33307573af6b25e2eab=0x5248becef1d925d4
2021-12-18 23:53:49
570
原创 【buu】Dangerous RSA(小指数攻击)
1.e为16进制3,小指数攻击:2.exp:#python3## -*- coding: utf-8 -*-#from gmpy2 import irootimport libnume = 0x3n = 0x52d483c27cd806550fbe0e37a61af2e7cf5e0efb723dfc81174c918a27627779b21fa3c851e9e94188eaee3d5cd6f752406a43fbecb53e80836ff1e185d3ccd7782ea846c2e91a7b0
2021-12-18 23:33:59
1896
原创 【BUU】RSA (n+e+c+p+q=m+公钥提取)
下载下来得到:2.在线公钥解析或yahu:3.在线分解n:4.5.exp(需要改文件路径):import rsae= 65537n= 86934482296048119190666062003494800588905656017203025617216654058378322103517p= 285960468890451637935629440372639283459q= 304008741604601924494328155975272418463d= 8117616...
2021-12-18 23:16:52
887
原创 【BUUCTF】 RSA2(dp泄露)
参考:https://www.freesion.com/article/26551439803/https://www.it610.com/article/1289100237083844608.htm
2021-12-18 22:42:14
1302
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅