当前位置: 首页 > article >正文

2024小迪安全基础入门第二课

目录

一、Web架构展示

1、套用模版型

2、前后端分离

前端语言

后端语言

二、对比三种搭建方式的差异(安全测试渗透测试过程中)

1、集成软件包

2、自主环境镜像

3、容器拉取镜像

三、其他web架构

1、纯静态页面

四、Web源码形式


一、Web架构展示

1、套用模版型

csdn / cnblog / github / 建站系统(凡科)等

安全测试思路上的不同:

一般以模版套用,基本模版无漏洞,大部分都采用测试用户管理权限为主

2、前后端分离

一个后台可以管理多个网站

前端语言

前端主要负责用户界面的呈现和交互,运行在用户的浏览器中。

  1. HTML (HyperText Markup Language)

    • 用于定义网页的结构和内容。

    • 例如:标题、段落、图片等。

  2. CSS (Cascading Style Sheets)

    • 用于美化网页。

    • 例如:字体、颜色、布局。

  3. JavaScript

    • 用于实现动态交互效果。

    • 例如:按钮点击、动态加载数据。

  4. TypeScript

    • JavaScript 的超集,添加了静态类型支持,适合大型项目。

  5. 框架和库(基于 JavaScript/TypeScript):

    • React.js:由 Facebook 开发,专注于构建用户界面。

    • Vue.js:轻量、易用的框架。

    • Angular:Google 开发的全功能框架。

    • Svelte:新兴的前端框架,构建高性能应用。

后端语言

后端负责服务器逻辑、数据库交互和处理业务逻辑。

  1. JavaScript (Node.js)

    • 使用 JavaScript 构建后端,支持高并发。

    • 例如:实时聊天应用。

  2. Python

    • 简洁、易学,适合快速开发。

    • 框架:DjangoFlask

  3. Java

    • 企业级应用的主流语言,跨平台性能优异。

    • 框架:Spring

  4. PHP

    • 专注于 Web 开发,适合动态网页生成。

    • 框架:Laravel

  5. Ruby

    • 语法优雅,开发效率高。

    • 框架:Ruby on Rails

  6. C# (ASP.NET)

    • 由微软开发,适合构建 Windows 平台和 Web 应用。

  7. Go (Golang)

    • 适合高性能和高并发场景。

  8. Rust

    • 适合构建高性能、安全性要求高的系统。

例子:RXThinkCMF - 基于 PHP 语言的敏捷开发框架

思路:若依前后端分离下的渗透测试

前后端分离的站点并非没有漏洞,实际上还是有漏洞的,关键点在于对这个框架的了解程度,以及有没有去深入利用漏洞。

安全测试思路上的不同:前端以JS(Vue,NodeJS等)安全问题,主要以API接口测试,前端漏洞(如XSS)为主,后端隐蔽难度加大。

二、对比三种搭建方式的差异(安全测试渗透测试过程中)

均采用PHP语言的web应用(其他语言可能对结果有误差)

1、集成软件包

宝塔,Phpstudy,xamp等

宝塔搭建

blog.xiaodi8.com

后门的权限:

命令执行不行 文件管理除web目录能看 其他都不能看

宝塔可以控权 Phpstudy没有控权 比自主搭建放出的权限更高

继续:绕过宝塔限制 技术要点

2、自主环境镜像

云镜像打包,自行一个个搭建

Ubuntu

bbs.xiaodi8.com

命令执行可以 文件管理基本都能看 除去一些高权限目录(root目录等)

继续:提权横向 技术要点

3、容器拉取镜像

docker容器搭建

http://8.218.252.213:8080/

内置的虚拟化技术 单独搞了一个磁盘空间在给这个应用做支撑

继续:逃逸提权技术 技术要点

三、其他web架构

1、纯静态页面

纯HTML+CSS+JS的设计

安全测试思路上的不同:无后期讲到的Web漏洞

找线索:找资产,域名,客户端等

四、Web源码形式

旨在了解源码差异,后期代码审计和测试中对源码真实性的判断

后台地址

1、单纯简易源码

xxx.com/admin

2、MVC框架源码

了解URL对应文件 文件对应URL

知道漏洞该怎么触发测试

phpthink框架

application\admin\controller

错误:xxx.com/aapplication\admin\controller

正确:xxx.com/index.php/admin/

3、编译调用源码

如:NET-DLL封装 Java-Jar打包

4、前后端分离源码

https://segmentfault.com/a/1190000045026063

前端:nodejs vue等(js开发框架)

后端:php java python等

5、加密型源码

通达OA


http://www.kler.cn/a/409140.html

相关文章:

  • 深度学习:神经网络中线性层的使用
  • python中lxml 库之 etree 使用详解
  • python-MatchObject对象方法
  • Android 13 编译Android Studio版本的Launcher3
  • C语言蓝桥杯组题目
  • React第六节 组件属性prop的propTypes类型使用介绍
  • 基于python的机器学习(四)—— 聚类(一)
  • 鸿蒙开发Hvigor插件动态生成代码
  • YOLO-FaceV2: A Scale and Occlusion Aware Face Detector
  • Qt | 在Arm Qt上构建并运行一个本地Windows应用程序
  • 【C++】模拟实现 list:双向链表的构建与解析
  • NLP论文速读(MPO)|通过混合偏好优化提高多模态大型语言模型的推理能力
  • Linux常见的指令及shell外壳程序的理解
  • CSS实现实现当文本内容过长时,中间显示省略号...,两端正常展示
  • SplatFormer: Point Transformer for Robust3D Gaussian Splatting 论文解读
  • 学Linux的第九天--磁盘管理
  • 区块链中台详解(Fabric)
  • Qt-容器类控件 布局管理器
  • IDEA使用tips(LTS✍)
  • 深入浅出分布式缓存:原理与应用
  • PyTorch基础2
  • ubuntu rust安装
  • 使用青果代理IP爬取豆瓣TOP250电影数据
  • 【数据结构】【线性表】【练习】反转链表II
  • opencv相关报错
  • AI时代,百度的三大主义