CTF — web入门(持续更新…)

Posted flag{destiny}

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CTF — web入门(持续更新…)相关的知识,希望对你有一定的参考价值。

WEB简介

web俗称web安全,当大家打开浏览器那一刻。就开始和web打交道了,web安全是网络中最经典的应用之一。

WEB常见术语

web前端

Web前端开发工程师,主要职责是利用(X)html/CSS/javascript/Flash等各种Web技术进行客户端产品的开发。完成客户端程序(也就是浏览器端)的开发,开发JavaScript以及Flash模块,同时结合后台开发技术模拟整体效果,进行丰富互联网的Web开发,致力于通过技术改善用户体验。

web后端

后端开发(Back-End Development,也称服务端开发、服务器端开发等)是创建完整可运行的Web应用服务端程序(服务端程序和资源合称为后端,即在服务器上运行的、不涉及用户界面的部分)的过程,是Web应用程序开发的一部分。后端开发者使用Java、Golang等语言及其衍生的各种框架、库和解决方案来实现Web应用程序的核心业务逻辑,并向外提供特定的API,使得Web应用能够高效、安全、稳定地运行。

URL

URL(Uniform Resource Locator),统一资源定位符,用于定位互联网上资源,俗称网址。比如 http://www.w3school.com.cn/ht…,遵守以下的语法规则:

       scheme://host.domain:port/path/filename
  • scheme - 定义因特网服务的类型。常见的协议有 http、https、ftp、file,其中最常见的类型是 http,而 https 则是进行加密的网络传输。
  • host - 定义域主机(http的默认主机是WWW)
  • domain - 定义因特网域名(com.cn)
  • port - 定义主机上的端口号(HTTP的默认端口号是80)
  • path - 定义服务器上的路径
  • filename - 定义文档 / 资源的名称


参数部分:从“?”开始到“#”为止之间的部分为参数部分,又称搜索部分、查询部分。本例中的参数部分为“boardID=5&ID=24618&page=1”。参数可以允许有多个参数,参数与参数之间用“&”作为分隔符。

IP地址

  • 互联网上的所有数据都是存储在主机(服务器)上
  • 互联网中的所有主机都拥有唯一的IP地址
  • 互联网中任意两台主机通信都是通过IP地址来实现

IP 地址是指互联网协议地址,是 IP Address 的缩写。IP 地址是 IP 协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。IP 地址是一个 32 位的二进制数,比如 127.0.0.1 为本机 IP。

端口

跟在域名后面的是端口,域名和端口之间使用“:”作为分隔符。端口不是一个URL必须的部分,如果省略端口部分,将采用默认端口.
如果把IP地址比作一间房子 ,端口就是出入这间房子的门。真正的房子只有几个门,但是一个IP地址的端口可以有65536(即:2^16) 个之多!端口是通过端口号来标记的,端口号只有整数,范围是从0 到65535(2^16-1)。
在Internet上,各主机间通过TCP/IP协议发送和接收数据包,各个数据包根据其目的主机的ip地址来进行互联网络中的路由选择,把数据包顺利的传送到目的主机。大多数操作系统都支持多程序(进程)同时运行,那么目的主机应该把接收到的数据包传送给众多同时运行的进程中的哪一个呢?显然这个问题有待解决,端口机制便由此被引入进来。
http:默认端口号80 ; https:默认端口号443 ; ftp:默认端口号2。

域名

ip是房子的门牌地址,域名是房子的主人名字。房子可以换主人,但是不能换地址。ip地址是Internet网中主机地址的一种数字标识,IP就使用这个地址在主机之间传递信息,而域名是互联网中用于解决地址对应问题的一种方法。域名像名字一样简单好记,可以广泛传播。

  • com是顶级域名
  • baidu.com是二级域名(俗称一级域名)
  • www.baidu.com是三级域名(俗称二级域名)

域名类型:

  • .com 用于商业公司
  • .org 用于组织、协会等
  • net 用于网络服务
  • .edu 用于教育机构
  • .gov. 用于政府部
  • .mil 用于军事领域

DNS

DNS (Domain Name Server ) 译为:域名解析服务
在浏览器输入网址后,首先要经过域名解析,DNS 协议提供通过域名查找 IP 地址,或逆向从 IP 地址反查域名的服务。DNS 是一个网络服务器,我们的域名解析简单来说就是在 DNS 上记录一条信息记录。

浏览器

浏览器是用来检索、展示以及传递Web信息资源的应用程序。Web信息资源由统一资源标识符( URI)所标记,它是一张网页、一张图片、一段视频或者任何在Web上所呈现的内容。

浏览器如何通过域名去查询 URL 对应的 IP?

浏览器通过向 DNS 服务器发送域名,DNS 服务器查询到与域名相对应的 IP 地址,然后返回给浏览器,浏览器再将 IP 地址打在协议上,同时请求参数也会在协议搭载,然后一并发送给对应的服务器。

TCP 三次握手

在客户端发送数据之前会发起 TCP 三次握手用以同步客户端和服务端的序列号和确认号,并交换 TCP 窗口大小信息。

HTTP

超文本传输协议(Hyper Text Transfer Protocol,HTTP)是一个简单的请求-响应协议,它通常运行在TCP之上。
TCP 三次握手结束后,开始发送 HTTP 请求报文。
1 .请求行包含请求方法、URL、协议版本

  • 请求方法包含 8 种:GET、POST、PUT、DELETE、PATCH、HEAD、OPTIONS、TRACE。
  • URL 即请求地址,由 <协议>://<主机>:<端口>/<路径>?<参数> 组成
  • 协议版本即 http 版本号

