最新Web安全-CTF中的常见命令总结_webctf 修改css(1),关于网络安全程序员最近的状况

一、网安学习成长路线图

网安所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

二、网安视频合集

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
在这里插入图片描述

三、精品网安学习书籍

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
在这里插入图片描述

四、网络安全源码合集+工具包

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
在这里插入图片描述

五、网络安全面试题

最后就是大家最关心的网络安全面试题板块
在这里插入图片描述在这里插入图片描述

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以点击这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

你是小黑子 我是真ikun


### head命令与常用选项


`head` 命令用于显示文件的开头部分,默认显示文件的前 10 行。




| 选项 | 描述 |
| --- | --- |
| -n N | 显示文件的前 N 行。 |
| -c N | 显示文件的前 N 个字节。 |
| -q | 静默模式,不显示文件名。 |
| -v | 显示文件名。 |
| -z | 显示文件开头的零字符,而不是文件的前 10 行。 |



r123@localhost:~$ head content.txt
只因你太美 baby
只因你实在是太美 baby
只因你太美 baby
迎面走来的你让我如此蠢蠢欲动

你是小黑子 我是真ikun


### sed命令的常用选项


sed是一个流式文本编辑应用,它只对输入进行一次传递,因此效率更高,需要注意的是它不会直接修改文件,需要进行重定向。接下来展示操作:


* `-e`选项用于指定一个脚本文件,来处理输入的文本文件
* `-f`选项用于指定一个脚本文件,来处理输入的文本文件
* `-n`显示脚本处理完成后的内容


可用的脚本:


* a :新增, a 的后面可以接字符串,默认在文件每一行末尾添加,或目标行的下一行



r123@localhost:~$ sed -e “aI am really Ikun” content.txt
只因你太美 baby
I am really Ikun
只因你实在是太美 baby
I am really Ikun
只因你太美 baby
I am really Ikun
迎面走来的你让我如此蠢蠢欲动
I am really Ikun

I am really Ikun
你是小黑子 我是真ikun
I am really Ikun


指定第一行后,并对其不修改文件进行验证:



r123@localhost:~$ sed -e “1aI am really Ikun” content.txt
只因你太美 baby
I am really Ikun
只因你实在是太美 baby
只因你太美 baby
迎面走来的你让我如此蠢蠢欲动

你是小黑子 我是真ikun
r123@DESKTOP-TIAOGA4:~$ cat content.txt
只因你太美 baby
只因你实在是太美 baby
只因你太美 baby
迎面走来的你让我如此蠢蠢欲动

你是小黑子 我是真ikun


* c :替换, c 的后面可以接字串,这些字串可以替换目标行范围的内容



r123@localhost:~$ sed -e “1cI am really Ikun” content.txt
I am really Ikun
只因你实在是太美 baby
只因你太美 baby
迎面走来的你让我如此蠢蠢欲动

你是小黑子 我是真ikun


* d :删除,通常不接内容,删除指定范围的内容



r123@localhost:~$ cat content.txt
只因你太美 baby
只因你实在是太美 baby
只因你太美 baby
迎面走来的你让我如此蠢蠢欲动

你是小黑子 我是真ikun
r123@localhost:~$ sed -e 2,3d content.txt
只因你太美 baby
迎面走来的你让我如此蠢蠢欲动

你是小黑子 我是真ikun


删除含小黑子的行:



r123@localhost:~$ sed -e “/小黑子/d” content.txt
只因你太美 baby
只因你实在是太美 baby
只因你太美 baby
迎面走来的你让我如此蠢蠢欲动


* i :插入, i 的后面可以接字符串,字符串默认被插入每一行或目标行的上一行



r123@localhost:~$ sed -e “i小黑子” content.txt
小黑子
只因你太美 baby
小黑子
只因你实在是太美 baby
小黑子
只因你太美 baby
小黑子
迎面走来的你让我如此蠢蠢欲动
小黑子

小黑子
你是小黑子 我是真ikun


* p :打印,默认打印全部内容,将选择的行或范围内的内容打印。通常 p 会与参数 sed -n 同时使用


范围匹配与条件匹配



r123@localhost:~$ sed -n 2,4p content.txt
只因你实在是太美 baby
只因你太美 baby
迎面走来的你让我如此蠢蠢欲动
r123@DESKTOP-TIAOGA4:~$ sed -n /只因/p content.txt
只因你太美 baby
只因你实在是太美 baby
只因你太美 baby


输出全部内容



r123@localhost:~$ sed -n p content.txt
只因你太美 baby
只因你实在是太美 baby
只因你太美 baby
迎面走来的你让我如此蠢蠢欲动

你是小黑子 我是真ikun


* s :替换, c 的后面可以接字串,这些字串可以替换目标行范围的内容,不过它支持正则表达式


如下匹配`1-3`行的`你`,并将你替换为`坤`



