自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

TengChuanB的博客

我一定就是夏铃本铃了

  • 博客(36)
  • 收藏
  • 关注

原创 基于spring生态的基础后端开发及渗透测试流程

这是一篇记录如何从建仓开始到最后安全测试完整流程的笔记,使用的spring生态,目的是为spring的基础后端开发及后期渗透测试打一个模板。本篇采用springSecurity作为安全框架,搭载了等功能,并开放了OAuth2授权登录。本篇代码格式规范为,代码大量使用java8新特性以及apache包下方便的工具类,能一行代码写完的就不用两行。当然本文也配备了大量注释,方便有需要的同学学习。限于篇幅,文章内只能简短提及使用原因以及简略使用方法,具体步骤还请参考本篇附带代码或百度。

2023-02-03 20:31:22 955

原创 基于spring生态的基础后端开发及渗透测试流程(二)

继上次写了一份基于spring生态的基础后端开发流程后,这次来完成系统的安全防护以及后期渗透测试流程。本人还没有真正接触过安全运维方面的操作,只能凭借平时的经验对系统进行防护。设置Snort入侵检测系统和HFish蜜罐。并对系统进行安全加固。之后通过一系列渗透测试步骤对上次搭建的系统进行安全检测。最后假设系统被入侵,并对系统进行相应应急响应措施。原文链接:https://www.blog.23day.site/articles/83。

2023-02-20 10:30:14 649

原创 linux内网渗透:docker逃逸

Docker 逃逸在渗透测试中面向的场景大概是这样,渗透拿到shell后,发现主机是docker环境,要进一步渗透,就必须逃逸到“直接宿主机”。甚至还有物理机运行虚拟机,虚拟机运行Docker容器的情况。那就还要虚拟机逃逸了。

2022-12-17 20:52:03 1711

原创 ctf笔记:编码

计算机中的数据都是按字节存储。一个字节(Byte)由8个二进制位组成(bit)。(组成范围是0~255(2))一个字节一共可以用来表示256种不同的状态,每一个状态对应一个符号,就是256个符号,从00000000到11111111。

2022-12-17 20:42:09 1274

原创 CVE-2022-22965:spring参数绑定漏洞

cve-2022-22965

2022-12-16 17:40:20 2053

原创 计算机网络实验二:ARP欺骗

Wireshark是一种抓包工具,这种工具比fiddler更强大,消息量更多。大家可能会问:有了fiddler,为什么还要用wireshark呢?这里说下,在测试中,发现用fiddler抓包,有些包是没有抓到的,比如在验证反作弊信息的时候,反作弊pingback信息的消息用fiddler就没抓到,用wireshark就抓到了。还有另外一种情况,就是在验证cna的时候,如果先用fiddler抓包,如果没有种下cna的时候,以后就永远没有cna了,情况很诡异。

2022-12-16 17:38:59 2728

原创 802.11协议:wifi

IEEE 802协议簇是指IEEE标准中关于局域网(LAN)和城域网(MAN)的一系列标准。IEEE 802中定义的服务和协议限定在OSI七层网络模型的最低两层,即数据链路层和物理层。实际上,IEEE802又将OSI的数据链路层分成了两个子层,逻辑链路控制层(LLC)和媒介访问控制层(MAC)。IEEE802协议簇由IEEE802标准委员会维护。其中最广泛应用的协议有以太网(802.3)和WLAN(802.11)。每一个工作组专注一个方向,每个工作组由数字编号,比如目前从802.1编到了802.24。

2022-12-16 17:38:01 4044

原创 ctf笔记:php

ctf php

2022-12-16 17:36:39 1303

原创 杂七杂八的网络安全知识

杂七杂八的网络安全知识

2022-12-16 17:28:26 2287 2

原创 linux进程管理基本概念

