<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[meanong的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/meanong</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; meanong]]></copyright><item><title><![CDATA[学习高手的代码风格之（二）---abs反汇编分析，理解为何abs会返回负数]]></title><link>https://blog.youkuaiyun.com/meanong/article/details/81625865</link><guid>https://blog.youkuaiyun.com/meanong/article/details/81625865</guid><author>meanong</author><pubDate>Mon, 13 Aug 2018 10:46:25 +0800</pubDate><description><![CDATA[

函数介绍
反汇编分析
学到的知识




abs是我们常用的取绝对值的函数，并且实现也很简单，按照以往自己实现abs功能的时候，一定会选择判断输入是否大于0，然后分别处理，但是今天对abs的分析，在不使用判断语句的情况下，对一个数取了绝对值，让我对计算机处理数的方法有了更深的了解。

函数介绍

功 能： 求整数的绝对值 
头文件：stdlib.h 
函数原型：int abs(int i); ...]]></description><category></category></item><item><title><![CDATA[学习高手的代码风格之（一）---strlen反汇编分析]]></title><link>https://blog.youkuaiyun.com/meanong/article/details/81484288</link><guid>https://blog.youkuaiyun.com/meanong/article/details/81484288</guid><author>meanong</author><pubDate>Tue, 07 Aug 2018 16:54:31 +0800</pubDate><description><![CDATA[[toc] 
开个新坑，分析一些高端代码的反汇编程序，先从常见的下手，分析一下strlen。

函数介绍

size_t strlen( const char *string ); 
非常常用的一个函数，看起来应该很简单，所以从它下刀子了。 
Return Value

Each of these functions returns the number of characters in stri...]]></description><category></category></item><item><title><![CDATA[c++ 中const关键字定义属性（Visual Studio又在给我们添麻烦啦）]]></title><link>https://blog.youkuaiyun.com/meanong/article/details/81355106</link><guid>https://blog.youkuaiyun.com/meanong/article/details/81355106</guid><author>meanong</author><pubDate>Thu, 02 Aug 2018 12:21:08 +0800</pubDate><description><![CDATA[

问题发现
问题分析
分析验证





在c++中const关键字是一个常用的点，关于const关键字的介绍网上也是比比皆是，今天写代码过程中发现一个问题在网络中没有找到，所以记载一哈。

问题发现

在c++中有四种类型转换的方式，分别是static_cast、dynamic_cast、const_cast、reinterpret_cast，关于各种转换方式的区别，可以查看别的博客，我们今天...]]></description><category></category></item><item><title><![CDATA[windows平台中让函数在main函数之前执行的方法]]></title><link>https://blog.youkuaiyun.com/meanong/article/details/81163760</link><guid>https://blog.youkuaiyun.com/meanong/article/details/81163760</guid><author>meanong</author><pubDate>Mon, 23 Jul 2018 11:02:35 +0800</pubDate><description><![CDATA[

1.将要执行的代码写到类的构造函数中，并定义对应的全局变量
2.将要执行的代码写到TLS回调函数中





在c/c++中，我们都知道main函数是程序开始执行的地方，但是在进行反调试的时候，很多时候都需要调试检测函数在main函数之前执行。以下为总结的方法，如果有别的方法，欢迎不吝赐教。

1.将要执行的代码写到类的构造函数中，并定义对应的全局变量

在windows平台中，执行我们手写的...]]></description><category></category></item><item><title><![CDATA[Dll导出函数劫持通用方法]]></title><link>https://blog.youkuaiyun.com/meanong/article/details/80572951</link><guid>https://blog.youkuaiyun.com/meanong/article/details/80572951</guid><author>meanong</author><pubDate>Mon, 04 Jun 2018 21:33:07 +0800</pubDate><description><![CDATA[

问题发现
劫持方法
劫持思路
可能问题
劫持实现
导出函数列表
函数上下文
获取真函数的地址
eax值的保存
完整代码









