声明!
学习视频来自B站up主 泷羽sec 有兴趣的师傅可以关注一下,如涉及侵权马上删除文章,笔记只是方便各位师傅的学习和探讨,文章所提到的网站以及内容,只做学习交流,其他均与本人以及泷羽sec团队无关,切勿触碰法律底线,否则后果自负!!!!有兴趣的小伙伴可以点击下面连接进入b站主页B站泷羽sec
LInux基础
openssl是一个开源的加密工具包,提供了各种加密,解密,签名,验证等功能
openssl passwd -l 123
openssl passwd -5 123

md5生成128位
sha1生成160位
sha256生成的为256位(对同一数据加密生成的字符串不同)
shor算法对这些密码都是降维打击(没见过)
作业:去复现一遍









touch
rm
mkdir
rmdir
mv
cp
ln -s original.txt symlink.txt(软链接)
ln ~/offsec123.txt hardlink.txt (硬链接)
硬连接:同一个文件,多个名称,共享同一个inode信息,只能在同一个文件系统中使用,不支持目录创建,只对文件创建,只有在删除一个文件的所有名称时,此文件才会在磁盘上删除,使用ln命令创建。
软链接:不同的文件,指向另一个文件的路径,可以跨文件系统和操作系统使用,支持对文件和目录的创建,删除软连接不会影响源文件,但若是源文件被删除,软连接则会失效,使用ln -s创建。
文件系统:ntfs fat32 exfat 磁盘格式:mbr efi
软连接用于方便使用,硬链接用于防止误删
搜索文件:






1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| 1.which用于查找命令的可执行文件路径。例如:which ls
echo 用于输出内容的命令 echo $PATH会输出系统环境变量
2.locate 用于快速查找文件,它通过查询一个事先构建好的文件数据库来实现(视频中的数据库local.db并未找到),通过uodatedb命令来进行数据库的更新 数据库文件通常位于 /var/lib/mlocate/mlocate.db 或 /var/lib/slocate/slocate.db
sudo用于以管理员权限执行命令 locate whoami.exe
3.find find -mtime2 -ls | sort -k9 k10 | more -mtime 2 查找在2天内被修改过的文件 -ls 用于以长列表形式显示找到的文件 | 是管道符,将前一个命令的输出作为后一个命令的输入 sort -k9 -k10 按照第9列和第10列的内容对文件信息进行排序 more 用于分页显示结果 find -type f -iname '*.sh' -mmin 30 -ls -type f 表示查找类型为普通文件 -iname '*.sh' 查找文件名以sh结尾的文件 -mmin -30 表示查找在30分众内修改过的文件 -ls 表示以长列表的形式显示找到的文件信息 find -name '*.svn' -exec rm -f {}; -name 查找文件结尾名为'.svn'的文件名 (-name区分大小写,-iname不区分大小写) -exex 表示对查询到的文件执行的命令 -exec rm -f {};表示对查询到的文件依次执行强制删除命令 find / -user root -type f -perm -o=w -name '*.sh' 2>/dev/null find / 表示在根目录下找 -user root 表示找所有者为root的文件 -type f 表示查找文件的类型为普通文件 -perm -o=w 表示查找其他用户有写权限的文件 -name '*.sh' 查找文件名以'.sh'结尾的文件 2>/dev/null 表示将错误信息重定向到/dev/null,即不显示错误信息
|
用户账号数据库:
/etc/passwd
/etc/shadow
组账号:
/etc/group

禁用账号
sudo passwd -l username
chage -E 1990-01-01 kali
passwd -S username
-l 参数用于锁定
-E 用于修改用户密码的过期时间,使得用户密码过期而无法登录
-S 用于显示指定用户的密码状态信息


文件系统权限:
1 2 3 4 5 6 7 8 9 10 11 12 13
| Linux中一切都是文件 一。查看文件权限 ls -la /etc/passwd -l 指定显示格式(显示详细信息) -a 显示隐藏文件 二。更改文件所有者 chown 用户 文件 三。修改文件权限 sudo chmod u=rwx,g+rw,o-r file u=rwx 给文件所有者所有权限 g+rw 给文件所属组读写的权限 o-r 其他用户减去读的权限 sudo chmod 777 file
|



日志:

认证信息日志在kali机中不存在,只存在这些日志




