首页
学习
活动
专区
工具
TVP
发布

BinarySec

专栏作者
22
文章
34515
阅读量
27
订阅数
unexploitable Writeup[pwnable.tw]
最近在刷pwnable.tw(类似pwnable.kr,不过是台湾的)的题,看到了一个unexploitable的题目。根据题目描述:
WeaponX
2018-09-20
1.3K0
Linux如何搜索动态库
在linux下安装一些程序,或者在做pwnable的时候经常出现没有找到动态库的情况。
WeaponX
2018-09-20
3.4K0
mmap及linux地址空间随机化失效漏洞
Linux下动态库是通过mmap建立起内存和文件的映射关系。其定义如下void* mmap(void* start,size_t length,int prot,int flags,int fd,off_t offset);,在第一个参数start为NULL的时候系统会随机分配一个地址,我们可以通过示例来看mmap映射地址的流程。
WeaponX
2018-09-20
2.2K0
md5 caculator Writeup[pwnable.kr]
下载下来直接运行,提示缺libcrypto库,但是我却安装过了openssl。于是在lib下看,确实是没有这个库。因为我的环境是ubuntu x86_64装的openssl也是64位的,所以要安装32位的库,使用这个命令:
WeaponX
2018-09-20
7430
如何在python中定义有序字典
0x00 前言 最近遇到一个大坑,在测一个程序的时候。程序接受的数据是json,但是要求json是有序的(吐槽一样,要求有序的用json干屁啊!) 当我用python构造字典的时候,总会给我排序,用json.dumps转化为json后。导致程序解析失败。所以,在此研究了一下如何构造有序的json。 0x01 解决 网上查了一下,用到了python中有序字典OrderdDict,在collections库中。 在默认情况下: >>> d= {} >>> d["2"]=2 >>> d["1"]=1 >>> d[
WeaponX
2018-07-11
1.7K0
CVE-2016-0095从PoC到Exploit
利用Vmware进行双机调试 使用管理员模式运行cmd bcdedit /copy {current} /d “Windwos7[DEBUG]” 开启调试bcdedit /debug ON和bcdedit /bootdebug ON 在Vmware的设备管理添加一个串口\\.\pipe\com_1 执行Windbg.exe -b -k com:port=\\.\pipe\com_1,baud=115200,pipe 注意 vmware 有个坑,默认添加打印机占用串口com1口,所以我们开启内核调试的串口就变
WeaponX
2018-07-11
1.1K0
python脚本中使用Django函数
最近有一个需求,需要使用Django的ORM。众所周知,可以使用python manage.py shell在Django shell中使用,但是这次的场景中需要的代码量比较大,所以用Django shell很不方便。 其实,在python脚本中导入Django的环境即可使用当前的Django ORM。 比如,我们的脚本和manage.py在同级目录下。我们Django Project叫demo,可以使用如下脚本来导入Django环境。 import osimport syssys.path.append(
WeaponX
2018-06-13
6080
关于主题暂时更换
0x00 之前使用的主题-Material Material,主题的Demo在https://blog.viosey.com,主题的项目地址https://github.com/viosey/hexo-theme-material。 优点我总结一下: 外观美观 扩展性强 中文支持好 国内应用扩展支持好 但是个人觉得图片有点过多,对于我这种托管在代码平台上的影响访问速度;然后就是代码高亮有一些bug,看了项目的issue(https://github.com/viosey/hexo-theme-materia
WeaponX
2018-05-04
6810
哈希长度扩展攻击
0x00 简介 Hash,一般翻译做“散列”,也有直接音译为“哈希”的,就是把任意长度的输入(又叫做预映射, pre-image),通过散列算法,变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,所以不可能从散列值来唯一的确定输入值。简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。 –摘自百度 哈希长度扩展攻击简单的来讲就是: 1.知道一个密文(SECRET)的哈希 2.知道密文的长度(SEC
WeaponX
2018-05-04
1.8K0
搭建一个Hexo博客
0x00 背景 一直想搭建一个自己的博客,之前在Aliyun虚拟主机上搭了一个WordPress+MySQL的个人博客。后来维护成本太大,主机和域名都没有续费被回收了。最近再看别人在写,自己也想搞一个试试水。研究了几天,发现Hexo还真不错,所以就选了这个。 目前,博客搭建在coding.net上,使用万网的域名。 Hexo介绍 Hexo是一款基于Node.js的博客框架,可以将Markdown格式的文本渲染为HTML代码。所以,博客基本就是纯静态,维护相对方便。但是缺点也很明显——经常换编写环境使用不便,
WeaponX
2018-05-04
2.6K0
Django运行时报错
年前为了偷懒,做了一个自动化的web程序,用Django写的。春节放假回来发现竟然跑不起来了。 报如下错误: TypeError: view must be a callable or a list/tuple in the case of include() 顺手搜了一下,原来是手贱给Django升级了,最新版本的不支持原来的urls的写法了。 在django最新版本1.10的写法: from django.conf.urls import url from django.conf.urls import
WeaponX
2018-05-04
8090
一种绕过TACACS+的思路
最近对一些交换机做口令猜测检查的时候遇到一个奇怪的现象:配置AAA认证的交换机总能扫出一些弱口令,而且每次都不一样还都不能登录,更神奇的是返回的session确实能执行命令。 0x00 什么是AAA认证 AAA是指用使用Authentication、Authorization、Accounting三种功能对要管理交换机的用户做控制。 Authentication(认证):对用户的身份进行认证,决定是否允许此用户访问网络设备。Authorization(授权):针对用户的不同身份,分配不同的权限,限制每个用户
WeaponX
2018-05-04
1.2K0
Windows x64上的x86重定向
0x00 背景 搬砖过程中遇到一个很奇怪的现象。写了一个程序利用命令regedit来读取注册表的某项值,出现了一个奇怪的现象:在某些电脑上能读到值,在另一些电脑上无法读取。 0x01 排查过程 在无法读取的机器上手动查看,注册表确实是有这个值的。百思不得其解,猜测可能是权限的问题。 设置了注册表访问权限 程序使用管理员权限运行 试了以上两种方法还是不行。 思考是否为进程权限太低?于是使用Processexp看一下进程的权限。当看到进程路径时,看出了一点端倪。 在x86的机器上,我们程序调用的regedit的
WeaponX
2018-05-04
1.9K0
一些pwn题目的解题思路[pwnable.kr]
目录 以下是solution的目录 #fd #collision #bof #flag #passcode #random Other 一些pwn题目的解题思路[pwnable.kr] II fd 根据题目描述,登录上服务器,ls一下 fd@ubuntu:~$ ls fd fd.c flag fd@ubuntu:~$ cat flag cat: flag: Permission denied 肯定flag也不能直接读取,既然给了源代码,就顺便看一下。 #include <stdio.h> #includ
WeaponX
2018-05-04
1.5K0
一些pwn题目的解题思路[pwnable.kr] II
目录 以下是solution的目录 #mistake #shellshock #coin1 #blackjack #lotto #cmd1 Other 一些pwn题目的解题思路[pwnable.kr] mistake #include <stdio.h> #include <fcntl.h> #define PW_LEN 10 #define XORKEY 1 void xor(char* s, int len){ int i; for(i=0; i<len; i++){ s[i]
WeaponX
2018-05-04
1.4K0
Exploit-Exercises Protostar writeup PART I
stack0 $ python -c "print 0x44*'a'" | ./stack0 you have changed the 'modified' variable stack1 $ python -c "print 0x40*'a'+'\x64\x63\x62\x61'" | xargs ./stack1 you have correctly got the variable to the right value stack2 import os payload = 'a'*0x40 + '\
WeaponX
2018-05-04
7000
CVE-2010-3333分析[漏洞战争]
CVE-2010-3333漏洞是一个栈溢出漏洞,该漏洞是由于Microsoft word在处理RTF数据的对数据解析处理错误,可被利用破坏内存,导致任意代码执行。 首先使用metsaploit生成crash poc msf > search CVE-2010-3333 [!] Module database cache not built yet, using slow search Matching Modules ================ Name
WeaponX
2018-05-04
1.7K0
勒索软件WannaCry的FAQ
什么是勒索软件 勒索软件就是利用加密手段,加密感染机器上的特定文件。要求用户支付赎金(通常为比特币)后,黑客会解密被加密的文件。 什么是比特币 比特币利用区块链(Block chain)技术,通过计算产生,总量趋于一个固定值,可以兑换成一些现实货币。 WannaCry勒索软件为什么会这么火 勒索软件流程时间比较长,但是WannaCry作为勒索软件中的一员,利用了NSA方程式组织的SMB漏洞利用工具EternalBlue来远程执行任意代码,这个漏洞在2017年3月微软补丁日被修复,补丁编号MS17-010。因
WeaponX
2018-05-04
8210
ISCC中pwn200 shell无法启动原因详解
0x00 背景 一朋友问到在pwn中,gdb调试看到了systemm("/bin/sh")了,但是shell确无法启动。于是我详细看了一下这个题目,发现自己的exploit绝大多数情况下也无法启动shell。 0x01 题目解答 用IDA逆了一下,程序很简单,printf的参数可以控制。 int __cdecl __noreturn main(int argc, const char **argv, const char **envp) { int v3; // [sp+14h] [bp-6Ch]@3
WeaponX
2018-05-04
1.3K0
Ubuntu上源码调试glibc
0x00 背景 最近有个需求,需要源码调试glibc。由于系统的glibc没有调试符号,所以也算费了一番周折。不过ubuntu还是比较人性化的。 0x01 方法 首先在ubuntu上安装带调试符号的libc sudo apt-get install libc-dbg 在32位下命令如下: sudo apt-get install libc-dbg:i386 其次,需要通过apt来下载源码。Ubuntu的源码是基于GNU libc做了修改,随意最好通过Ubuntu的源来下载。 sudo apt-get ins
WeaponX
2018-05-04
3.8K0
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档