
精华转载
文章平均质量分 80
PolluxAvenger
这个作者很懒,什么都没留下…
展开
-
也说同步异步阻塞非阻塞
这里所说的概念都是指 API 和 网络 I/O 方面的,如果是其他科目同一词汇可能表达的是完全不同的概念,比如布式系统里的同步表示是各节点按照时钟节拍同步,而异步是收到消息后立即执行同步就是调用方一直等着被调方完成 异步就是调用方不必等着被调方完成,完成后被调方通知调用方 阻塞就是调用方一直等着消息 非阻塞就是调用方不必一直等待消息,可以先去干别的举个例子,就用在饭店点菜做例子 同步阻塞就是原创 2016-05-31 12:48:39 · 655 阅读 · 0 评论 -
Linux和Windows的换行
'\r' 回车,回到当前行的行首,而不会换到下一行;'\n' 换行,换到当前位置的下一行,而不会回到行首;回车”(Carriage Return)和“换行”(Line Feed)这两个概念的来历和区别。 在计算机还没有出现之 前,有一种叫做电传打字机(Teletype Model 33,Linux/Unix下的tty概念也来自于此)的玩意,每秒钟可以打10个字符。但是它有一个问题,转载 2015-05-25 18:26:14 · 640 阅读 · 0 评论 -
普通用户使用VIM保存成Root
在Linux上工作的朋友很可能遇到过这样一种情况,当你用Vim编辑完一个文件时,运行:wq保存退出,突然蹦出一个错误:E45:'readonly' option is set (add ! to override)这表明文件是只读的,按照提示,加上!强制保存::w!,结果又一个错误出现:"readonly-file-name"E212: Can't open file fo转载 2015-05-25 14:48:02 · 1788 阅读 · 1 评论 -
SQLMAP 学习稿
SQLmap学习稿(感谢羽翼的教程和乌云@瞌睡龙的用户手册以及一个简易教程)Kali和BT5中是有区别的,Kali中不需要使用./sqlmap.py来调用程序,BT5中必须要指定这样一个位置。1、用-u来指定一个可以注入的URL判断能否进行注入后,用--tables来猜解表名,在过程中自己指定猜解的线程数量,最大为10,然后等待SQLmap自动跑猜解就好了。用--conclum转载 2015-05-25 14:44:34 · 2027 阅读 · 0 评论 -
37条常用Shell命令
精选37条常用Shell命令转载 2015-06-30 00:15:50 · 608 阅读 · 0 评论 -
Base64 Base32 Base16全家桶
原文地址:http://www.iamstudy.cn/index.php/2015/05/02/505.html1、base64:它是用包括大小写字母各26个,加上10个数字,和加号“+”,斜杠“/”,一共64个字符来表示所有的ascii字符。原理: 3个字符为一组(三组),将字符ascii编码以二进制表示出来(就有24比特),由于2的6次方等于64,所以每6个比特又重新为一个组(这转载 2015-06-05 23:03:27 · 16791 阅读 · 0 评论 -
GitHub for Windows安装失败
原文链接:http://mamicode.com/info-detail-12325.html1、安装前的各种操作:(1)打开控制面板→ Internet 选项→“安全”选项卡;(2)选择“可信的站点”→点击“站点”按钮:(3)弹出的窗口中的文本框中输入点击“添加” https://github-windows.s3.amazonaws.com/ ;或者去除复选框“转载 2015-06-05 22:48:22 · 599 阅读 · 0 评论 -
每个程序员都应该知道的延迟值
L1 cache reference 0.5ns一级缓存引用Branch mispredict 5ns分支错误预测L2 cache reference翻译 2015-05-22 09:09:36 · 3665 阅读 · 0 评论 -
Git指令合辑
git配置(config):git version # 查看版本git config -l # 查看当前配置git config --global user.name "Dean"转载 2015-05-22 08:57:57 · 436 阅读 · 0 评论 -
Stack 含义
原文地址:http://www.ruanyifeng.com/blog/2013/11/stack.html含义一:数据结构stack的第一种含义是一组数据的存放方式,特点为LIFO,即后进先出(Last in, first out)。在这种数据结构中,数据像积木那样一层层堆起来,后面加入的数据就放在最上层。使用的时候,最上层的数据第一个被用掉,这就叫做"后进先出"。与这种转载 2015-06-16 22:31:29 · 536 阅读 · 0 评论 -
字符串与编码
一句话建议:涉及兼容性考量时,不要用记事本,用专业的文本编辑器保存为不带 BOM 的 UTF-8。* * *如果是为了跨平台兼容性,只需要知道,在 Windows 记事本的语境中:所谓的「ANSI」指的是对应当前系统 locale 的遗留(legacy)编码。[1]所谓的「Unicode」指的是带有 BOM 的小端序 UTF-16。[2]所谓的「UTF-8」指的是带 BOM 的转载 2015-05-25 19:05:36 · 398 阅读 · 0 评论 -
Metasploit 学习笔记
在Kali中使用Metasploit,需要先开启PostgreSQL数据库服务和Metasploit服务 然后就可以完整的利用 msf 数据库查询 exploit 和记录service postgresql startservice metasploit start如果不想每次开机都这样,还可以配置随系统启动update-rc.d postgresql enableupdate-rc.d me原创 2015-07-11 23:11:05 · 21657 阅读 · 0 评论 -
Python Security 之 反向Shell
首先我们先演示使用Python如何利用web服务器的功能,把文件从另一台主机传送过来。 我们假设你有一台傀儡主机,你现在想下载傀儡机上面的的文件。那么你就可以使用shell(或meterpreter)去访问这台傀儡机,你可以通过一行Python代码把傀儡机建立成为一个web服务器,然后下载傀儡机上面的文件.创建一个python HTTP服务器可以直接使用python的内建函数”SimpleHTTP原创 2015-07-14 19:44:36 · 1296 阅读 · 0 评论 -
Python Security 之 端口扫描
这一章将会演示如何通过Python的网络连接来开发一个基础的端口扫描器 我们的设计思路是使用socket一遍又一遍的去连接ip与端口的组合的新值下面的代码就演示了如何使用内建的socket模块去建立一个socket连接import sockets = socket.socket()s.connect(('127.0.0.1s', 22))s.send('Primal Security \n')原创 2015-07-14 19:28:40 · 843 阅读 · 0 评论 -
Python Security 入门
这篇文章假定你的系统是Linux,python版本是2.*。你可以使用内置的help()函数去了解一个函数的详细。记住这一点,它可以帮助你在学习语言的时候学习到更多的详细内容. 如help(type)有时你会想把一些变量和字符串连接起来然后通过脚本显示出来。那么你就需要使用str()函数把整型转换成字符串类型ip = '1.1.1.1'port = 55print 'the ip is原创 2015-07-13 22:03:03 · 1697 阅读 · 0 评论 -
Linux和Windows堆栈溢出利用对比
堆栈溢出的利用,有三大条件,一是返回点的定位,二是ShellCode的编写,三是跳转到ShellCode。1.返回点的定位在Windows下,F.ZH的在它经典的《菜鸟版Exploit编写指南之一》的文章中,详细的讲述了利用报错对话框精确定位溢出返回点的方法。 Windows下弹出报错对话框,显示“0x74737271”指令引用“0x74737271”内存,该地址不能为“read”。里面隐含的意思原创 2015-07-13 14:17:41 · 1937 阅读 · 0 评论 -
Metasploit 整理笔记
一.名词解释 exploit 测试者利用它来攻击一个系统,程序,或服务,以获得开发者意料之外的结果。常见的 有内存溢出,网站程序漏洞利用,配置错误exploit。 payload 我们想让被攻击系统执行的程序,如reverse shell 可以从目标机器与测试者之间建立一 个反响连接,bind shell 绑定一个执行命令的通道至测试者的机器。payload 也可以是只 能在目标机器上原创 2015-07-12 14:31:58 · 14318 阅读 · 1 评论 -
逆向分析的经验
感谢Light4Freedom团队的Wins0n写的技术分享PPT以及周侃的PPT常用工具:Windbg / OllyDbg / Immunity Debugger / PEiD IDA Pro / Hex-Rays Decompiler / ARM / x64 …… ILSpy Metasploit Python Putty / WinSCP / nc C32Asm / 010Edi原创 2015-07-03 16:06:35 · 2778 阅读 · 0 评论 -
暴力搜索内存空间获得API的线性地址
暴力搜索内存空间中的API一个PE文件在编译和连接成功后,会有一个Import Table,当需要执行 API的时候,会先在Import Table中得到API的地址,然后调用它 而病毒是在PE文件编译好之后才插入的,它本身没有Import Table ,那么要如何得到API的地址呢? 任何一个DLL,都可以用LoadLibraryA来装入,然后通过GetProcAddress 来取得这个DLL转载 2015-07-03 18:04:46 · 808 阅读 · 0 评论 -
判断素数
算法判断是否是素数,用在大整数转载 2015-07-04 10:16:14 · 469 阅读 · 0 评论 -
缓冲区溢出学习
溢出学习整理笔记原创 2015-07-04 11:49:52 · 1399 阅读 · 0 评论 -
网络字节顺序
● 字节序的定义字节序,顾名思义字节的顺序,再多说两句就是大于一个字节的数据在内存中的存放顺序(一个字节的数据当然就无需谈顺序的问题)。在大部分的开发中我们不需要考虑字节序的问题。唯有在跨平台以及网络程序应用中字节序才是一个应该被考虑的问题。● 网络应用的字节序网络字节序是TCP/IP规定好的一种数据表示格式,它与具体的CPU类型、操作系统无关,从而可以保证数据在不同主机之间传输时转载 2015-05-16 16:15:02 · 1478 阅读 · 0 评论 -
Reaver 基本用法示例
airmon-ng start wlan0 //启动mon0监控reaver -i mon0 -b MAC -a -S -vv //普通用法如果,90.9%进程后死机或停机,请记下PIN前四位数,用指令:reaver -i mon0 -b MAC -a -vv -p XXXX(PIN前四位数)其他命令airodump-ng mon0 用来扫描周围无线信号wash -i mo转载 2015-05-04 22:04:20 · 1735 阅读 · 0 评论 -
Microsoft SQL Server 2008 安装说明
一、安装前的准备1. 需要.Net Framework 3.5,若在Vista或更高的OS上需要3.5 SP1的支持(在SQL2008安装的前会自动更新安装)2. 需要Widnows PowerShell的支持,WPS是一个功能非常强大的Shell应用,命令与DOX/UNIX兼容并支持直接调用.NET模块做行命令编辑,是非常值得深入研究的工具(在SQL2008安装时会自动更新安装)3.转载 2014-09-25 21:06:01 · 583 阅读 · 0 评论 -
23 种设计模式
创建型模式(CreationalPattern)1、抽象工厂模式(AbstractFactory Pattern)介绍提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。2、建造者模式(Builder Pattern)介绍将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。3、原型模式(Prototype Pattern转载 2014-09-04 12:24:44 · 444 阅读 · 0 评论 -
进程和线程
进程(process)和线程(thread)是操作系统的基本概念,但是它们比较抽象,不容易掌握。计算机的核心是CpU,它承担了所有的计算任务.它就像一座工厂,时刻在运行假定工厂的电力有限,一次只能供给一个车间使用.也就是说,一个车间开工的时候,其他车间都必须停工。背后的含义就是,单个CPU一次只能运行一个任务。进程就好比工厂的车间,它代表CPU所能处理的单个任务.任一寸刻,CpU总是运转载 2014-09-02 14:17:28 · 413 阅读 · 0 评论 -
睡眠和休眠
1.1台式机的普通睡眠(混合式睡眠关闭),这和xp下的待机是一个意思了,就是除内存以外所有设备都断电,内存只上直流电源(没有时钟输入,这个很重要),唤醒的时候恢复对其它设备的供电,并返回工作状态。1.2台式机的休眠,xp下也有这个功能,把内存里的所有数据存储到硬盘的一个连续空间里,并切断所有电源。在恢复时,将硬盘里临时存储的内存数据恢复到内存里,并返回工作状态。1.2.1在电源计划里,对于转载 2014-09-02 14:10:18 · 852 阅读 · 0 评论 -
开源协议的对比
11转载 2014-08-22 18:00:55 · 4078 阅读 · 0 评论 -
堆和栈的区别
一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分1、栈区(stack)— 由编译器自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。3、全局区(静态区)(sta转载 2014-08-09 17:18:37 · 445 阅读 · 0 评论 -
Vrilog HDL 课程设计——数字钟
为了完成小学期的课程设计原创 2014-09-18 20:44:24 · 2573 阅读 · 0 评论 -
VMWare Workstation 10.0 虚拟机克隆后的网卡配置
vmware 克隆 centos 修改 linux mac 地址 Device eth0 does not seem to be present, delaying initialization 故障背景: 在vmware workstation中了完全克隆了一个已经存在的centos的虚拟机,启动之后发现网卡没有启动。于是重启一下network服务,发现转载 2014-08-21 20:31:07 · 672 阅读 · 0 评论 -
如何阅读源代码
1、在复查软件系统时, 要注意, 系统是由很多部分组成的, 不仅仅只是执行语句. 还要注意分析以下内容: 文件和目录结构|生成和配置过程|用户界面和系统的文档.2、转载 2014-08-07 19:39:40 · 633 阅读 · 0 评论 -
int argc,char *argv[] 为什么报错
以前看到有main(int argc,char *argv[])的程序都需要在dos命令状态下输入命令,也不知道dos怎么打开,所以一直没尝试,今天又碰到一个,所以决定学习一下。首先写好我的程序,我的是vs2008。程序如下:[cpp] view plaincopy#include void main(int argc,char转载 2014-11-11 09:44:52 · 1662 阅读 · 0 评论 -
软件版本扫盲
1、软件版本阶段说明*Alpha版:此版本表示该软件在此阶段主要是以实现软件功能为主,通常只在软件开发者内部交流,一般而言,该版本软件的Bug较多,需要继续修改。*Beta版:该版本相对于α版已有了很大的改进,消除了严重的错误,但还是存在着一些缺陷,需要经过多次测试来进一步消除,此版本主要的修改对像是软件的UI。*RC版:该版本已经相当成熟了,基本上不存在导致错误的BUG,与即将发转载 2014-10-11 22:20:39 · 2399 阅读 · 0 评论 -
Kali 更新和 Kali metapackages
通常我们更新kali需要执行的命令为:apt-get update&apt-get upgrade或者apt-getupdate&apt-get dist-upgrade关于apt-get update和apt-get dist-upgrade的区别如下:apt-get upgrade可以使用这条命令更新软件包,apt-getupgrade不仅可以从相同版本号的发布版中更新转载 2015-04-25 09:59:47 · 2134 阅读 · 1 评论 -
Makefile 通用模版
其中makefile_inlcude为#################################################################################### makefile_include#########################################################by rainfish######转载 2015-04-26 21:04:05 · 469 阅读 · 0 评论 -
Visual Studio Warning C4996
将过去的工程用VS新版本打开的时候。你有可能会遇到一大堆的警告:warning C4996。比如:warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNI转载 2015-01-24 18:30:25 · 2559 阅读 · 0 评论 -
100个熟词生义
act n.法案,行为;v.行动address v.演说,致辞agent n.动因anchor n.主持人,主播appeal n.吸引力;v.呼吁,上诉appropriate v.挪用apprehensive adj.忧虑的authority n.权转载 2015-02-03 20:25:14 · 1405 阅读 · 0 评论 -
和我一起写Makefile
跟我一起写 Makefile陈皓 (优快云)概述——什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在U转载 2014-10-13 20:37:41 · 556 阅读 · 0 评论 -
hackxor渗透平台环境的配置与使用
http://sourceforge.net/projects/hackxor转载 2014-10-03 12:47:11 · 2682 阅读 · 0 评论