Atlant1c`s blog

踏上路途吧


  • 首页

  • 关于

  • 标签

  • 分类

  • 搜索

kali安装dirseash

发表于 2023-10-20 | 分类于 hack工具

暑假的时候就想用dirseash来着,可是新版本的kali没有自带了,我就尝试上网安装,但是要求的配置一直下载不下来,马上要去打一个线下赛,工具又要打包收集好,正好又遇到了一道ctf需要用到这个工具

好了好了言归正传

阅读全文 »

文件包含漏洞

发表于 2023-10-20 | 分类于 web安全

文件包含简介

服务器执行PHP文件时,可以通过文件包含函数加载另一个文件中的PHP代码,并且当PHP来执行,这会为开发者节省大量的时间。这意味着您可以创建供所有网页引用的标准页眉或菜单文件。当页眉需要更新时,您只更新一个包含文件就可以了,或者当您向网站添加一张新页面时,仅仅需要修改一下菜单文件(而不是更新所有网页中的链接)。

阅读全文 »

ctfshow_web_PHP反序列化

发表于 2023-10-18 | 分类于 ctfweb

php反序列化,刷完这部分的题也算看到了新的大陆,也发现了很多值得我慢慢推敲,细细品味的知识,加油加油。

有关PHP反序列化的知识整理我放到我的另一篇博客了

43a4c54c7bf0689f5bd3d7b23798f9e9_6680261336665197454

阅读全文 »

ctfshow_web_文件包含

发表于 2023-10-16 | 分类于 ctfweb

记录一下在ctfshow平台上学习文件包含的过程

preview

阅读全文 »

php反序列化漏洞

发表于 2023-10-16 | 分类于 web安全

​ 本文我会先将一些PHP基础进行阐述,然后再讲解php反序列化漏洞如何应用

PHP面向对象

面向对象(Object-Oriented,简称 OO)是一种编程思想和方法,它将程序中的数据和操作数据的方法封装在一起,形成”对象”,并通过对象之间的交互和消息传递来完成程序的功能。面向对象编程强调数据的封装、继承、多态和动态绑定等特性,使得程序具有更好的可扩展性、可维护性和可重用性。

在面向对象的程序设计(英语:Object-oriented programming,缩写:OOP)中,对象是一个由信息及对信息进行处理的描述所组成的整体,是对现实世界的抽象。

在现实世界里我们所面对的事情都是对象,如计算机、电视机、自行车等。

阅读全文 »

赴山海之约——山东之旅

发表于 2023-10-13 | 分类于 旅游记录

赴山海之约

记录一下我去青岛玩的心得(点进来有惊喜)

阅读全文 »

ctfshow_web_XXE

发表于 2023-10-13 | 分类于 ctfweb

web373

题目

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?php

/*
# -*- coding: utf-8 -*-
# @Author: h1xa
# @Date: 2021-01-07 12:59:52
# @Last Modified by: h1xa
# @Last Modified time: 2021-01-07 13:36:47
# @email: h1xa@ctfer.com
# @link: https://ctfer.com

*/

error_reporting(0);
libxml_disable_entity_loader(false);
$xmlfile = file_get_contents('php://input');
if(isset($xmlfile)){
$dom = new DOMDocument();
$dom->loadXML($xmlfile, LIBXML_NOENT | LIBXML_DTDLOAD);
$creds = simplexml_import_dom($dom);
$ctfshow = $creds->ctfshow;
echo $ctfshow;
}
highlight_file(__FILE__);



  1. libxml_disable_entity_loader(false); 这一行将禁用libxml实体加载器。这是为了防止XML实体注入攻击,确保不会加载外部实体。设置为false表示实体加载器没有被禁用。
  2. $xmlfile = file_get_contents('php://input'); 这一行从php://input读取HTTP请求的主体部分(通常是POST请求的数据),并将其存储在变量$xmlfile中。
  3. if(isset($xmlfile)){ ... } 这一行检查变量$xmlfile是否存在。如果存在,表示成功获取了XML数据。
  4. $dom = new DOMDocument(); 这一行创建了一个新的DOMDocument对象,用于解析XML。
  5. $dom->loadXML($xmlfile, LIBXML_NOENT | LIBXML_DTDLOAD); 这一行使用loadXML方法加载XML数据到DOMDocument对象中。选项LIBXML_NOENT和LIBXML_DTDLOAD用于指定加载XML时的一些行为。LIBXML_NOENT用于禁用实体扩展,以防止XXE(XML外部实体)攻击,而LIBXML_DTDLOAD用于允许加载DTD(文档类型定义)。
  6. $creds = simplexml_import_dom($dom); 这一行将DOMDocument对象转换为SimpleXMLElement对象,以便更容易地访问XML数据。
  7. $ctfshow = $creds->ctfshow; 这一行尝试从XML数据中提取名为”ctfshow”的元素的值,并将其存储在变量$ctfshow中。
阅读全文 »

XXE漏洞

发表于 2023-10-13 | 分类于 web安全

XXE漏洞

What is XXE?

XML external entity injection (also known as XXE)。奇怪,XML External Entity 为什么不叫XEE?

XML 外部实体注入(也称为 XXE)是一种 Web 安全漏洞,允许攻击者干扰应用程序对 XML 数据的处理。它通常允许攻击者查看应用程序服务器文件系统上的文件,并与应用程序本身可以访问的任何后端或外部系统进行交互。

在某些情况下,攻击者可以利用 XXE 漏洞联合执行服务器端请求伪造(SSRF) 攻击,从而提高 XXE 攻击等级以破坏底层服务器或其他后端基础设施。

1552062-20230423154653701-2017550310

XXE漏洞发生在应用程序解析XML输入时,没有禁止外部实体的加载,导致可加载恶意外部文件和代码,造成任意文件读取、命令执行、内网端口扫描、攻击内网网站、发起Dos攻击等危害。
XXE漏洞触发的点往往是可以上传xml文件的位置,没有对上传的xml文件进行过滤,导致可上传恶意xml文件。

阅读全文 »

使用Docker制作一个CentOS7容器并安装python3

发表于 2023-10-13 | 分类于 docker

使用Docker制作一个CentOS7容器并安装python3

1.下载centos镜像

1
docker pull centos:7

2.创建并启动容器

1
docker run -d --name centos7 --privileged=true -p 10022:22 -p 10080:80 -h testhost -v /home/fd/container/centos7:/home/centos7 centos:7 /usr/sbin/init

参数说明:

1
2
3
4
5
6
7
8
-d					后台运行方式
–-name 创建的容器名,方便启动、关闭、重启、删除容器等操作
–privileged=true 加上之后容器内部权限更多,不会出现权限问题
-p 10022:22 -p 10080:80 指定端口映射,可同时放通多个端口
-h testhost 指定容器主机名
-v /home/fd/container/centos7:/home/centos7 宿主机目录映射到容器内部目录
centos:7 本地centos镜像版本/或者镜像id
/usr/sbin/init 启动方式
阅读全文 »

关于docker-composer的版本和docker-compose.yml里version的理解

发表于 2023-10-13 | 分类于 docker

关于docker-composer的版本和docker-compose.yml里version的理解

OTbeijing

2023-04-20 12:221623

docker-compose 有哪些版本,和docker-compose.yml里的version有什么样的对应关系?

Docker Compose 是一个用于管理 Docker 应用程序的工具,它允许你使用 YAML 文件来定义应用程序的服务、网络和卷等内容,并在单个主机或多个主机上进行部署。Docker Compose 有以下版本:

  • v1:这是最早的版本,支持基本功能,如构建镜像、启动容器、设置环境变量等。
  • v2.x:增加了对Swarm模式的支持,可以通过docker stack命令将Compose文件部署到Swarm集群中。
  • v3.x:引入了一些新特性,例如配置命名空间、healthcheck检查、秘密管理等。同时也提供了对Kubernetes的支持。

在 docker-compose.yml 文件中指定的version必须与安装在主机上的Docker Compose版本相匹配。如果使用不同版本之间的兼容性问题,则可能会导致意外行为或错误。通常情况下,使用最新版本的Docker Compose是最好的选择,因为它包含最新的特性和修复了已知的漏洞。你可以通过运行以下命令来检查所安装的Docker Compose版本:

1
复制代码docker-compose version

然后,在docker-compose.yml文件中指定适当的版本号,例如:

1
2
3
yaml复制代码version: "3.9"
services:
...

总之,Docker Compose有几个版本,每个版本都提供了不同的特性和兼容性。在编写docker-compose.yml文件时,请确保所指定的version与主机上安装的Docker Compose版本相匹配,以避免任何问题。

阅读全文 »
<1…9101112>

115 日志
14 分类
62 标签
0%
© 2025 Atlant1c
渝ICP备2023016858号