首页 > TAG信息列表 > X00

hiredis二进制数据存储的方法

hiredis存储二进制文件,比如char数组的方法,例如:   char value[20]={0}   value[0]='a'   value[15]='b'   这种情况直接调用redisCommand(c, "set key %s",value),是不可行的,因为遇到结束符'\0'会停止,但redis是二进制安全的,hiredis也提供了二进制安全的方法,即redisC

木马免杀

最近学了点木马免杀,其实总结起来一共有三个层面,代码面,文件面,逻辑面。 代码层面可以通过shellcode编码混淆,编辑执行器,分离加载器等方法进行免杀 文件面可以通过特征码定位,加壳花指令等方式 逻辑面可以通过一些反vt虚拟机的方法进行免杀 下面先介绍一些语言的shellcode加载方式和一

序列与反序列

特殊的对象想要存储时,就需要使用序列 1 import pickle 2 3 info = { 4 '':'', 5 'age':32, 6 'func':'xxx' 7 } 8 9 m=100 10 11 print(pickle.dumps(info)) 12 print(pickle.dumps(m)) 13 14 pickle.dump([info

2022网鼎杯网鼎杯web669wp

大致思路: 1.任意文件读取 2.session伪造 3.untar目录穿越,任意文件写 4.yaml反序列化 5.sudi dd提权 任意文件读取 题目代码 import os import re import yaml import time import socket import subprocess from hashlib import md5 from flask import Flask, render_template, m

python---struct

python---struct keywords: struct bytes python 数据互转 https://docs.python.org/3/library/struct.html 二进制数据和各种类型数据的转换 因为不同平台默认大小端不同,所以如果是多个字节最好指定一下大小端 < 小端 > 大端 常用的长度符号表示,小写表示有符号,大写表示无符

Python修改windows键盘映射

新电脑环境的处理之一是修改键盘映射,主Ctrl键使用CapsLock CapsLock改为LeftCtrl RightCtrl改为CapsLock LeftCtrl改为RightCtrl 原来使用KeybMap这个软件修改,由于自己修改的映射很少,改为通过python操作注册表实现 import winreg mapVal = b'\x00\x00\x00\x00\x00\x00\x00\x00\x

QT QString 转 QByteArray 16进制

Qt 中  16进制格式 保存成Qstring,然后转换成 QByteAarray   1 QString str("01 00 01 00 05 00 d0 07 00 00 d0 07 b8 0b 00 00" 2 " b8 0b 00 00 00 00 d0 07 00 00"); 3 QByteArray ba; 5 ba = QByteArray::fromHex(str.toLatin1()); 输出结果 ba: &

mysql蜜罐

package main import ( "encoding/hex" "fmt" "net" "regexp" "strconv" "strings" ) func main(){ listener,err:=net.Listen("tcp",":3306") fmt.Println(listener.Addr()) if

七月是十八号日寄

复现了几道古早题 [鹏城杯]Misc_water 两个文件,一个加密的压缩包和一张png                                自然解压密码应该从png入手 010打开发现后面跟了一png,foremost分离 题目叫misc_water,那肯定和水印有关,可这两张熊猫头的分辨率不一样 陷入盲区,遂上网WP

python入门精讲笔记-06-file

06. 文件 file @(Python入门精讲课程) [TOC] 一、文件的基本语法 open('文件名',mode) mode 意义 备注 'r' 只读的方式打开 'w' 写入的方式打开 如果无文件,创建文件。如果有清除文件内容 'a' 追加的方式打开 将内容添加到文件的末尾 'b' 二进制的方式打开 '+'

trex抓包过程详解

trex在service模式下提供了几种抓包分析的方式,其抓包原理如下图所示: 通过console的方式来抓包 方式一: trex>service Enabling service mode on port(s): [0, 1] [SUCCESS] 6.72 [ms] trex(service)>capture monitor start --rx 1 -v Starting stdout

网络对抗实验三 免杀原理与实践

基础知识问答 (1)杀软是如何检测出恶意代码的? ​ 1.基于特征码检测 ​ a.很多软件都会有各种特征码记成的特征库 ​ b.恶意软件的一个或几个片断就可作为识别依据。 ​ 2.也有启发式恶意软件的检测 ​ a.宁杀错不放过 ​ 3.基于行为的检测 (2)免杀是做什么? ​ 1.

2.32 Safe-Linking 机制

看 glibc 2.32 源码: /* Safe-Linking: Use randomness from ASLR (mmap_base) to protect single-linked lists of Fast-Bins and TCache. That is, mask the "next" pointers of the lists' chunks, and also perform allocation alignment checks o

初探Pickle反序列化

Pickle原理剖析 为什么需要Pickle 如果我们需要存储的东西是一个dict、一个list,甚至一个对象,依然选用存储字符串的方法就很繁琐。所以需要序列化 序列化:对象-->字符串 反序列:字符串-->对象 各大语言都有自己的反序列库,而Python的库就是Pickle 比如下图,显示了对象的两种显示模式。

[SUCTF 2019]EasyWeb---无参数RCE

SUCTF 2019]EasyWeb 考点: 无数字字母shell利用.htaccess上传文件绕过open_basedir 源码审计 <?php function get_the_flag(){ // web admin will remove your upload file every 20 min!!!! $userdir = "upload/tmp_".md5($_SERVER['REMOTE_ADDR']); //命名格式(u

python--常用的十进制、16进制、字符串、字节串之间的转换

进行协议解析时,总是会遇到各种各样的数据转换的问题,从二进制到十进制,从字节串到整数等等 整数之间的进制转换: 10进制转16进制: hex(16)  ==>  0x10 16进制转10进制: int('0x10', 16)  ==>  16 类似的还有oct(), bin()     字符串转整数: 10进制字符串: int('10')  

[BUUCTF-pwn] wdb_2018_final_pwn3

一个栈溢出的题,没开PIE 程序先打开随机数发生器,读入然后加密,与输入的对比,不同时可输入0x400数据(溢出)相同则跳出循环。 fd = open("/dev/urandom", 0); while ( 1 ) { puts("\nFind a MD5 hash collision!"); printf("target: "); read(fd, buf, 0x3FFuLL);

pythonchallenge Level 8

第8关地址:http://www.pythonchallenge.com/pc/def/integrity.html 提示信息:Where is the missing link? 查看源码:  发现 http://www.pythonchallenge.com/pc/return/good.html,打开需要账号密码 下方有发现UN和PW,应该是被加密过的账号密码。 un和pw使用bz2解码 import bz2 u

解决Spring Boot 使用RedisTemplate 存储键值出现乱码 \xac\xed\x00\x05t\x00

最近使用spring-data-redis RedisTemplate 操作redis时发现存储在redis中的key不是设置的string值,前面还多出了许多类似\xac\xed\x00\x05t\x00这种字符串,如下 127.0.0.1:6379> keys * 1) "\xac\xed\x00\x05t\x00\x04pass" 2) "\xac\xed\x00\x05t\x00\x04name" 3) "n

【QT】编程问题汇总

问题1:关于以16进制打印字符型出现FFFF**的问题 1.1 问题复现: 在处理Modbus协议时,以接收一串数据帧为 x01\x03\b\x00\x00\x00\x00\x00\x00\x00\x00\x95\xD7 为例; 这个数据帧一共13个字节,后两个字节是95 D7是CRC校验以低字节在前,高字节在后排列。 利用CRC校验工具校验前11个字节的

[BUUCTF] ciscn_final_10

目录ciscn_final_10总结checksec漏洞点EXP引用与参考 ciscn_final_10 总结 一道简单的tcache dup的题,前面需要绕过校验,注意一下函数的参数为int16。最后把shellcode处理一下即可。 checksec 版本为libc-2.27,无tcache dup检测。 漏洞点 判断是否为0的函数的参数为int16。 uaf: EX

人工智能机器学习有关-Numpay(三)

人工智能机器学习有关-Numpay(三) 1、Numpy介绍 定义: Numpy是一个开源的Python科学计算库,用于快速处理任意维度的数组。 Numpy中,存储对象是ndarray。 创建Numpy: import numpy as np np.array([]) numpy优势 内存块风格--一体式存储 支持并行化运算 效率高于纯python代码

python3连接hbase 操作

# pip3 install thrift # pip3 install happybase # 先在Linux上启动HBASE server # 再运行python脚本连接服务器 import happybase S_TABLE_NAME_DEMO = 'lrx_test1' # 创建连接,通过参数size来设置连接池中连接的个数 connection = happybase.Connection(host='172.2.15.1', po

2021-09-24截图 照片二分类及判断截图原始性的一种方法

import os   '''      Explainations:         root: path of the image folder         image_list: path of each image         images: name of each image         dirs: =images         target_info_seg:

输入框限制输入20个中文字(40个字符)。eslint 报错\x00 no-control-regex解决

需求是要限制用户输入的名称,最多二十个中文字,也就是40个字符。但我们平时使用str.length来限制都是获取到字符串的长度而已,并不能获取到具体的字符。这里使用正则来解决。 一个汉字=2字节=2字符 一个字母、数字=1字节=1字符 匹配单个字节 /[\x00-\xff]/ 取反,即是匹配多字符