- 博客(19)
- 收藏
- 关注
原创 C语言++问题
程序:#include int main(void){int a=10;int b=20;a=(a++)*b;printf("a=%d",a);//结果为201}原理:a=(a++)*b可以拆解为一下几步:1、因为有括号,故先算a++;2、因为++的运算的规则为,先计算表达式的值,再对变量进行加加,故,第二部为a*b=10*20=
2024-03-22 10:12:54
621
1
原创 Android_NDK调试
第一步:链接log动态库在Android.mk文件中添加LOCAL_LDLIBS +=-llog注意:一定要在include $(BUILD_SHARED_LIBRARY)之上添加,因为当执行到这句话的时候就表示所有的lib动态库已经加载完毕了,所以当你在这句代码之后再添加链接动态库的命令时,动态库是加载不成功的,当执行ndk-build时,会报链接不到动态库的错误第二
2024-03-22 10:11:59
905
1
原创 snort规则byte_math规则选项详解
byte_math规则选项的主要功能是从待检测的内存中获取指定的数据,并对数据按照要求进行加工处理,得到结果数值,供后续规则选项使用。
2024-03-20 15:27:14
210
原创 snort规则byte_jump规则选项详解
byte_jump规则选项的主要功能是从待检测的数据中获取指定的数值,并对数值按照要求进行加工处理,得到最终结果数值,最后跳过最终结果数值的距离,再进行后面的数据检测。
2024-03-20 10:01:03
693
2
原创 snort规则pcre规则选项
设置正则检测引擎检测的数据长度和递归检测的次数检测限制信息(DETECT_PCRE_MATCH_LIMIT)(可通过配置文件配置大小)正则表达式为针对http_client_body的检测。正则表达式为针对http_raw_header的检测。正则表达式为针对http_stat_code的检测。正则表达式为针对http_stat_msg的检测。正则表达式为针对http_raw_uri的检测。正则表达式为针对http_header的检测。正则表达式为针对http_method的检测。
2024-02-29 13:55:34
496
原创 snort规则byte_test规则选项详解
byte_test是snort规则中对payload进行检测时,很重要的逻辑运算规则选项。该规则选项主要功能是获取指定位置的数据进行数据运算并检测。
2024-02-26 14:05:12
426
原创 snort规则offset-depth规则选项详解
snort规则选项offset和depth是用来表示数据检测区间相对于待检测数据起始位置的规则选项。因为规则选项offset和depth使用场景简单,且经常一起使用,故放在一起来讲解。
2024-02-23 14:39:15
532
原创 ip地址解码原理
suricata规则中ip地址不仅支持单个的ip地址而且支持ip地址范围的检测。如下是设置ip地址的示例:从示例中可以看出,地址可以通过中括号来包含多个分组与层级,可以通过!表示是否为非,可以通过逗号来表示分组中含有那几个IP地址类型,可以通过/来表示IP地址范围,可以通过$符号,来标识使用配置文件中对应配置的地址。由此可见,要想实现IP地址串的解码,需要针对这几类标识进行相对应的逻辑处理。
2024-02-19 17:03:56
919
原创 snort规则distance规则选项详解
distance规则选项是snort规则在检测payload过程中为了更加精准的检测相关位置的数据,而增加的语法规则选项。
2024-02-19 15:56:59
887
原创 snort规则byte_extract选项详解
byte_extract是snort规则语法中一个针对payload的算数逻辑运算规则选项,它的主要功能是从payload的指定位置获取指定长度的数据,并转换为数值,存储到指定的变量中,供规则中其它规则选项使用。
2024-02-18 14:34:37
759
1
原创 重载-重写-重定义
何为重载、何为重写,又何为重定义呢?下面我将从C++实现的角度进行详细剖析,以及C++语言底层是如何实现重载、重写和重定义的。 一、重载 重载---同一个类中函数名相同,函数的参数列表不相同的两个及两个以上的函数就是函数重载。注意:函数的返回值不能作为函数是否重载的依据。如:类example中,函数a就是重载。 class example {...
2018-09-27 10:32:42
1050
原创 linux加载动态库问题
当我们在linux系统引用动态库时,经常会遇到一个问题,加入我们需要的动态库没有在系统的默认目录下,我们编译时使用-L指定了动态库的路径,编译时没有问题,但是执行调用该动态库的可执行文件时,却提示找不到动态库。下面我将以一个简单的例子来,复现这个问题和解决这个问题的办法。 假设我们使用tensorflow,把需要调用的libtensorflow.so和libtens...
2018-09-10 16:12:03
2923
原创 TensorFlow中屏蔽warning的方法
TensorFlow的日志级别分为以下三种: TF_CPP_MIN_LOG_LEVEL = 1 //默认设置,为显示所有信息 TF_CPP_MIN_LOG_LEVEL = 2 //只显示error和warining信息 TF_CPP_MIN_LOG_LEVEL = 3 //只显示error信息所...
2018-05-07 14:49:07
30889
11
原创 Linux使用gdb调试时遇到Missing separate debuginfos, use: debuginfo-install libgcc-4.4.7-3.el6.x86_64
解决步骤:1、 将文件/etc/yum.repos.d/CentOS-Debuginfo.repo中的enabled参数值修改为12、 yum install nss-softokn-debuginfo –nogpgcheck3、debuginfo-install glibc-2.12-1.192.el6.x86_64zlib-1.2.3-29.el6.x86_64可能会遇到一下问
2017-02-28 17:30:39
9800
原创 MD5算法详解
简介Md5是计算机广泛使用的,用于确保信息传输完整一致的杂凑算法。它的基础原理是:将数据(如汉字)运算为另一固定长度值。MD5的前身有MD2、MD3和MD4特点1、压缩性:任意长度的数据,算出的MD5值长度都是固定的。2、容易计算:从原数据计算出MD5值很容易。3、抗修改性:对原数据进行任何改动,哪怕只修改1个字节,所得到的MD5值都有很大区别。4、强抗碰撞
2017-01-22 15:22:55
2115
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人