问题发现

dll劫持是一种常见的攻击方法，但是也可以用在不知道程序源码的情况下调试dll的函数。之前在滴水教程的视频中注意到一个问题，视频作者演示了一个劫持messagebox函数，打印输出参数的过程，当时学生提问是否存在一种通用的方法可以劫持所有的函数，...]]></description><category></category></item><item><title><![CDATA[QQ快速登录协议的分析与漏洞利用]]></title><link>https://blog.youkuaiyun.com/meanong/article/details/80502195</link><guid>https://blog.youkuaiyun.com/meanong/article/details/80502195</guid><author>meanong</author><pubDate>Tue, 29 May 2018 21:33:04 +0800</pubDate><description><![CDATA[协议验证

QQ快速登录协议是本机登录了QQ的情况下可以方便的快速登录各种网页，包括QQ空间等。但是QQ的这个快捷登录功能又是如何实现的呢，毕竟浏览器上的代码没有权限和计算机上的其他应用进行交互。今天在看吾爱破解论坛的时候看到这样一篇帖子激起了我的兴趣。帖子链接：https://www.52pojie.cn/thread-591949-1-1.html 
按照帖子的说法，QQ的快捷登录是通过在本地...]]></description><category></category></item><item><title><![CDATA[visual studio中使用printf打印迭代器内容时与cout的差别]]></title><link>https://blog.youkuaiyun.com/meanong/article/details/80489247</link><guid>https://blog.youkuaiyun.com/meanong/article/details/80489247</guid><author>meanong</author><pubDate>Mon, 28 May 2018 22:29:10 +0800</pubDate><description><![CDATA[

问题起源
测试另一段代码
反汇编查看代码
猜想代码测试
使用vc++ 6.0进行编译




迭代器是c++中用于遍历容器中的元素的数据类型，但是今天在使用vs2015进行调试的时候，发现对于c++的容器的实现，vs 2015与vc++ 6.0有很大的差异，应该是使用vs进行编译时的一个漏洞吧。

问题起源

关于下面的代码，在vs 2015和vc++ 6.0两个平台上的运行结果大不相同。

...]]></description><category></category></item><item><title><![CDATA[ShellCode自定位的几种实现方法]]></title><link>https://blog.youkuaiyun.com/meanong/article/details/80482736</link><guid>https://blog.youkuaiyun.com/meanong/article/details/80482736</guid><author>meanong</author><pubDate>Mon, 28 May 2018 15:25:26 +0800</pubDate><description><![CDATA[在编写shellcode的时候，经常需要定位当前程序的运行位置，所以在shellcode中定位运行的位置是一种常用的场景，本文记录了几种用于定位代码运行位置的方法。 
[toc]



1.CALL/POP型

01    E8 00000000   call  06    将eip压栈，然后跳转到eip执行 
06    58                    pop eax   将eip出...]]></description><category></category></item><item><title><![CDATA[上取整除法的实现]]></title><link>https://blog.youkuaiyun.com/meanong/article/details/80297877</link><guid>https://blog.youkuaiyun.com/meanong/article/details/80297877</guid><author>meanong</author><pubDate>Sun, 13 May 2018 11:28:55 +0800</pubDate><description><![CDATA[在任何编程语言中，下取整除法和准确除法都时直接实现的方法，而上取整除法则需要自行实现。现在记录一个借助下去整除法实现上取整除法的小技巧：



int a,b,c;
c=(a+b-1)/b;//实现了a除以b结果上取整。...]]></description><category></category></item><item><title><![CDATA[使用进程名获取进程id和进程句柄]]></title><link>https://blog.youkuaiyun.com/meanong/article/details/80201045</link><guid>https://blog.youkuaiyun.com/meanong/article/details/80201045</guid><author>meanong</author><pubDate>Fri, 04 May 2018 22:18:06 +0800</pubDate><description><![CDATA[

