密码破解实习DAY3(7.17)

7月17日实习总结

今天和老师交流了一下目前的进度。在破解windows系统口令的那个实验上面,PwDump7是没有问题的,但是LC5在我的电脑上运行起来会破解不出口令。最终老师决定让我先进行下面的实验。

第二个实验是Word文档破解测试。老师说目的不是破解出密码,而是体会不同方法在速度上的差异。需要设置一个时间表,比如5天破解不出,就放弃这个方法。(而且我一定不能手贱关机!!!)

第一个小实验是利用Advance Office Password Recovery破解简单口令。

在使用Advance Office Password Recovery恢复简单口令的时候,会显示文件加密40 bit RC4。这是什么意思呢?

我查了一下RC4加密算法

  • RC4是一种对称加密算法,也就是说使用的密钥为单钥(或称为私钥)。
  • RC4算法的特点是算法简单,运行速度快,而且密钥长度是可变的,可变范围为1-256字节(8-2048比特),在如今技术支持的前提下,当密钥长度为128比特时,用暴力法搜索密钥已经不太可行,所以可以预见RC4的密钥范围任然可以在今后相当长的时间里抵御暴力搜索密钥的攻击。实际上,如今也没有找到对于128bit密钥长度的RC4加密算法的有效攻击方法。

首先我们要先了解一下RC4算法中几个关键变量:

  1. 密钥流:RC4算法的关键是根据明文和密钥生成相应的密钥流,密钥流的长度和明文的长度是对应的,也就是说明文的长度是500字节,那么密钥流也是500字节。当然,加密生成的密文也是500字节,因为密文第i字节=明文第i字节^密钥流第i字节; 
  2. 状态向量S:长度为256,S[0],S[1].....S[255]。每个单元都是一个字节,算法运行的任何时候,S都包括0-255的8比特数的排列组合,只不过值的位置发生了变换; 
  3. 临时向量T:长度也为256,每个单元也是一个字节。如果密钥的长度是256字节,就直接把密钥的值赋给T,否则,轮转地将密钥的每个字节赋给T; 
  4. 密钥K:长度为1-256字节,注意密钥的长度 keylen 与明文长度、密钥流的长度没有必然关系,通常密钥的长度取为16字节(128比特)。

RC4的原理分为3步:

1.初始化S和T

for i=0 to 255 do

   S[i] =i; 

   T[i]=K[ i mod keylen ]; 

2.初始排列S 

for i=0 to 255 do 

   j= ( j+S[i]+T[i]) mod 256; 

   swap(S[i],S[j]); 

3.产生密钥流

for r=0 to len do  //r为明文长度,r字节 

   i=(i+1) mod 256; 

   j=(j+S[i]) mod 256; 

   swap(S[i],S[j]); 

   t=(S[i]+S[j]) mod 256;

   k[r]=S[t]; 

下午我一边进行简单口令的破解,一边继续尝试安装hashcat,昨天的安装失败了。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Elasticsearch7.17.3是一个开源的分布式搜索和分析引擎。它可以用于实时搜索、日志分析、数据可视化等多种场景。在安装Elasticsearch7.17.3之前,你需要先安装ik分词器,你可以按照以下步骤进行安装: 1. 在es的plugins外部的映射文件下执行以下命令: ``` wget https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.17.3/elasticsearch-analysis-ik-7.17.3.zip unzip elasticsearch-analysis-ik-7.17.3.zip ``` 2. 如果在容器外的映射文件plugins下修改安装的ik文件权限: ``` chmod -R 777 elasticsearch-analysis-ik-7.17.3/ ``` 3. 进入es容器的/bin目录下,查看是否安装成功: ``` elasticsearch-plugin list ``` 在配置Kibana时,你可以按照以下步骤进行配置: 1. 打开kibana.yml文件,添加或修改以下内容: ``` server.port: 5601 server.host: 0.0.0.0 elasticsearch.hosts: ["http://远程访问es的Ip:9200"] xpack.monitoring.ui.container.elasticsearch.enabled: true elasticsearch.username: "elastic" elasticsearch.password: "elastic" i18n.locale: "zh-CN" ``` 关于Elasticsearch的查询方法,你可以参考下面的示例: ```java // 增加方法 List<Book> findByNameAndPrice(String name, Double price); // Elasticsearch json 查询 { "query": { "bool": { "must": [ { "query_string": { "query": "?", "fields": ["name"] } }, { "query_string": { "query": "?", "fields": ["price"] } } ] } } } package com.zhuang.es.service; import com.zhuang.es.entity.Book; import org.springframework.data.elasticsearch.repository.ElasticsearchRepository; import java.util.List; public interface BookRepository extends ElasticsearchRepository<Book, Long> { List<Book> findByNameAndPrice(String name, Double price); } ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值