自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 资源 (13)
  • 收藏
  • 关注

原创 一种pairwise的算法实现

import randomfrom itertools import permutations, combinationsdef get_all_combinations_count(args): # 获取所有参数组合测试例的条目 return args[0] if len(args) == 1 else args[0] * get_all_combinations_count(args[1:])def get_all_combinations(args): .

2021-10-10 20:13:46 383

原创 pcap文件格式解析

import structimport timedef rdpcap(pcap_file): with open(pcap_file, "rb") as f: # 读取抓包文件 content = f.read() pcap_header = content[:24] # 切片获取pcap头部 print(pcap_header) content = content[24:] while conte.

2021-04-23 17:21:33 312 2

原创 漆包线去漆的方法

自己琢磨出来的方法:1、使用打火机,烧漆使其软化,然后用湿毛巾将漆剥掉;2、使用镊子,夹住漆包线,直接将漆剥掉,如果漆包线比较短,使不上力,可以使用方法1

2020-11-02 15:47:59 6258

原创 wifi攻击(deauth)使用笔记

使用流程:1、对硬件(nodemcu)进行加电,注意使用通用的手机充电器即可,usb接口为microusb,电压电流为5V1A;2、打开手机wifi,搜索无线热点,连接lucky-cat热点;3、打开浏览器,在地址栏输入http://192.168.4.1;4、在页面中点击ACCEPT,进入配置页面,在该页面中,用户可以设置新的wifi热点和密码,点击确认后生效;5、重新连接wifi,接入密码及为步骤4中配置的密码,此时web页面会自动扫描当前环境下的所有无线热点;6、勾选需要攻击的

2020-09-10 15:06:33 5420 3

原创 python根据字典的值对键进行排序的一种实现

最近有一个需要对文本内容进行排序的需求,而文本内容均通过yaml读取,也就是说,需要通过yaml中的键的值对文本进行排序和格式化输出,这里需要一方面要考虑排序,还需要考虑值相同的情况,所以这里简单写了个分类,用来实现根据值来对键进行排序。具体实现如下:# 根据字典中的v值, 对k进行排序# 原理:# 1, 使用两个列表a和b, 分别保存k值和v值# 2, 使用另外一个列表c, 对v值进行排序# 3, 从列表c中遍历元素, 获取到元素v后, 先判断v在列表b中的下标, 然后根据下标取列表a的值,

2020-09-03 16:30:02 560

原创 url解码

python中有一个urllib库,有一个函数是用来对url进行百分号编码和解码的,最近发现不同的版本函数还不一样,而且在一些平台上不支持,所以自己研究了下,发现url编码和解码原来这么简单,这里记录一下,希望对大家有帮助。以下是在micropython中的实现:data = “%E4%B8%AD%E6%96%87” # 中文的%编码import binasciibinascii.unhexlify(“E4B8AdE69687”)b’\xe4\xb8\xad\xe6\x96\x87’

2020-08-24 15:01:22 770

原创 appium环境搭建

网络图:PC1—(network)—PC2—(USB)—MobilePC1和PC2可以是同一台, PC1上运行python脚本, 用来对Mobile进行自动化控制, PC2上安装jdk、appium服务器和andriod sdk.搭建步骤:1, 安装jdk, 添加环境变量JAVA_HOME=C:\Program Files\Java\jdk1.8.0_2112, 安装Appium-windows-1.15.1.exe3, 解压andriod sdk, 添加环境变量ANDRIOD_HOME=F

2020-08-24 14:53:38 115

原创 Arduino IDE搭建ESP8266编译环境

版本: Arduino 1.8.131, 搭建NodeMCU编译环境a) 软件下载安装(略)b) 点击文件/首选项, 在弹出的对话框中"附加开发板管理器网址"后填写如下网址, 然后点击确认:http://arduino.esp8266.com/stable/package_esp8266com_index.jsonc) 点击工具/开发板/开发板管理器, 在弹出的对话框输入框中输入esp8266, 点击回车, 然后在窗口选择版本, 点击下载即可.d) 下载相关例程, 将例程保存到C:\Users\

2020-08-24 14:42:04 708 2

原创 airkiss技术