r123@localhost:~$ sed -e 1,3s/你/坤/g content.txt
只因坤太美 baby
只因坤实在是太美 baby
只因坤太美 baby
迎面走来的你让我如此蠢蠢欲动

你是小黑子 我是真ikun


### strings命令的常用选项


`strings` 命令用于从二进制文件中提取可打印的字符序列。这通常用于查看二进制文件中的文本信息,例如查看可执行文件或库文件中的字符串。


* `-a`:显示所有字符串,而不仅仅是具有可打印字符的字符串(无法显示中文)。



r123@localhost:~$ strings -a MyMainClass.java
public class MyMainClass{
public static void main(String[] args){
System.out.println(“Hello World!!!”);
}


* `-n <min-len>`:指定要显示的最小字符串长度。
* `-t <radix>`:指定在输出中打印字符串当前分段位置时使用的进制(例如,`-t d` 表示十进制)。


如下的第一行 `public class MyMainClass{`终止于第26位,则第二行开头为27



r123@localhost:~$ strings -t d MyMainClass.java
0 public class MyMainClass{
27 public static void main(String[] args){
72 System.out.println(“Hello World!!!”);
119 }


* `-e <encoding>`:指定输入文件的字符编码。



> 
> * `S` 或 `--encoding=S`:表示将输出解释为单字节字符。
> * `L` 或 `--encoding=L`:表示将输出解释为双字节字符。
> * `B` 或 `--encoding=B`:表示将输出解释为四字节字符。
> 
> 
> 



r123@localhost:~$ strings -e L MyMainClass.java
r123@localhost:~$ strings -e S MyMainClass.java
public class MyMainClass{
public static void main(String[] args){
System.out.println(“Hello World!!!”);
}


### curl命令的常用选项



> 
> 通常来讲,`curl`命令与下面的的`wget`命令都可以用来外带数据到其他地方供我们查看,是主要的利用点
> 
> 
> 


`curl`是一个命令行工具和库,用于在终端中进行数据传输。它支持多种协议,包括 HTTP、HTTPS、FTP、FTPS、SCP、SFTP 等,可以用来发送和接收数据,执行各种网络操作。


* **-X, --request <command>**: 指定 HTTP 请求方法,如 GET、POST、PUT 等。



r123@localhost:~$ curl -X GET https://www.baidu.com

百度一下,你就知道


也可以直接发起请求:



r123@localhost:~$ curl https://www.baidu.com

百度一下,你就知道


* **-H, --header <header>**: 添加自定义的 HTTP 头信息。



curl -H “Content-Type: application/json” http://example.com


* **-d, --data <data>**: 发送 POST 请求时,用于传递数据。



curl -d “param1=value1&param2=value2” http://example.com/resource


* **-i, --include**: 在输出中包含 HTTP 头信息。



r123@localhost:~$ curl -i https://www.baidu.com
HTTP/1.1 200 OK
Accept-Ranges: bytes
Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transform
Connection: keep-alive
Content-Length: 2443
Content-Type: text/html


* **-o, --output <file>**: 将输出保存到文件。



curl -o output.txt http://example.com/file.txt


* **-L, --location**: 自动跟随重定向。



curl -L http://example.com


* **-c, --cookie <cookie>**: 发送请求时携带 cookie。



curl -b “cookie1=value1;cookie2=value2” http://example.com


* **-u, --user <user:password>**: 提供用户名和密码进行身份验证。



curl -u username:password http://example.com


* **–insecure**: 忽略 SSL 证书验证。



curl --insecure https://example.com


### wget命令的常用选项


`wget` 是一个在命令行下使用的网络下载工具,用于从 Web 或 FTP 服务器下载文件。它支持 HTTP、HTTPS 和 FTP 协议,可以在终端中执行,也可以作为后台任务运行


* 下载文件



wget http://example.com/file.txt


* 下载并保存为指定文件名



wget -O output.txt http://example.com


* 后台下载



wget -b http://example.com/file.txt


* 断点续传



wget -c http://example.com/largefile.zip


* 限速下载



wget --limit-rate=200k http://example.com/file.zip


* 递归下载



wget -r http://example.com/directory/


* 下载整个网站,并转换链接为本地链接



wget --convert-links -r http://example.com


* 下载并跟随重定向(指定了重定向的最大次数)



wget --max-redirect=5 http://example.com


* 只下载特定文件类型



wget -r --accept=pdf,doc http://example.com/documents/


* 使用代理



wget --proxy=http://proxy.example.com:8080 http://example.com/file.txt


* 禁用目录递归



wget --no-parent http://example.com/directory/


### sh命令与常用选项


`sh` 是一个 Unix 操作系统中的命令行 shell,用于执行命令和脚本:




| 命令/选项 | 描述 |
| --- | --- |
| `sh` | Unix shell 命令行解释器 |
| `-c command` | 在 shell 中执行指定的命令 |
| `-s` | 使 `sh` 成为非交互式 shell |
| `-n` | 检查语法错误,不执行实际命令 |
| `-r` | 启动受限制的 shell 模式 |
| `-e` | 一旦命令返回非零退出状态,立即退出 |
| `-x` | 打印每个要执行的命令和参数,用于调试 |
| `-v` | 启用详细输出,显示每个命令的执行过程 |


除了上述的常用选项,我们也可以借助调试`shell`脚本那样来查看文件:



r123@localhost:~$ sh content.txt
content.txt: 1: 只因你太美: not found
content.txt: 2: 只因你实在是太美: not found
content.txt: 3: 只因你太美: not found
: not found: 4: 迎面走来的你让我如此蠢蠢欲动
: not found: 5:
content.txt: 6: 你是小黑子: not found


### dd命令与常用选项


`dd` 命令是一个用于复制和转换文件的命令行工具。它通常用于对设备和文件进行底层操作,例如创建镜像、备份和复制数据。`dd` 的名称来源于 “数据定义”(data definition),并且功能非常强大,需要小心使用,因为它可以直接操作设备,而不提供太多安全性保护




| 选项 | 描述 |
| --- | --- |
| `if=input_file` | 指定输入文件的路径,即数据的来源。例如,`if=/dev/sdb` 表示从设备 `/dev/sdb` 读取数据。 |
| `of=output_file` | 指定输出文件的路径,即数据的目标。例如,`of=image.img` 表示将数据写入名为 `image.img` 的文件。 |
| `bs=block_size` | 指定块大小,即每次读取和写入的数据块大小。例如,`bs=4K` 表示使用 4KB 的块大小。 |
| `count=num_blocks` | 指定要复制的块数。用于限制复制的数据量。例如,`count=100` 表示只复制 100 个块。 |
| `seek=skip_blocks` | 在输出中跳过指定数量的块。用于在写入时跳过一些数据。例如,`seek=10` 表示在输出文件中跳过前 10 个块。 |
| `skip=skip_blocks` | 在输入中跳过指定数量的块。用于在读取时跳过一些数据。例如,`skip=5` 表示在输入文件中跳过前 5 个块。 |
| `status=progress` | 在复制过程中显示进度信息,包括已复制的字节数和速度。 |


* 复制整个硬盘数据到镜像文件:`dd if=/dev/sda of=image.img bs=4M`
* 创建随机数据文件:`dd if=/dev/urandom of=random_data bs=1M count=10`
* 将镜像文件写入设备:`dd if=image.img of=/dev/sdb bs=4M`


如果运行 `dd if=content.txt` 命令而没有指定输出文件路径(`of=output_file`),`dd` 命令将默认将输入文件 `content.txt` 的内容写入标准输出(通常是终端或控制台),即获得如下结果:



r123@localhost:~$ dd if=content.txt
只因你太美 baby
只因你实在是太美 baby
只因你太美 baby
迎面走来的你让我如此蠢蠢欲动

你是小黑子 我是真ikun
0+1 records in
0+1 records out
152 bytes copied, 4.73e-05 s, 3.2 MB/s


### rev命令的简单使用


`rev` 是一个 Linux 命令,用于反转文本中的字符顺序。它会将每一行的字符逆序排列,即将每个字符从最后一个字符到第一个字符的顺序进行反转,它不会更改原始文件的内容,而是在输出时显示反转后的结果。



r123@localhost:~$ rev content.txt
ybab 美太你因只
ybab 美太是在实你因只
ybab 美太你因只
动欲蠢蠢此如我让你的来走面迎

nuki真是我 子黑小是你


### tac命令的简单使用


`tac` 命令用于反向显示文本文件的内容,即从最后一行到第一行。



r123@localhost:~$ tac content.txt
你是小黑子 我是真ikun

迎面走来的你让我如此蠢蠢欲动
只因你太美 baby
只因你实在是太美 baby
只因你太美 baby


### lzop命令与常用选项



> 
> 老生常谈的`tar`命令不再赘述,`lzop`命令,`gzip`命令,`bzip2`命令与`tar`通常情况下用于在特殊情况下将`flag`目录打包,方便进行转移
> 
> 
> 


`lzop` 是一个用于压缩和解压缩文件的命令行工具,它采用 `Lempel-Ziv-Oberhumer` 压缩算法。该工具主要用于在 Linux 系统中进行数据压缩,以减小文件大小并提高存储效率。




| 选项 | 描述 |
| --- | --- |


### 给大家的福利


**零基础入门**


对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。


![](https://img-blog.csdnimg.cn/img_convert/95608e9062782d28f4f04f821405d99a.png)


同时每个成长路线对应的板块都有配套的视频提供:


![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/a91b9e8100834e9291cfcf1695d8cd42.png#pic_center)


因篇幅有限,仅展示部分资料

**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**[需要这份系统化资料的朋友,可以点击这里获取](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值