程序是人使用计算机语言编写的,可以实现一定功能,并且可以执行的代码集合。而进程是正在执行中的程序。当程序被执行时,执行人的权限和属性,以及程序的代码都会被加载入内存,操作系统给这个进程分配一个 ID,称为 PID(进程 ID)。也就是说,在操作系统中,所有可以执行的程序与命令都会产生进程。

2022-03-01 13:42:58 1057

原创 Docker入门

docker入门

2022-02-08 09:10:51 836 1

原创 快速入手springboot

一、SpringBoot概述1.什么是springSpring是一个开源框架,2003 年兴起的一个轻量级的Java 开发框架Spring是为了解决企业级应用开发的复杂性而创建的,简化开发。2.spring是如何简化java开发的为了降低Java开发的复杂性,Spring采用了以下4种关键策略:1、基于POJO的轻量级和最小侵入性编程,所有东西都是bean;2、通过IOC,依赖注入(DI)和面向接口实现松耦合;3、基于切面(AOP)和惯例进行声明式编程;4、通过切面和模版减少样式代码,Re

2022-01-30 16:53:48 3364

原创 前端技术浅析

前端技术浅析前言一、前端核心分析1.概述2.前端三要素3.结构层(HTML)4.表现层(CSS)5.行为层(JavaScript)二、前端发展史1.UI框架2.JavaScript构建工具3.三端同一混合开发(Hybrid App)4.后端技术5.主流前端框架iViewElement UIICE三、前后端分离的演变史1.后端为主的MVC时代2.基于AJAX带来的SPA时代3.前端为主的MV\*时代4.Node JS带来的全栈时代5.总结前言简单介绍一下前端的技术发展以及整体框架一、前端核心分析1.概

2022-01-30 16:38:05 1216

原创 git简介—快速入门

git简介—快速入门前言一、版本控制1.什么是版本控制2.常见的版本控制工具3.版本控制分类4.Git与SVN的主要区别二、git1.Git的历史2.Git环境配置3.启动Git4.Git配置5.设置用户名与邮箱三、Git基本理论1.三个区域2.工作流程四、 Git项目搭建1.创建工作目录与常用指令2.本地仓库搭建3.克隆远程仓库五、Git文件操作1.文件的四种状态2.查看文件状态3.忽略文件六、GIT分支分支简介分支的新建与合并新建分支分支的合并遇到冲突时的分支合并分支管理变基变基的基本操作变基的风险用变

2022-01-30 16:30:33 533

原创 数据库系统概论--MySQL

四个基本概念:数据、数据库、数据库管理系统、数据库系统以这个数据库为例,介绍有关概念员工的编号列的值有唯一性,编号叫做员工表的**主键(primary key)**员工表中有部门编号,表示员工与部门的**联系(relationship)**员工表中有部门编号,而部门编号是部门表的主键,那么这个属性叫做**外键(foreign key)**如果表中某几个属性(列)的值能唯一的标识一个实体,而其子集不能,则该属性组为**候选码**如果一个表中有多个候选码,则选定一个为**主键**

2021-11-23 11:04:49 1996 1

原创 JavaScript教程

JavaScript教程一、简介二、用法1. script标签2.body中的 JavaScript3.JavaScript 函数和事件4.head或者body的JavaScript5.head 中的 JavaScript 函数6.body 中的 JavaScript 函数7.外部的 JavaScript三、输出1.使用 window.alert()2.操作 HTML 元素3.写到 HTML 文档4.写到控制台三、JavaScript 语法1.字面量2.变量3. 操作符4.语句5.关键字6.注释7.数据类型

2021-11-14 19:57:23 598

原创 html快速入门教程

html教程一、简介1.html2.HTML 标签3.Web 浏览器4. 声明5.中文编码6.HTML51.什么是 HTML5?2.HTML5 是如何起步的?3.HTML5 4.最小的HTML5文档5.HTML5 的改进6.HTML5 多媒体7.HTML5 应用8.HTML5 图形9.HTML5 使用 CSS310.语义元素11.HTML5 表单12.已移除元素二、标签与属性1.元素/标签2.属性三、标签示例1.title(标题)2.hr(水平线)3.注释4.p(段落)5.link(链接)1.target