2 .请求头包含请求的附加信息,由关键字/值对组成,每行一对,关键字和值用英文冒号“:”分隔。
—— 常见头部字段

服务器

服务器是网络环境中的高性能计算机,它侦听网络上的其他计算机(客户机)提交的服务请求,并提供相应的服务,比如网页服务、文件下载服务、邮件服务、视频服务。而客户端主要的功能是浏览网页、看视频、听音乐等等,两者截然不同。 每台服务器上都会安装处理请求的应用——web server。常见的 web server 产品有 apache、nginx、IIS 或 Lighttpd 等。 web server 担任管控的角色,对于不同用户发送的请求,会结合配置文件,把不同请求委托给服务器上处理相应请求的程序进行处理(例如 CGI 脚本,JSP 脚本,servlets,ASP 脚本,服务器端 JavaScript,或者一些其它的服务器端技术等),然后返回后台程序处理产生的结果作为响应。

shell

真正能够控制计算机硬件(CPU、内存、显示器等)的只有操作系统内核(Kernel),图形界面和命令行只是架设在用户和内核之间的一座桥梁。
由于安全、复杂、繁琐等原因,用户不能直接接触内核(也没有必要),需要另外再开发一个程序,让用户直接使用这个程序;该程序的作用就是接收用户的操作(点击图标、输入命令),并进行简单的处理,然后再传递给内核。如此一来,用户和内核之间就多了一层“代理”,这层“代理”既简化了用户的操作,也保护了内核。
用户界面和命令行就是这个另外开发的程序,就是这层“代理”。在Linux下,这个命令行程序叫做 Shell。

木马

木马全称为特洛伊木马,来源于古希腊神话。木马是通过欺骗或诱骗的方式安装,并在用户的计算机中隐藏以实现控制用户计算机的目的。

——木马详解

ctf工具整理-持续更新

声明:作者整理的ctf工具仅为学习,如有侵权请联系作者删除博文,谢谢!

目录

1. 通用工具

2. web工具

3. 离线解码工具

4. 在线解码工具

5. 杂项工具

6. 逆向工具


1. 通用工具

1.1 网络抓包工具:Wireshark
1.2 攻击web 应用程序的集成平台:BurpUnlimited

2. web工具

2.1 后台扫描工具:御剑后台扫描珍藏版
2.2 浏览器插件:HackBar  用来进行sql注入以及xss测试或进行各种编码功能
2.3 目录/文件和DNS爆破工具:gobuster (kali) 安装链接:https://blog.csdn.net/qq_22597955/article/details/118553139?spm=1001.2014.3001.5502

3. 离线解码工具

3.1 多种加密解码工具集合:CaptfEncoder
3.2 AZdecrypt 
3.3 Converter

4. 在线解码工具

4.1 MD5在线解码:https://www.cmd5.com/
4.2 ctf在线集成工具:http://ctf.ssleye.com/
4.3 bugku工具在线集成:https://tool.bugku.com/
4.4 base58在线解码工具:http://www.metools.info/code/c74.html
4.5 Unicode:https://c.runoob.com/front-end/3602
4.6 base to img在线转换:http://tool.chinaz.com/tools/imgtobase/
4.7 二维码解码在线工具:https://jiema.wwei.cn/
4.8 在线动态图片分解工具:https://tu.sioe.cn/gj/fenjie/
4.9 社会主义核心价值观在线解码工具:https://wtool.com.cn/cvencode.html

5. 杂项工具

5.1 查看路由信息工具:routerpassview 下载链接:https://www.soft-down.net/detail/41/403824.shtml?type=jingzhun
5.2 二维码解码工具:QR_Research
5.3 十六进制编辑器和文本编辑器:010 editor 用于查看压缩包是否存在伪加密,查看txt乱码文件类型  下载链接:https://download.sweetscape.com/010EditorWin32Installer11.0.1.exe
5.4 图片隐写查看器:stegsolve 添加前需要Java配置,配置参考连接:https://www.cnblogs.com/ciel-shan/p/12724764.html
5.5 火绒终端安全管理平台sysdiag,下载链接:https://www.huorong.cn/person5.html
5.6 ZIP加密文件破解工具:fcrackzip(kali) 安装链接:https://blog.csdn.net/qq_22597955/article/details/118751974?spm=1001.2014.3001.5502
5.7 多重文件分析工具:binwalk(kali)

6. 逆向工具

6.1 PE查壳工具:DIE
6.2 反编译工具:IDA Pro
6.3 汇编分析调试器,动态追踪工具:吾爱破解专用版Ollydbg

PS:以上工具是作者在bugku刷题中使用到的工具,在以后的刷题过程中会持续更新,欢迎补充!

坚持很难,放弃很简单,想要把难的事情做得简单,只需要每天坚持一下就好啦!

加油,成为想要成为cool girl!

以上是关于CTF — web入门(持续更新…)的主要内容,如果未能解决你的问题,请参考以下文章

ctf工具整理-持续更新

web前端巨无霸长文-持续更新2021-10-14(1.6w+字)

ctf pwn 栈溢出攻防演绎流程图及学习路径v1.0(从入门到进阶,个人整理,持续更新)

ctf基于python脚本的sql注入合集(持续更新)

博客园目录导航 持续更新中~~

技术分享支付宝前端团队整理的《Web前端开发入门手册》