施工中
概述什么是文件上传漏洞文件上传漏洞是指由于对用户文件上传部分的控制不足或者处理缺陷,而导致的用户可以向服务器上传恶意文件并进行执行,后获得执行服务端命令的能力。这里上传的文件可以是木马,病毒,恶意脚本或者WebShell等。
产生文件上传漏洞的原因
不充分的文件验证:如果应用程序未能正确验证上传文件的类型(如MIME类型或文件扩展名)和内容,攻击者可能会上传执行恶意代码的文件。
不安全的文件存储:如果上传的文件存储在可通过Web直接访问的位置,且文件名可预测或未经过适当处理,攻击者可能会执行上传的恶意文件。
未对权限进行限制:权限上没有对于上传的文件目录设置不可执行权限。
例子CTFHUB-技能树-WEB-文件上传-无验证
因为在上传文件后无验证文件信息以及设置动态脚本不可被执行,因此便可直接上传远程木马文件,
查看图片
上传后访问此网站路径下的/upload/shell.php发现是空白界面,说明php文件可以被执行,此时通过冰蝎进行远程连接
查看图片教程
...
XSS简介:动态站点会受到一种名为“跨站脚本攻击”(Cross Site Scripting,缩写成XSS)的威胁,恶意攻击者会在 Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。跨站脚本攻击允许恶意用户将代码注入网页,其他用户在浏览网页时会受到影响,恶意用户利用xss 代码攻击成功后,可能得到很高的权限、私密网页内容、会话和cookie等各种内容
XSS的分类:1、反射型(非持久化) (1)原理
反射型xss又称非持久型xss。发出请求时,此类XSS代码出现在URL中,作为输入提交到服务器端,XSS代码被服务器端解析后传回给浏览器,后解析执行XSS代码。
(2)攻击方式
攻击者将包含xss代码的恶意链接发送给目标用户。当其他用户访问该链接时,服务器接受该用户的URL中参数的请求并进行处理,后xss代码被服务器发送给其他用户的浏览器,触发xss漏洞
2、存储型(持久化) (1)原理
存储型XSS,提交的代码会存储在服务器端,其他用户请求该页面时会触发xss漏洞,无需访问攻击者的特定链 ...
CTF
未读布尔盲注介绍构造SQL语句,利用and,or等关键字来其后的语句 true 、 false使web页面返回true或者false,从而达到注入的目的来获取信息
使用条件:适用于页面没有回显字段(不支持联合查询),且web页面返回True 或者 false类似的结果(例如:登录成功、)
注意事项:
前面参数在数据库无结果时,拼接语句使用关键词or
前面参数在数据库有结果时,拼接语句使用关键词and
另建议使用脚本
注入使用函数1.substr()/substring()函数
substr()/substring()函数:用来截取数据库某个字段中的一部分。
1substr(string,start开始位置,length截取长度) #语法
参数
string:必选,数据库中需要截取的字段
start:必选。正数,从字符串指定位置开始截取;负数,从字符串结尾指定位置开始 截取;0,在字符串中第一个位置开始截取。
length:可选,需要截取的长度。缺省。即截取到结束位置
2.ascii()函数
ascii()函数:返回字符串str的最左边的数值。
1ascii(st ...
联合查询介绍联合查询语句:
1select a from b union select c from d where e;
使用条件:页面对查询语句有回显查询数据
注意事项:
使用联合查询注入时,位于union前的语句不要出现查询的结果(后端只选择查询结果第一行的情况,若前一部分可以被查询,则联合查询的部分不会回显)
若前部分有结果,可在每次的union查询后添加语句limit n,1(n根据题目实际进行切换)起到回显联合查询结果的作用
注:limit num1,num2的作用为从第num1行开始显示num2行内容
所需函数1.concat()函数
concat()函数:将多个不同字段的字符串连接成一个字符串。
1concat(str1,str2) #语法
注意:返回结果为连接参数产生的字符串,如果有任何一个参数为null,则返回值为null。
2.group_concat()函数
group_concat() 将多个同个字段的字符串连接成一个字符串。
1group_concat( [distinct] 要连接的字段 [order by 排序字段 asc/desc] ...
JavaScript 是一种可插入 HTML 页面的轻量级的编程语言。
初识JavaScriptJavaScript的功能
直接写入 HTML 输出流
对事件的反应
改变 HTML 内容
改变 HTML 图像
改变 HTML 样式
验证输入
JavaScript 用法内部的 JavaScriptHTML 中的 Javascript 脚本代码必须位于 <script> 与 </script>标签之间,加上标签后的代码代码可被放置在 HTML 页面的 <body> 和 <head> 部分中。
外部的 JavaScript外部 JavaScript 文件的文件扩展名是 .js。使用以下代码,可将代码引入外部的 JavaScript
1<script src="the_url_of_your_.js"></script>
由于混合 JavaScript 和 HTML 会使代码难以维护和理解,所以与CSS一样,将js代码文件与html文件分离
JavaScript 运行次序当浏览器执行到一段 Ja ...
WEEK1Web1.vue-terminal解法一:
老老实实用cd、ls、cat命令一步步找出下一个url
解法二:
直接找网页源码,无后端,所以flag在前端文件里,一通瞎找最后在app.2fa07618.js找到
1234567methods: { onExecCmd(n, e, t, o) { "flag" === n ? t({ type: "html", content: '\n <ul class="custom-content">\n <li class="t-dir">flag: ROIS{just_a_simple_linux_command_in_CTF}</li>\n ...
kali解压打开默认密码为:kali
设置中文打开Terminal,输入命令:
1sudo dpkg-reconfigure locales
进入后使用键盘的↑+↓←,到最底部,找到 [ ] zh_CN.UTF-8 UTF-8 ,按空格键选中,再按回车进入下一个页面,再选中 zh_CN.UTF-8作为默认语言,后回车
等待下载结束后重启即可
换源因为官方源都是的速度慢,所以选择换国内源
打开Terminal,输入命令
1sudo vim /etc/apt/sources.list
可选的国内源
123456789101112#阿里云源deb http://mirrors.aliyun.com/kali kali-rolling main non-free contribdeb-src http://mirrors.aliyun.com/kali kali-rolling main non-free contrib#中科大源deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contribdeb-src ...