1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| 系统日志 ls -l/var/log 此文件是系统日志文件所在的目录,执行此命令可以查看该目录下的日志文件列表及相关信息
认证信息日志 sudo tail -3 /var/log/auth.log 此文件是存储系统认证信息的日志文件,包括用户登录,认证失败等信息,执行此命令可查看最近的三条认证相关的日志记录。
二进制日志 who /var/log/wtmp | tail-5 此文件是一个二进制日志文件,记录了系统的登录和注册信息。
内核环形缓冲区 dmesg 用于显示内核缓冲区中的信息,包括系统启动时的硬件检测信息,内核模块加载信息,设备驱动的初始化信息,它可以帮助用户了解系统的硬件状态和内核的运行情况。
systemd日志 journalctl 这是一个用于查看和管理systemd日志的命令。systemd时linux系统的初始化系统和服务管理器,他会记录系统和服务的启动,运行和错误信息等日志。有不同的参数对记录进行筛选。
|
存储管理




磁盘挂载:
未进行磁盘分区,只有一个正在使用的分区,未进行挂载演示,请查询磁盘分区方法,分区后进行挂载,将磁盘内的内存挂到某一目录下。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| 一:内存使用量 free -m 显示系统内存的使用情况 二:磁盘使用量 df -hT -h 人类可读 -T 显示文件系统类型,执行这个命令可以查看各个磁盘分区的总大小,已使用空间,可用空间以及文件系统类型等信息 三。文件或目录大小 sudo du /* -hsc -h 人类可读的形式 -s 汇总显示每个参数的总大小 -c 最后显示总计 四。查看硬盘分区 sudo fdisk -l -l 列出详细信息 五。挂载分区 sudo mount /dev/sdb1 /mnt/usb
|
基本网络工具




此处说未知的接口,但是ifconfig查询得到的就是此接口。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| 一:基本网络工具 ifconfig 配置和显示网络接口信息 ip addr 比ifconfig更详细 sudo ifdown eth0 关闭网络接口eth0 sudo ifup eth0 打开网络接口eth0 二:网络配置 /etc/network/interfaces 这是一个系统文件,用于手动配置网络接口的静态ip地址,子网掩码,网关等信息,在一些linux发行版中,通过配置这个文件可以实现网络接口的手动配置。 NetworkManager(在真实机中存在) 是一个动态网络控制和配置守护进程 它可以自动管理网络连接,包括有线网络,无线网络,vpn连接等 提供了命令行工具和图形化界面,可以自动检测网络变化,并根据配置自动连接到可用的网络。
|
网络链接





1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| 网络链接状态查看工具
netstat -netup netstat是一个用于显示网络连接,路由表,接口统计等信息的命令 ss -netup 比netstat快速高效 二。二层地址查看工具 arp -en -e 以详细格式显示ARP缓存表 -n 以数字形式显示IP地址,避免进行域名解析,执行这个命令可以查看系统的ARP缓存表,其中包含了IP地址和对应的MAC地址映射关系,用于在局域网中进行二层地址解析。 三。路由信息相关工具 route ip route(更详细) sudo ip route add 10.13.37.0/24 dev oth1 四。路由跟踪工具 traceroute offensive-security.com
|
ssh服务


可以看到正常连接,且当前路径发生变化


1 2 3 4 5 6 7 8 9 10 11 12
| 一。启动服务 sudo systemctl start ssh systemctl是用于管理系统服务的工具。 start ssh是启动名为ssh的服务 二。连接本地主机 ssh root@localhot 三。配置文件 /etc/ssh/sshd_config 四。客户端配置 hash knownHosts yes(ssh配置文件中的配置) 通常情况下,/.ssh/known_hosts文件用于储存已知的远程主机的公钥信息 /.ssh这是用户主目录下的一个目录,用于存储ssh客户端的配置和相关文件。通常包含私钥文件,公钥文件以及已知主机文件等,这些文件用于ssh客户端的身份认证和连接管理。
|
远程拷贝

在kali虚拟机中,1.1.1.1地址不知为何不可使用

可以看到文件已正常下载

1 2 3 4 5 6
| scp root@1.1.1.1:/home/kali/.bashrc Copiedbashrc scp是Secure Copy的缩写,用于在不同主机之间安全的复制文件 scp passwd -p kali ssh root@127.0.0.1 查看历史命令 history
|