BUU刷题记4
[极客大挑战 2019]HardSQL题目环境:
解题思路:万能密码:1' or 1=1#
过滤了and、=、空格、union、双写 等
尝试报错注入:报错注入使用场景
适合无直接回显的sql注入,存在报错页面的回显
有两个报错注入函数:
extractvalue()
updatexml()
一、extractvalue函数1.函数含义: 使用 XPath 表示法从 XML 字符串中提取值,即返回的是一个字符串。
2.用法
ExtractValue(xml_frag, xpath_expr)两个字符串参数:(1). xml_frag: XML 标记片段,xml语言的标签闭合内的值,(2). xpath_expr: XPath 表达式,匹配xml标签内的值并返回。例如,
ExtractValue('<a>ccc<b>ddd</b></a>', '/a') AS val1;
val1的值为ccc,而不为ddd,因为a标签中闭合的是ccc,若 ...
BUU刷题3
[HCTF 2018]admin题目环境:拿到题目
http://8d2e91a4-70d2-49da-98f1-83d166f947bd.node4.buuoj.cn:81
f12查看源代码
<!-- you are not admin -->
发现提示要成为admin
随便注册个账号,登入后,在
view-source:http://admin.2018.hctf.io/change
发现提示
<!-- https://github.com/woadsl1234/hctf_flask/ -->
于是下载源码
功能分析拿到代码后,查看了下路由route.py
#!/usr/bin/env python
# -*- coding:utf-8 -*-
from flask import Flask, render_template, url_for, flash, request, redirect, session, make_response
fro ...
文件上传&条件竞争
条件竞争之文件上传
一.什么是条件竞争上传条件竞争上传是一种服务器端的漏洞,由于后端程序操作逻辑不合理导致。由于服务器端在处理不同用户的请求时是并发进行的,因此,如果并发处理不当或相关操作逻辑顺序设计的不合理时,将会导致此类问题的发生,此漏洞一般发生在多个线程同时访问同一个共享代码、变量、文件等没有进行锁操作或者同步操作的场景中。
upload-labs(Pass-17)$is_upload = false;
$msg = null;
if(isset($_POST['submit'])){
$ext_arr = array('jpg','png','gif');
$file_name = $_FILES['upload_file']['name'];
$temp_file = $_FILES['upload_file']['tmp_name'];
$file_ext = substr($file_name,strrpos($file_name,".")+1);
$upload_file = UPLOAD_PATH . '/' . $ ...
无参rce
RCE总结
概念介绍:
RCE英文全称:remote command/code execute分为远程命令执行ping和远程代码执行evel。
漏洞出现的原因:没有在输入口做输入处理。我们常见的路由器、防火墙、入侵检测等设备的web管理界面上
一般会给用户提供一个ping操作的web界面,用户从web界面输入目标IP,提交后,后台会对该IP地址进行一次ping测试,并返回测试结果。其实这就是一个接口,可以让攻击者直接向后台服务器远程注入操作系统命令或者代码,从而控制后台系统,这就是RCE漏洞。
所谓无参数RCE,就是通过没有参数的函数达到命令执行的目的
即
if(';' === preg_replace('/[^\W]+\((?R)?\)/', '', $_GET['code'])) {
eval($_GET['code']);
}
preg_replace ( 搜索的模式,用于替换的字符串或字符串数组,要搜索替换的 )
无参rce详细解释
常用方法:
1.getenv()获取一个环境变量值
$GLOBALS$_SERVER $_G ...
无题
define(["exports"],(function(t){"use strict";try{self["workbox:core:6.4.1"]&&_()}catch(t){}const e=(t,...e)=>{let s=t;return e.length>0&&(s+=` :: ${JSON.stringify(e)}`),s};class s extends Error{constructor(t,s){super(e(t,s)),this.name=t,this.details=s}}try{self["workbox:routing:6.4.1"]&&_()}catch(t){}const r=t=>t&&"object"==typeof t?t:{handle:t};class n{constructor(t,e,s="GET"){this.handler=r(e),this.match=t,this.method=s}setCatchHandler(t){this.catchHandler=r(t)}}class i extends n{constructor(t ...
无题
if(!self.define){let e,t={};const o=(o,n)=>(o=new URL(o+".js",n).href,t[o]||new Promise((t=>{if("document"in self){const e=document.createElement("script");e.src=o,e.onload=t,document.head.appendChild(e)}else e=o,importScripts(o),t()})).then((()=>{let e=t[o];if(!e)throw new Error(`Module ${o} didn’t register its module`);return e})));self.define=(n,r)=>{const s=e||("document"in self?document.currentScript.src:"")||location.href;if(t[s])return;let i={};const c=e=>o(e,s),l={module:{uri:s},exports: ...
记IDEA无法搜索插件
IDEA汉化问题搜索汉化插件过程中一直加载没别的显示,挂了但是不行哇,重启也不行
于是搜索一下,不得不说,互联网真的强大,只要你想学,都有人教
修复过程:
先设置代理:http://127.0.0.1:1080 ==重启==后依旧不行
继续重新设置
https://plugins.jetbrains.com/
点击
显示连接超时,可能与网络有关
网络验证:win+R输入/cmd,打开命令提示符,ping plugins.jetbrains.com
如果是这样就代表网络延迟很高,导致加载不出来。如果ping不通可能和网关有关。
网络延迟很高的解决方法:找到host文件,添加一个配置。
host文件路径:C:\Windows\System32\drivers\etc
13.249.171.117 plugins.jetbrains.com
13.249.171.117 jetbrains.com
如果还是请求超时可以换一个地址🤦♂️
resrart—–>解决
总结:ping一般用来检查网络状态
host中配置和网络有关
参考文章
BUUweb刷题记录2
[极客大挑战 2019]PHP1题目描述:
思路:
一开始只想到看源码,没发现
提示==备份==,扫描网站目录呀
python3 dirsearch.py -u “http://49ccffbe-070a-4af8-bedc-679f278f20f3.node4.buuoj.cn:81/?.php" -e * -w ndb
kali:目录在~的dirsearch
扫描工具使用:
dirsearch:下载项目,并打开
Copy┌─[root@kali]─[/kali]
└──╼ #git clone https://github.com/maurosoria/dirsearch
Copy┌─[root@kali]─[/kali]
└──╼ #cd dirsearch/
运行需要python3环境
Copy┌─[root@kali]─[/kali/dirsearch]
└──╼ #python3 dirsearch.py -u "http://localhost/" -e *
扫描网站需要指定网站的脚本类型,* 为全部类型的脚本
python3 dirsearch.py ...
字符串压缩
Java HashMap介绍int和integer有什么区别Java HashMap containsKey() 方法 package strSplit;
import java.util.HashMap;
public class ZipStr {
public static void main(String[] args) {
// TODO 自动生成的方法存根
String str = "aabaaccdd";
System.out.println(fun1(str));
}
public static HashMap fun1(String str) {
HashMap<Character, Integer> map = new HashMap<Character, Integer>();
char[] c = str.toCharArray();
for (int i = 0; i < c.length; i++) {
//get()获取指定 key 对应对 ...
isccMd
webweb1 <?php
show_source(__FILE__);
$Step1=False;
$Step2=False;
$info=(array)json_decode(@$_GET['Information']);// json_decode() 函数用于对 JSON 格式的字符串进行解码,并转换为 PHP 变量()
if(is_array($info)){
var_dump($info);
is_numeric(@$info["year"])?die("Sorry~"):NULL;
if(@$info["year"]){
($info["year"]=2022)?$Step1=True:NULL;//弱等于,逻辑上与前一个条件(要求year值不等于数字或数字字符串)相反,既然是弱等于,那么判断有2022就可以了,payload可以在2022后加任意字符都满足
}
if(is_array(@$info["items"])){//items值为数组
...