2021-11-13 12:34:31 1569 1

原创 kali安装jdk16

都2021年了,kali自带的jdk居然还是11。这让强迫症玩家比较难过啊,于是我就着手安装jdk16了(虽然已经出来jdk17了)安装过程1.下载安装包先去官网下载这个我是保存在/opt/jdk/里了2.解压然后解压压缩包tar -zxvf *** (这个***就是你下载的包名)解压完成后你可以选择把jdk放到***/usr/local/***下面mv jdk-16.0.2 /usr/local/jdk3.配置环境变量vim /etc/profilegedit ~/.ba

2021-09-19 19:41:56 1076 2

原创 CCF 2021-4-2 邻域均值 100分(二维前缀和)

CCF 2021-4-2 邻域均值这个题作为第二题,暴力是不可能过得,所以来考虑一下用那种算法对于这种算一段长度或者面积内所有数的和的问题,一般是要联想到前缀和,像这种二维数组,那必然是用二维前缀和所以二维前缀和怎么用,我也是现场推出来的(好久没敲过了,全都忘了),所以大家要理解这个东西,而不是去背代码。所以这里只讲思路:正片开始(下面所有的图都是二维前缀和的图)之前提到过,如果要暴力求解一定会超时,也就是我们计算某个部分的时候,可以用一下之前算出来的结果(也就是一维前缀和的思想,不要给我说一维

2021-09-18 15:43:24 263

原创 CCF CSP 202104-3 DHCP服务器

CCF CSP 202104-3 DHCP服务器很重要的一点就是一定要按照题目给的步骤来判断。下面带注释的部分是我本来的思路,但是只能70分,我觉得大概率是因为有几个坑我没判断出来,但是按照题目给的步骤来就没有任何问题,一遍直接ac。(有好心人帮我看看为啥我的思路有问题嘛)再解释一下代码里冗余的一部分,那些操作仅仅是为了防止考试的时候一瞬间sha*,然后就读不懂之前写的代码了,就多写了一点,保持代码的可读性。直接上代码好了,代码里面注释挺全的。祝各位ccf顺利,我去肝第四题去了(/doge)代码部

2021-09-18 15:00:14 224 1

原创 网络基础教程

操作系统:(Operating System,简称OS)是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行。按照协议层的不同,可以分为四层交换机物理层是一层,数据链路层是二层,以此类推(本文中说的交换机仅指代以太网交换机)NAT(Network Address Translator,网络地址转换)是用于在本地网络中使用私有地址,在连接互联网时转而使用全局 IP 地址的技术。NAT实际上是为解决IPv4地址短缺而开发的技术。

2021-09-10 18:05:40 2149 1

原创 springmvc教程

springmvc教程一、MVC1.概念2.职责二、springmvc1.原理2.执行流程三、编写程序1.配置版2.注解版(推荐)3.Restful风格4.重定向和转发5.数据处理6.乱码问题四、拦截器五、Json1.概念2.格式3.js和json4.使用六、整合SSM框架1.搭建基本项目2.mybatis3.spring4.springmvc一、MVC1.概念MVC是模型(Model)、视图(View)、控制器(Controller)的简写,是一种软件设计规范和架构模式Model(模型):数据

2021-08-29 11:49:06 164

原创 Spring教程

Spring教程前言一、spring是什么二、IOC1.传统web开发2.IOC本质3.IOC容器三、Bean1.概念2.Bean的配置3.依赖注入4.获取Bean5.Bean作用域四、Bean自动装配1.XMl显示配置2.隐式自动装配(注解)3.Java 显式配置五、代理模式1.静态代理2.动态代理六、AOP1.概念2.术语3.实现总结前言一、spring是什么Spring是一个轻量级的控制反转(IOC)、面向切面编程(AOP)的容器。特性:控制反转,面向切面编程;支持事务处理、整合框架。

2021-08-28 14:58:57 510

原创 SQL—MySQL基础教程(新手向)

SQL—MySQL基础教程(新手向)前言一、数据库1.概念2.分类二、MySQL基本概念1.概念2.安装3.启动关闭连接4.操作数据库5.变量类型6.字段属性7.表三、MySQL数据管理1.CRUD2.其他语法3.函数四、事务五、三大范式六、JDBC1.概念2.第一个JDBC3.SQL注入4.处理事务总结前言文章主要讲述数据库相关概念,MySQL的基本使用。我觉得这些都是MySQL中比较重要且精华的部分,有些没有提到的点都是基本不会用到的(当然了,也可能是我菜,根本没学)一、数据库1.概念数据

2021-08-21 18:47:19 464

原创 Mybatis入门笔记

Mybatis入门笔记前言一、简介1.什么是Mybatis2.为什么用Mybatis二、配置环境1.mybatis-config.xml2.第一个Mybatis三、语法1.CRUD2.多对一、一对多3、动态SQL四、SQL注入五、缓存1.简介2.一级缓存3.二级缓存总结前言我还没学SQL和JDBC怎么办,被迫来学Mybatis......一、简介1.什么是MybatisMyBatis 是一款优秀的持久层框架它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 J

2021-08-20 18:47:58 124

原创 Javaweb(五)Session/Cookie篇

Javaweb(五)Session/Cookie篇前言一、会话二、Cookie1.Cookie是什么2.工作原理3.特性4.内置函数三、Session1.Session是什么2.工作原理3.特性4.内置函数四、区别总结前言会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Session。Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份。本篇主要讲述Session和Cookie机制,以及如何使

2021-08-19 20:10:48 147

原创 Javaweb(四)Servlet/Jsp实战篇

文章目录前言一、pandas是什么?总结前言一、pandas是什么?总结提示:这里对文章进行总结:

2021-08-19 16:04:49 319

原创 Javaweb(三)Servlet/Jsp原理篇

文章目录前言一、pandas是什么?总结前言本章开始涉及javaweb主体内容,主要讲解Servlet、Jsp以及Tomcat在客户端与服务端的交互过程中各自有什么用如果还有新手村玩家(比如我 )没有看前两张基础篇,建议先去学一下基础知识哦Javaweb(一)基础知识篇JavaWeb(二)框架搭建篇一、pandas是什么?总结提示:这里对文章进行总结:例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

2021-08-19 10:19:41 228 1

原创 JavaWeb(二)框架搭建篇

文章目录前言一、IDEA二、Maven1.这是啥?2.下载?3.创建maven项目4.Maven仓库三、Tomcat四、整体展示1.框架2.Java类3.webapps4.Maven总结前言这一章就是教给新手村玩家如何使用Java搭建javaweb项目一、IDEAJava入门必备工具官方下载入口这里还是推荐用终极版比较好,以后会省去很多麻烦,网上有很多破解教程,可以尝试一下二、Maven1.这是啥?他就是帮我们方便导入jar包的核心思想:约定大于配置2.下载?可以用IDEA自带

2021-08-18 15:30:03 499

原创 Javaweb(一)网络基础篇

网络基础前言一、客户端、服务端二、web服务器软件1.种类:2.Nginx三、TCP/IP协议1.IP2.IP 路由器3.TCP三次握手总结前言这次学的也不好,文章内容可能比较lowb,见谅当我们打开浏览器,输入网址,提前被准备好的内容就被返回到浏览器。我们电脑安装的浏览器就是①客户端,提供内容的一方就是①服务端。我们作为客户,需要安装客户端软件,也就是浏览器,而作为提供内容的一方也需要安装服务器软件,也就是②web服务器软件,安装了这些软件的计算机称为服务器。客户端和服务端之间的通讯依赖于③TCP

2021-08-18 14:29:03 2481 3

原创 python爬虫教程

python爬虫入门前言一、前情提要1.网络协议2.html3.网页操作4.AJAX5.cookie和session6.线程和进程7.代理ip8.超级鹰二、通用爬虫1.案例三、聚焦爬虫1.数据解析2.方法3.xpath4.案例四、增量爬虫五、异步爬虫1.方式2.线程池3.协程六、selenium1.什么是selenium2.基本使用3.案例七、奇奇怪怪的知识点1.正则快速加引号2.提取文本乱码3.pip install ***4.找不到标签(iframe)总结前言又是新手教程入坑爬虫的第五天一、

2021-08-07 09:33:50 444 1

原创 正则表达式快速入门(面向新手编程)

入门正则表达式前言一、什么是正则表达式二、语法1.普通字符2.非打印字符3.特殊字符4.限定符5.定位符6.选择7.反向引用8.修饰符三、应用总结前言啊,正则表达式啊,记住就好了吧。(我可能就是来熟悉一下markdown的)入门一分钟,更文两小时一、什么是正则表达式什么是正则表达式,什么是正则表达式,如果你想知道什么是正则表达式的话,给个链接自己看入门级教程我也不知道这么放别人链接可不可以(侵删)二、语法1.普通字符[ABC]:匹配[ ]里面的所有字符[^ABC]:匹配除了

2021-07-31 11:02:47 179 1

原创 Python基础教程(非新手向)

Python新手入门前言一、简单的输入输出1.输入2.输出3.格式化数字二、基础语法三、变量类型1、运算符2.number3.字符串4.列表5.元组6.字典7.集合8.索引四、函数五、类六、异常七、模块八、文件操作总结前言本博客主要是提供给已经学过C++或java等已经有编程基础的同学的哦本菜写这篇博客的时候已经入门python差不多四个小时了一、简单的输入输出1.输入控制台会输出“请输入”,输入后的数据以字符串的形式传入,类型转换为intpython `x=int(input("输入: "

2021-07-30 15:47:39 205 1

原创 Linux基础教程

Linux纯新手入门前言一、linux是什么1.概念:2.目录结构二、创建linux1.什么是虚拟机?2.安装CentOS三.入手linux1.vim2.用户、组操作3.文件操作四、常见问题1.网络连接不上2.设置中文总结前言我写这篇博客的时候大概是入手linux第四天,就简单用自己的理解解释一下linux一、linux是什么1.概念:linux就是一个操作系统,就像Windows一样。只不过linux的界面没有图形化,大部分操作都要通过命令行操作目前linux主要发行的版本也有不少CentOS

2021-07-28 15:11:58 225

原创 Java日志—logback+slf4j基础教程

java日志文章目录java日志前言一、日志简介二、前置知识1.maven2.jar包3.slf4j4.logback三、各种配置已经常见问题1.@Test爆红2.设置jdk3.logback.xml里的常用配置四、打jar包五:细节问题1.如何把txt也打入jar包总结前言本人太菜,只学会了slf4j+logback,而且只学会了皮毛一、日志简介日志实现:JUL,logback,Log4j,Log4j2日志门面(接口):JCL,slf4j为了解决不同日志实现之间的没有关联才出现的日志门

2021-07-26 21:34:08 689

原创 Java基础入门(非新手向)

Java学习记录文章目录Java学习记录一、String二、面向对象1.继承2.多态3.接口4.内部类三、基本类型包装类四、异常处理五、集合类1.遍历六、文件流七、线程和进程1.2.Lock总结一、StringString和StringBuilder的转换- s=sb.toString()- sb=new StringBuilder(s)创建String- new String(char [])- string=“abc”string特点:- new出来的地址值不同,内容可能相同

2021-07-26 20:27:15 131

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除