最近研究airkiss微信配网,越研究觉得问题越多,为了避免大家走弯路,还是记录下过程中的心酸历程,以及一些知识点,希望能够帮到大家。说在前面:1,airkiss是微信开发的配网方案,个人觉得配网对于物联网来说太重要了,目前微信提供的sdk比较老,而且已经有很长时间没有更新了。网上也有说微信已经停止维护airkiss了。2,airkiss由微信开发,代码未开源,不过据了解微信提供了安卓客户端的源码,或许可以找到一些蛛丝马迹。网上的资料也是少得可怜,有点技术含量更是寥寥无几,所以大多问题还是要靠自己查资

2020-07-08 21:30:28 982 8

原创 欧拉角和四元数的相互转换

在网上,一直没有找到比较合适的欧拉角和四元数相互转换的比较好的资料,而且大多数的坐标系也没有说明,经过了一段时间的研究,也算是有些收获,分享给大家。目标:1、欧拉角转换为四元数,然后从四元数转换为欧拉角,转换前后的结果一致。2、稍微描述下坐标系(虽然我没有搞得特别清楚)。import math# 注意:# 1, 在进行转换时, 必须注意转换时坐标系是否统一# 2, 在进...

2020-05-05 08:44:42 1973

原创 python的有符号数和无符号数之间的转换

# 有符号数转换为无符号数def i2ui(data, length=1): max_num = 256 ** length return max_num + data + 1 if data < 0 else data# 无符号数转换为有符号数def ui2i(data, length=1): max_num = 256 ** length ...

2020-05-03 16:04:59 8959

原创 计算1-10^12之间所有数的约数的和的python实现

#-*-encoding:utf-8-*-import time# 计算1-10**12区间所有数的约数的和# 计算数据区间中所有数的和def sum_ab(a, b): if (b - a) % 2 != 0: return (b + a) * ((b - a + 1) // 2) else: return sum_ab(a, b - 1...

2018-03-27 14:31:24 1362

原创 python的八皇后实现方法

#-*-encoding:utf-8-*-from itertools import permutationsfrom itertools import combinations# 八皇后问题的python实现MAX_COUNT = 8square = None# 组合def cnn(data, deepth): return [c for c in combinatio...

2018-03-26 22:54:34 710

原创 通过Python代码实现走迷宫的方法

#用来判断坐标是否合法def check_valid(mg, x, y): if x >= 0 and x = 0 and y < len(mg[0]) \ and mg[x][y] == 1: return True else: return False#迷宫结果优化def process(step): #

2018-02-04 15:11:10 10105

原创 ESP8266读写flash的实现