相关api介绍
CreateToolhelp32Snapshot
Process32First
Process32Next


利用进程名获取进程id代码实现





本文内容为编写一个任务管理器所需要的API介绍以及如何通过进程名称获取进程id的方法，函数使用频率高，所以贴出来以便复用。



相关api介绍



CreateToolhelp32Snapshot

函数功能为拍摄当前所有...]]></description><category></category></item><item><title><![CDATA[c++ 对vector中元素进行排序，查找，返回下标的方法]]></title><link>https://blog.youkuaiyun.com/meanong/article/details/80179680</link><guid>https://blog.youkuaiyun.com/meanong/article/details/80179680</guid><author>meanong</author><pubDate>Thu, 03 May 2018 14:32:09 +0800</pubDate><description><![CDATA[

排序
对vector中的元素进行排序
自定义排序方法


查找指定元素，并返回迭代器
由迭代器得到元素下标







排序



对vector中的元素进行排序

使用头文件algorithm中的sort可以对vector中的元素进行从小到大排序。使用方法为：



#include&amp;amp;lt;vector&amp;amp;gt;
#include&amp;amp;lt;algorithm&amp;amp;gt;
#include&amp;amp;lt;i...]]></description><category></category></item><item><title><![CDATA[c++函数返回值编写规范问题]]></title><link>https://blog.youkuaiyun.com/meanong/article/details/80107959</link><guid>https://blog.youkuaiyun.com/meanong/article/details/80107959</guid><author>meanong</author><pubDate>Fri, 27 Apr 2018 14:48:16 +0800</pubDate><description><![CDATA[

问题发现
问题示例代码


问题分析
问题解决







问题发现

笔者在使用c++进行编码时，发现编译器在对c/c++函数进行编译的时候存在缺陷。测试的编译器包括vs2010、vs2015、vc++ 6.0、gcc等。编译器在对函数进行编译的时候，并未对函数是否能正常的返回做判断，从而可能导致函数的返回数值是一个不确定的值的逻辑问题。



问题示例代码



#include&amp;amp;amp;lt;...]]></description><category></category></item><item><title><![CDATA[leetcode 819 Most Common Word c++算法]]></title><link>https://blog.youkuaiyun.com/meanong/article/details/80096847</link><guid>https://blog.youkuaiyun.com/meanong/article/details/80096847</guid><author>meanong</author><pubDate>Thu, 26 Apr 2018 17:23:07 +0800</pubDate><description><![CDATA[运行速度战胜100%的代码。



map&amp;amp;lt;string, int&amp;amp;gt; split(string inputstring, string c) {
    vector&amp;amp;lt;string&amp;amp;gt; result;
    map&amp;amp;lt;string, int&amp;amp;gt; temp_map;
    string::size_type pos1 = 0, pos2 = 0;
    strin...]]></description><category></category></item><item><title><![CDATA[c++对字符串进行切割]]></title><link>https://blog.youkuaiyun.com/meanong/article/details/80096807</link><guid>https://blog.youkuaiyun.com/meanong/article/details/80096807</guid><author>meanong</author><pubDate>Thu, 26 Apr 2018 17:21:02 +0800</pubDate><description><![CDATA[

对inputstring进行切割，切分标志为字符串c,统计每种子串出现的次数，返回一个map对象。
对一个对inputstring进行切割，切分标志为字符串c,将对应的字符串转化为int型列表返回。
对一个对inputstring进行切割，切分标志为字符串c,返回切分后的子串列表。







