suricata使用
suricata命令行12345678910111213141516171819202122232425262728293031323334353637383940414243444546Suricata 5.0.9USAGE: suricata [OPTIONS] [BPF FILTER] -c <path> : path to configuration file -T : test configuration file (use with -c) -i <dev or ip> : run in pcap live mode -F <bpf filter file> : bpf filter file -r <path> : run in pcap file/offline mode - ...
用ELK可视化suricata监控下的流量
安装elasticsearch注意添加非root用户123456789我们可能涉及到创建一个非root用户sudo useradd essudo passwd es然后输入这个用户的密码然后对/usr/local/elasticsearch进行修改用户chown -R es:es elasticsearch前面的es表示将elasticsearch权限给es用户,后面的es表示将用户es移动到group es为什么是这个文件,因为我们把tar.gz解压到了/usr/local,过程如下tar -zxvf ..... -C /usr/local即可
下面是安装elasticsearch成功运行后的信息
123456789101112131415161718192021✅ Elasticsearch security features have been automatically configured!✅ Authentication is enabled and cluster connections are encrypted.ℹ️ Password for the elastic ...
flask web开发
首先我们安装好flask,这里有待补充。
初始开发123456789101112131415161718192021222324252627from flask import Flaskfrom flask import url_forfrom markupsafe import escape#用户输入会变成恶意代码,Markupsafe可以进行转义处理,对name变量名app = Flask(__name__)@app.route('/home')@app.route('/')def hello(): # return 'Welcome to My watchlist' return '<h1>Hello Totoro!<h1><img src="http://helloflask.com/totoro.gif">'@app.route('/user/<name>')def user_page(name): ...
unicode编码和utf-8编码的区别与转换
互联网的普及,强烈要求出现一种统一的编码方式。UTF-8 就是在互联网上使用最广的一种 Unicode 的实现方式。其他实现方式还包括 UTF-16(字符用两个字节或四个字节表示)和 UTF-32(字符用四个字节表示),不过在互联网上基本不用。重复一遍,这里的关系是,UTF-8 是 Unicode 的实现方式之一。
UTF-8 最大的一个特点,就是它是一种变长的编码方式。它可以使用1~4个字节表示一个符号,根据不同的符号而变化字节长度。
UTF-8 的编码规则很简单,只有二条:
1)对于单字节的符号,字节的第一位设为0,后面7位为这个符号的 Unicode 码。因此对于英语字母,UTF-8 编码和 ASCII 码是相同的。
2)对于n字节的符号(n > 1),第一个字节的前n位都设为1,第n + 1位设为0,后面字节的前两位一律设为10。剩下的没有提及的二进制位,全部为这个符号的 Unicode 码。
下表总结了编码规则,字母x表示可用编码的位。
1234567Unicode符号范围 | UTF-8编码方式(十六进制) | ...
redis漏洞利用
我们进入redis之后,执行info命令得到数据库信息
123456最重要的信息如下# Keyspacedb0:keys=4,expires=0,avg_ttl=0#密钥空间部分提供了关于每个数据库的主字典的统计信息在我们的例子中,在密钥空间部分下,我们可以看到只有一个索引为0的数据库存在。
让我们通过使用select命令和需要选择的数据库的索引号来选择这个Redis逻辑数据库:
12310.129.93.235:6379> select 0OK
我们还可以使用以下命令列出数据库中存在的所有键:
123456710.129.93.235:6379> keys *1) "flag"2) "stor"3) "numb"4) "temp"(7.22s)
最后,我们可以使用注释记号后面的get命令查看为对应键存储的值
123410.129.93.235:6379> get flag"03e1d2b376c37ab3f5319922053953eb"(1.86s)
linux学习-用户,组
1groups#查看当前用户所在的用户组。
1groups root#查看root用户所在的用户组。
我们可以查看用户组配置文件
1cat /etc/group
比如只找出对组root的配置
1cat /etc/group | grep root
还可以通过id命令
1id root
用户称为UID,组称为GID
UID 是对一个用户的单一身份标识。组 ID(GID)则对应多个UID。
我们看这个图,
1id ubuntu代表看我ubuntu用户的ID以及所在组。前面UID表示我的用户ID,后面GID表示ubuntu用户所在组的gid
/etc/passwd目录详解从文件中我们可以看到,/etc/passwd中一行记录对应着一个用户,每行记录又被冒号(:)分隔为7个字段,其格式和具体含义如下:
1用户名:密码:UID: GID: 注释性描述:主目录:登陆shell
0是超级用户root的标识号,1-99由系统保留,作为管理账号,普通用户的标识号从100开始。在Linux系统中,这个界限是500。
对于主目录:用户在登录到系统之后所处的目录。各用户对自己的主目录有读、写、执行( ...
php反序列化学习
123456789101112__construct()//创建新对象时调用__wakeup()//在使用unserialize()时,会检查是否存在一个__wakeup()魔术方法,如果存在,则该方法会最先被调用,预先准备对象需要的资源。 __toString()//此方法用于定义一个类被当成字符串时该如何处理__destruct()//此函数会在 到某个对象的所有引用都被删除 或者 当对象被显示销毁时 执行。__invoke()//当尝试以调用函数的方式调用一个对象时,__invoke()方法会被自动调用。__set()//给不可访问属性赋值时,__set()会被调用。__get()//读取不可访问属性值时,__get()会被调用。__unset()//对不可访问属性unset时,此方法会被调用。__call()//在对象上下文中调用一个不可访问方法时,__call()会被调用。__callStatic()//是在静态上下文中调用不可访问的方法时触发。__clone()//进行对象clone时被调用,用来调整对象的克隆行为。
内置类:SoapClient::__cal ...
计算机存储字节方式以及存储计算
由一道CTF题目引入今天的主题。
[ACTF新生赛2020]crypto-des本题给了一个压缩包,需要我们解密码才能打开。
1234567872143238992041641000000.000000,77135357178006504000000000000000.000000,1125868345616435400000000.000000,67378029765916820000000.000000,75553486092184703000000000000.000000,4397611913739958700000.000000,76209378028621039000000000000000.000000
这是我们需要解的密码,提示为
1To solve the key, Maybe you know some interesting data format about C language?
我们引入数据转字节的方式。因为我们输入的数据,在内存中是存放在对应地址,每个地址代表一个字节空间。
比如int a = 5;就是代表a所在的地址空间,以及向下,一共连续4个地址,都会 ...
shodan信息收集基本用法
我们可以安装在linux机器上
1sudo pip install shodan
当然前提是我们先注册好shodan并且去拿到它的api_key。
然后可以在python中运行shodan
1234import shodanapi = shodan.Shodan('api_key')info = api.host('ip')print(info)#即可
我们在搜索框中搜索,会更加方便,其语法如下:
123456789101112131415161718#搜索ip可以直接输入ipcountry:"CN"city:"ShangHai"hostname:.orghostname:"google"hostname:baidu.comorg:"alibaba"os:"Linux 2.6.x"port:22port:80net:"59.56.19.0/24"#设置子网product:"nginx"product:&qu ...
lab-hackthebox-Crocdile
首先我们连接到openvpn。
然后进行nmap扫描
1sudo nmap -sS -Pn -n --open -p- --min-rate 5000 10.129.155.254
扫描之后得到ftp和http端口开放,我们知道ftp是如下定义
12345The File Transfer Protocol (FTP) is a standard communication protocol used to transfercomputer files from a server to a client on a computer network. FTP users mayauthenticate themselves with a clear-text sign-in protocol, generally using a usernameand password. However, they can connect anonymously if the server is configured toallow it.
并且当我们匿名登陆成功时,会返回如下结果
1ftp-anon: ...