创建结构体struct startup_config{ char baudrate[4]; char ap_ssid[32]; char ip[16]; char sta_ssid[32]; char sta_pwd[64]; }; 注意: 这里的结构体中每个字段必须是4字节的整数倍写入flashvoid write_config(void) {

2017-09-16 12:35:02 7874 3

原创 SNMP中变长Length字段的封装和解封装

def parseLen(pkt): ret = 0 offset = 0 while True: num = struct.unpack("B", pkt[offset:offset + 1])[0] ret = ret * 128 + num % 128 offset += 1 if num 128:

2017-08-19 15:11:11 247

docker-compose-1.27.4.zip

软件:docker-compose-Linux-x86_64 版本:1.27.4 说明:由于github下载速度非常不稳定,所以这里放一个备份,方便大家取用。

2020-12-01

esp8266-2.0.0.zip

esp8266-2.0.0.zip,主要用于Arduino使用。github上下载速度比较慢,放到csdn上备用。

2020-09-06

DHCP客户端测试软件(dhcp for xcap)

说明: 1, 暂未实现重传机制, 所以若抓包无响应, 请尝试停止后重发. 2, dhcp状态显示采用1s定时器刷新, 所以状态显示可能存在延时的情况; 3, xcap通过pcap导入报文会有部分字段自动变化, 且导入的报文DHCP数据部分无法正常解析, 建议通过新建的方式解决; 4, 添加报文格式举例: 1,2 说明: 1表示报文组1, 选中报文组后, 在状态栏会显示报文组的索引, 2表示第三个报文, 即索引为3的报文. 版本记录: V1.0.1(基础版本) 1, 支持连接xcap并读取报文功能; 2, 支持刷新按钮自动更新报文功能; 3, 支持选择网卡功能; 4, 支持通过pcap文件打开报文功能(已废弃); 5, 支持指定服务器交互; 6, 支持dhcp交互状态显示; 7, 支持输入框通过正则表达式限制输入字符; 8, 支持选择特定报文操作; V1.0.2 1, 将状态修改为自动显示, 即动态识别报文类型并显示结果; 2, 解决解析option字段, 若字段中存在多个value时存在丢失的问题; 3, 增加鼠标点击状态显示气泡信息; 4, 增加隔行显示不同颜色; V1.0.3 1, 修改dhcp的状态机, 之前的版本是收到报文则发送request, 之后收到报文则认为收到ack. 现修改为只有收到offer报文才发送request报文 , 收到ack报文才结束. 2, 增加dhcpv6功能; 3, 优化代码; V1.0.4 1, 修改request报文由于校验和和报文长度未初始化导致构造错误的问题 V1.0.5 1, 增加服务器地址的气泡提示; 2, 增加自动填充的气泡提示; 3, 添加的报文默认为选中状态; 4, 选择网卡下拉框中将虚拟网卡排放靠后; 5, 关闭程序时自动保存设置; V1.0.6 1, 优化代码, 将字段设置使用统一的函数处理; 2, 状态气泡显示格式化; 3, 双击表格表头实现全选和反选; 4, 增加renew(50%), rebind(87.5%)和release的自动发送功能; 5, 增加手动释放按钮和实现; 6, 增加部分打印信息用于调试; 暂未实现报文重传机制, 计划下一个版本实现 V1.0.7 1, 实现discover/solicit报文自动重传机制 2, renew, rebind以及release修改为手动发送 3, 解决报文发送错乱问题 4, 增加decline报文的发送 5, 解决设备无故发送discover报文问题 问题解决: 1, 停止后再次发送数据会出现数据错乱 分析: 停止客户端的时候, 删除过滤器是通过callback函数删除的, 这里应该是通过filter来进行删除. self.widget.sniff.del_filter(self.callback)修改为 self.widget.sniff.del_filter(self.filter) 2, 设备无故发送discover问题 分析: 由于发送discover报文使用的定时器, 定时器是通过判断当前的direction来确定是否重传的, 而当定时器老化时, 可能正好收到报文导 致direction被修改, 所以导致错误的发送discover报文的问题. 将接收逻辑修改为重传时判断当前状态是否为discover报文, 若是则重传, 否则不重传. V1.0.8 1, 增加inform实现 V1.0.9 1, 增加报文五元组的源mac地址和xid的气泡显示; 2, 增加步长和报文限制功能; 问题解决: 1, 修改ipv6报文添加失败的问题. 由于ipv4报文为xid, ipv6报文为trid, 需要区分处理. V1.0.10 1, 在发送dhcpv6报文之前, 先发送na报文触发服务器学习nd消息. V1.0.11 1, 增加发送solicit/request前, 自动响应ns报文. 自动响应ns报文的目标地址为solicit/request报文源mac地址生成的ipv6地址 2, 实现dhcpv6的renew续约功能. 3, 解决ipv6地址转换格式化不正确, 导致无法响应ns报文问题. 4, 增加日志输出到dhcp.log文件. V1.0.12 1, 增加dhcpv6的续约功能, 通过renew和rebind实现续约, 增加release、decline报文的实现; V1.0.13 1, 解决服务器无法设置ipv6地址的问题. 之前的输入框只允许输入数字和., 修改为运行输入数字.:和a-f 2, 解决多个客户端时, 若选中其中的部分客户端发送时报错. 由于客户端采用的是列表中包含元组的形式, 即[(row, [client1, client2])], 这样实际客户端无法直接通过row索引到clients, 导致列表读 取时溢出. 譬如有1、2、3三行数据, 这里只选中了第三行, 限制为1, 那么如果点击发送, 则clients = [(row, [client1]], 此时clients[2] 就会溢出. 所以这里讲clients修改为字典, 即通过row来索引客户端client = {3: [client1]} 3, 将数据发送放到线程中, 规避模拟大量客户端时界面假死的问题. 4, 当客户端限制小于等于50, 则气泡显示trid和ip地址信息. 当大于50, 则气泡显示获取ip地址的数量. V1.0.14 1, 解决监听报文使用的网卡不正确问题. V1.0.15 1, 解决dhcpv6的响应报文的IANA中包含Status code选项导致程序无法解析的问题. 兼容性处理, 即option为IAAddress时按照IAAddress解析, 当option为status code时按照Status code解析 V1.0.16 1, 解决DHCPv6的client_id的duid处理, 支持任意格式的duid.

2019-02-21

DHCP客户端测试软件

使用说明: Usage: dhcpclient [-n num] [-d target_mac] [-r] [-k keep_time] [-p param_list] [-o source_mac_offset] [-R repet_times] -n: dhcp client number(default: 20) -d: target mac(default: ffff.ffff.ffff) -r: release flag(default: no) -k: ip keep time(default: 0s) -p: discover param list(default: [1,6,15,3,43,150]) -o: source mac offset(default: 0001.aa00.0001+0) -R: repet times(default: 1) example: dhcpclient -n 30 -r -k 5 -R 2 -p [1,2,3,4] action: client------server discover---&gt; <---offer request---&gt; <---reply release---&gt;(if -r has been set)

2018-10-24

串口代理程序

一款串口代理工具,在windows下运行。 通常情况下,我们访问以太PC的串口,必须远程桌面到该PC,然后通过SecureCRT等工具访问串口。使用该代理工具后,用户可以直接通过telnet的方式远程访问PC的串口,使用方式如下: 1,远程桌面到待访问串口的PC 2、打开PC的dos窗口,进入到scagent.exe文件所在的目录 3、输入scagent -h 1.1.1.1命令,1.1.1.1即PC的通信IP地址 F:\>scagent Usage: scagent -h ip [-p port] [-s baudrate] [-c COM] -h: local ip address -p: local listen port (default: 1023) -s: baudrate (default: 9600) -c: COM port (default: COM1) 4、在任意终端上通过telnet 1.1.1.1 1023远程访问PC的串口信息

2018-09-10

简易dns服务器

config.yaml为配置文件,文件说明: server: 监听的ip地址,port: 监听的端口 www.hao123.com: 130.255.8.130/256: 域名: 域名对应的ip地址/ttl server: 3.1.1.33 port: 53 dns: - ipv4: www.baidu.com: 130.255.8.33/123 www.hao123.com: 130.255.8.130/256 www.jetmie.com: 130.255.8.254/12345 ipv6: www.baidu.com: 3::33 www.hao123.com: 3::130

2018-05-04

串口代理程序源码

通过多线程实现串口服务器的功能!实际上就是实现了TCP/IP到串口的代理服务。使用python实现了双向全双工通信,原理很简单!可以自行修改串口速率和监听端口!

2017-02-20

syslog服务器v1R20170108

在原有工具的基础上增加日志读写功能,解决了程序卡死问题,解决了频繁接收日志导致界面不响应的问题!

2017-01-08

MD5校验工具

支持功能:MD5、SHA1、HMAC、HMAC-SHA1、HMAC-MD5校验码生成,以及DES加密和解密!

2017-01-08

python基于winpcap的抓包和发包

该脚本使用python通过winpcap和网卡驱动交互,从而实现抓包和跨协议栈的发包功能; 在入口函数中增加了脚本使用说明和举例! s = SNIFFER(interface)#设置待监听的网卡 s.start()#设置启动线程开始监听网卡 time.sleep(10)#主线程休眠10秒钟 s.stop()#停止监听网卡 联系我:[email protected]

2016-12-20

SYSLOG日志服务器

该工具在windows下运行;目前支持修改服务器端口,基于ip地址或者内容过滤结果,过滤支持正则表达式,支持按时间排序。 若有问题或需求,请联系我们,谢谢! 特别说明:该工具依赖winpcap

2016-12-20

SNMP网络管理工具

该工具在windows下运行;目前支持snmpv1和snmpv2,暂不支持snmpv3;可以通过get-reqest、get-next-request和get-bulk-request三种元语读取设备的oid值,并支持ipv4和ipv6地址;

2016-12-18

tomahawk12-1.1.13-src.tar.gz

tomahawk比tcpreplay好用一点,我也是打酱油的,还没真正用过,大家一起来研究吧!

2015-04-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除