对inputstring进行切割，切分标志为字符串c,统计每种子串出现的次数，返回一个map对象。...]]></description><category></category></item><item><title><![CDATA[关闭windows的随机地址加载（ASLR）功能。解决每次打开程序加载地址都不一样的问题]]></title><link>https://blog.youkuaiyun.com/meanong/article/details/80018392</link><guid>https://blog.youkuaiyun.com/meanong/article/details/80018392</guid><author>meanong</author><pubDate>Fri, 20 Apr 2018 14:35:04 +0800</pubDate><description><![CDATA[在windows xp之后的系统中，为了防止栈溢出，采用了ASLR（随机地址加载）的方案来保护用户程序的安全。通过ASLR可以增加系统的安全强度，但是一些手动脱壳的程序则将无法正常运行，逆向程序的难度也将增大。因此找到一种通过修改注册表的方式取消系统的ASLR功能。该功能是一个安全选项，无特殊需要不建议关闭。 
关闭方法：


  修改注册表，win+r,输入regedit即可打开注册表，新建注册...]]></description><category></category></item><item><title><![CDATA[Django快速上手]]></title><link>https://blog.youkuaiyun.com/meanong/article/details/77365945</link><guid>https://blog.youkuaiyun.com/meanong/article/details/77365945</guid><author>meanong</author><pubDate>Fri, 18 Aug 2017 10:21:46 +0800</pubDate><description><![CDATA[最近由于项目需要做一个简易的交互式的界面，所以就学习了一下python的网站开发平台，其中Django由于其更加完备的功能受到了广泛评价，所以就学习了下这个框架。该博客只涉及Django中的普通功能，如果想要写一个小型的网站，那么欢迎参考。通过这个教程，我完成了一个文件管理系统，管理自己的文件，感觉还是很方便的。]]></description><category></category></item><item><title><![CDATA[Python项目文件管理]]></title><link>https://blog.youkuaiyun.com/meanong/article/details/53979923</link><guid>https://blog.youkuaiyun.com/meanong/article/details/53979923</guid><author>meanong</author><pubDate>Mon, 02 Jan 2017 16:15:04 +0800</pubDate><description><![CDATA[目标文件和编写文件在同一个路径
目标导入文件父路径和编写文件在同一个路径
目标文件和编写文件的父目录是同一路径在编程的过程中，编程的风格也及其重要。除了在编程过程中要注意空行，加空格，以及合理的写注释之外，还需要在项目管理上将文件组织的合理易懂，本文主要是关于如何组织自己的Python项目，导入各种情况下的代码块的方案。1.目标文件和编写文件在同一个路径
  src>
  
  
    1.py]]></description><category></category></item><item><title><![CDATA[scapy学习笔记（二）]]></title><link>https://blog.youkuaiyun.com/meanong/article/details/53942671</link><guid>https://blog.youkuaiyun.com/meanong/article/details/53942671</guid><author>meanong</author><pubDate>Fri, 30 Dec 2016 14:30:15 +0800</pubDate><description><![CDATA[

基本函数介绍
rdpcap()
show()方法/display()
sessions()方法
数据包对应内容提取
移动到下一层
提取对应层的名称
提取每一层对应的内容
获取负载的内容




欢迎访问我的github查看scapy进行数据包特征提取的样例代码。





在上一篇文章中讨论了在windows下安装配置scapy环境，这章我们讲解析如何使用scapy进行数据包分析。



基本...]]></description><category></category></item><item><title><![CDATA[python 网络数据包处理和嗅探工具Scapy 学习笔记（一）]]></title><link>https://blog.youkuaiyun.com/meanong/article/details/53942116</link><guid>https://blog.youkuaiyun.com/meanong/article/details/53942116</guid><author>meanong</author><pubDate>Fri, 30 Dec 2016 13:54:42 +0800</pubDate><description><![CDATA[Scapy 学习笔记（一）

本文主要是关于scapy的安装和scapy存在的内存泄露导致内存爆掉的解决方案，关于如何操纵数据包请看另一篇博客：


  https://blog.youkuaiyun.com/meanong/article/details/53942671




Scapy 学习笔记（一）
scapy在windows中安装教程


关于rdpcap方法中的内存泄露问题
解决方法





...]]></description><category></category></item></channel></rss>