2021年6月

“欲速则不达,见小利则大事不成。”

想在linux启动时添加系统变量,可以通过操作/etc/profile.d/文件来实现。
使用系统默认执行脚本的功能,把写好的脚本移动到/etc/profile.d目录下,下次系统启动就可以直接使用了。
需要注意的是在/etc/profile文件中只执行.sh 结尾的文件。

示例:
导入用户自定义的LD_LIBRARY_PATH

cat /etc/profile.d/const.sh

export LD_LIBRARY_PATH=/const/lib/

查看变量

echo $LD_LIBRARY_PATH

/const/lib/

基于安全或者其他方面的原因,在linux不想让ps显示指定的进程名称,实现方法如下。

  1. 从github下载源码

    git clone https://github.com/gianlucaborello/libprocesshider.git

  2. 编译并生成目标动态库

    cd libprocesshider/ && make all

  3. 将编译生成的动态库复制到库目录

    cp libprocesshider.so /usr/local/lib/

  4. 配置并生效

    echo /usr/local/lib/libprocesshider.so >> /etc/ld.so.preload

export LD_PRELOAD=/usr/local/lib/libprocesshider.so

让PS隐藏进程的原理就是利用 LD_PRELOAD 来实现系统函数的劫持。
由于ps依赖readdir系统调用,实现中就采用重写readdir实现的方法来达到隐藏linux进程的目的。

  1. 进入保存wifi密码的文件目录

    cd /etc/NetworkManager/system-connections

  2. 查看所有连接过的wifi

    ls -lh

  3. 查看指定wifi-name的连接密码信息

    sudo cat [wifi-name].mconnection

[wifi-security]字段的psk即为密码

psk是Phase-shift keying的缩写,预共享密钥。

PSAM卡外部认证

EXTERNAL AUTHENTICATE 命令应符合下列规定:
EXTERNAL AUTHENTICATE 命令执行成功后,应使外部接口设备对 PSAM 卡获得某种操作授权。
接口设备提供的认证数据应按以下规则产生:
1) 用 GET CHALLENGE 命令向 IC 卡申请一组随机数;
2) 用指定密钥对随机数(后面填充 0x00 至 8 字节(3DES)或 16 字节(SM4)后)做加密运算产生。
3) 对于 SM4 算法,认证数据为 16 字节密文前后 8 字节进行异或的结果,长度仍为 8 字节。
EXTERNAL AUTHENTICATE 命令执行时应满足 P2 参数所指定密钥的使用权限。
密钥验证失败时相应外部认证密钥的错误计数器应减 1,当计数器减为‘0’值时,密钥被锁定。

详细内容参考:高速公路电子不停车收费(ETC)系统国产密码算法迁移试点工程暂行技术要求.pdf

使用nmap arp 快速扫描,发现局域网设备的IP地址。

命令:

nmap -sn -PR 192.168.1.0/24

结果:

nmap -sn -PR 192.168.2.0/24
Starting Nmap 7.80 ( https://nmap.org ) at 2021-06-29 08:41 CST
Nmap scan report for _gateway (192.168.2.1)
Host is up (0.00086s latency).
Nmap scan report for 192.168.2.8
Host is up (0.00054s latency).
Nmap scan report for hesy-ThinkPad-P15v-Gen-1 (192.168.2.64)
Host is up (0.000040s latency).
Nmap scan report for 192.168.2.170
Host is up (0.00087s latency).
Nmap scan report for 192.168.2.223
Host is up (0.00033s latency).
Nmap done: 256 IP addresses (5 hosts up) scanned in 2.22 seconds

扫描255台主机,一个C网段,只需要2秒多钟。

参数说明:
-sn: Ping Scan - disable port scan
-PR (ARP Ping)
最常见的Nmap使用场景之一是扫描一个以太局域网。 在大部分局域网上,特别是那些使用基于 RFC1918私有地址范围的网络,在一个给定的时间绝大部分 IP地址都是不使用的。 当Nmap试图发送一个原始IP报文如ICMP回声请求时, 操作系统必须确定对应于目标IP的硬件 地址(ARP),这样它才能把以太帧送往正确的地址。 这一般比较慢而且会有些问题,因为操作系统设计者认为一般不会在短时间内 对没有运行的机器作几百万次的ARP请求。

当进行ARP扫描时,Nmap用它优化的算法管理ARP请求。 当它收到响应时, Nmap甚至不需要担心基于IP的ping报文,既然它已经知道该主机正在运行了。 这使得ARP扫描比基于IP的扫描更快更可靠。 所以默认情况下,如果Nmap发现目标主机就在它所在的局域网上,它会进行ARP扫描。
参考链接:nmap主机发现 相关文档