一、前言 本项目利用51单片机和SIM800C GSM模块实现短信发送功能。短信作为一种广泛应用的通信方式,在许多领域具有重要的作用,如物联网、安防系统、远程监控等。...通过将51单片机与SIM800C GSM模块相结合,可以实现在各种应用场景下的短信通信功能。 本项目的核心组件是51单片机,是一种低成本、低功耗的单片机,广泛应用于嵌入式系统开发。...利用51单片机的串口功能来控制SIM800C GSM模块的通信。SIM800C是一款功能强大的GSM模块,支持GSM/GPRS通信,具有发送和接收短信的能力。...在本项目中,搭建51单片机和SIM800C GSM模块的硬件连接。使用C语言编写程序,在51单片机上实现与SIM800C的通信控制。通过串口通信向SIM800C发送AT指令,实现短信的发送功能。...二、SIM800C硬件介绍 SIM800C是一款功能强大、灵活可靠的GSM/GPRS模块,广泛应用于各种通信和控制场景,尤其在物联网应用中能发挥重要作用。
0x01 COM与GPRS通信命令 该命令行工具工作于PC桌面端,通过计算机串口连接GSM MODEM,所以首先面临一些PC与GPRS模块的通信命令,该程序中用到的命令解析如下: 命令 备注 AT+CGATT...网络注册状态查询 AT+CSQ 检查网络信号强度 AT+CGMM 获取模块支持的频带 AT+CGMI 查询模块厂商的标识 AT+CGMR 查询模块版本 AT+CSCA 查询短信服务中心地址 AT+CGSN...查询模块的 IMEI 号码....各命令依赖关系错综复杂,更多信息可参考:http://www.activexperts.com/sms-component/at/ 0x02 SMS PDU编码 发送短消息常用Text和PDU模式,Text模式收发短信代码简单实现容易...,但其缺点是不支持unicode编码短信;而PDU模式收发短信可以使用3种编码:7-bit、8-bit和UCS2编码。
API操作官方文档 接下来使用模拟器演示一把如何发短信和打电话: 1、启动虚拟手机,在Appium上面启动服务 2、编写Python脚本,如下 from appium import webdriver...from appium.webdriver.extensions.android.gsm import GsmCallActions class TestDemo: #创建一个Class来承载所有的测试用例..."http://127.0.0.1:4723/wd/hub", caps) self.driver.implicitly_wait(10) # 添加隐式等待10秒 # 模拟发短信和打电话...def test_gsm_call(self): self.driver.send_sms(self, "1850755", "Hello, From Seveniruby")...提示apis未安装 以上是发短信和打电话的交互命令,其实交互命令很简单,更多的交互命令可以去官网查看,另外是以实际下载安装的API为准,官方文档的维护有的时候有一些滞后。
GSM Communication on EBox4300--(1)主要是关于EBox4300上实现GSM通信的框架;GSM Communication on EBox4300--(2)陈述了硬件的制作...由于之前的硬件设计中,没有加入耳机和麦克风,所以诸如打电话之类的语音试验这里就不能进行了,发短信是最简单直接的一个试验。...图1:一个简单的UI调试界面 上图中,1和2是ZigBee(EBox4300的串口1)信号发送和接收的显示窗口;3和4是GSM短信息发送和接收的显示窗口;5是目标用户的手机号码输入框;6是进行简单操作的按钮...,包括串口打开、关闭,TC35i模块的初始化,发送、接收显示区的清空等等。 ...'o'}, 0, 5); //set SMS end symbol m_serialPort2.Write(new byte[] { 0x1A }, 0, 1); 至此,在EBox4300上实现GSM
那GSM劫持与短信嗅探究竟是怎样的技术呢?...[it76me1876.png] 在目标 GSM 手机和运营商 GSM 基站之间插入一台GSM伪基站和一部GSM攻击手机。...之后收发短信或接打电话时,如果现网不要求鉴权,就可以由攻击手机直接完成,如果需要鉴权,就再次调用伪基站向目标手机发起鉴权请求,之后把收到的鉴权响应转发给现网的运营商基站。...伪基站,然后攻击者用另一部手机作为攻击手机,以目标手机的身份在运营商现网注册,从而在现网拥有目标手机的全部身份,能够以目标手机的身份接打电话、收发短信,这就是所谓 GSM 中间人攻击。...即使对接 GSM,某些情况下也可以不架设伪基站,直接对接现网 GSM 基站,然后使用半主动式方式来拦截短信,不用中间人攻击也达到同样的短信拦截效果。
(一)移动终端发展 一部手机要实现最主要的功能—打电话发短信,这个手机就要包含下面几个部分:射频部分、基带部分、电源管理、外设、软件等。...仅仅能用来打电话、发短信。 2,多媒体手机:使用基带芯片+协处理器加速单元。在功能机的基础上,添加了多媒体功能(如视频、音乐)。MTK就是在多媒体手机时代崛起的。当然要归功于广大”山寨机“。...(二)什么是基带芯片 移动终端支持何种网络制式是由基带芯片模式所决定,而支持何种频段则由天线和射频模块所决定,基带芯片完毕移动终端的接入功能。眼下基带处理器是一种高度复杂系统芯片(SoC)。...ARM主控模块实现物理层与协议栈的通信。接收高层的指令,运行对应的任务。DSP完毕物理层基带信号处理,包含信道均衡、信道编解码以及电话语音编解码,多模基带中可能存在多颗DSP。...如将射频RF和数字基带合二为一、集成GPS、WiFi模块、集成很多其它的应用接口(如照相机、USB等应用接口)等。 2,存储器组织方面。为增强性能、降低功耗、降低系统成本。
0x01 原理剖析 GSM 通信基本原理 GSM 分配的频段主要有两个频段,分别是 GSM900 和 GSM1800,其中 GSM900 的上行频段是 890-915MHz,下行频段是 935-960MHz...这就要从 GSM 网络说起了 我们马上都要进入 5G 时代了,但是现在还有大量的 2G 的 GSM 网络存在,现在的 GSM 网络主要是中国移动的用户,中国电信没有 GSM 的网络,中国联通正在清退 GSM...GSM 网络有个很致命的缺点就是有很多伪基站,手机在打电话或者发短信的时候,手机是先连到离你最近的基站 (BTS) 然后在进入 RNC, MSC 进行核心网络的交换,在发给离对方最近的基站在传送到对方的手机...(具体算法描述和简介作者推荐大家去看《无线电安全攻防大揭秘》) 0x02 攻击复现 环境搭建 OS: Ubuntu 16.04 or Kali Linux 2019.1 Hardware: 电视棒 RTL-SDR...sudo add-apt-repository ppa:wireshark-dev/stable $ sudo apt update && sudo apt install wireshark Kali Linux
本文作者:雪碧0xroot@漏洞盒子安全团队 0×00 在文章第一部分 GSM Hacking Part ① :使用SDR扫描嗅探GSM网络搭建了嗅探GSM流量的环境,在第二部中,我们来讨论如何捕获发短信以及通话过程中的流量...Downlink Frequency 下行频率 (base station to phone) :937.4 MHz 写作:937400000 3.3捕获下行数据包: grgsm_capture.py -h linux...Available bands are: P-GSM, DCS1800, PCS1900, E-GSM, R-GSM,...GSM450, GSM480, GSM850....20 -g 指定gain参数 40-a ARFCN 12-s 设定采样率1M-c 将捕获到的数据存入sms.cfile-T 设定时间 命令执行后可以用另外一部手机给接入ARFCN 12基站的手机打电话、发短信
1. Serial 2. Input 3. I2C 4. USB 5. Video 6. Audio 7. Block 8. MTD
dependent) 依赖硬件 EDGE(Enhanced Data Rate for - - GSM Evolution 的缩写,即增强型数据速率GSM演进技术。...Android将装载一套核心应用,包括email客户端,SMS(发短信)程序,日历,地图,浏览器,(contacts)联系人等等....devices 系统C库--一个从标准C库中实现的BSD-衍生库.专为基于linux的嵌入式设备进行了调整....Dalvik VM依赖于linux内核低层功能,比如线程和低级内存管理。...Linux Kernel Linux内核 Android relies on Linux version 2.6 for core system services such as security, memory
3.学习TPYBoard v102控制SIM900A模块收发短信。...0.png 1、全新、高性价比 SIM900A GSM GPRS 开发板,板载的SIM900A模块为全新原装64M版本,带彩信功能,绝非32M的老版本。...2、SIM900A模块板载SIMCOM公司的工业级双频GSM/GPRS模块:SIM900A,工作频段双频:900/1800Mhz,可以低功耗实现语音、SMS(短信,彩信)、数据和传真信息的传输。...一开始用TTL模块(CH340)调试,发送AT指令模块无返回,TTL模块是可用的,不知道啥原因,手册说USB转TTL模块最好用CP2012芯片的。有条件的话调试时最好用RS232接口。...2.给SIM900A模块上电前,请将SIM卡正确放入卡槽,接上GSM天线。通电后,可以通过观察D5和D6的工作状态来大致判断模块的工作状态。
内核模块 实验目的 内核模块是Linux操作系统中一个比较独特的机制。...通过这一章学习,希望能够理解Linux提出内核模块这个机制的意义;理解并掌握Linux实现内核模块机制的基本技术路线;运用Linux提供的工具和命令,掌握操作内核模块的方法。...上述实验过程中,将会遇到Linux为此开发的内核模块操作工具lsmod、insmod、rmmod等。...由于引入了模块机制,Linux的内核可以达到最小,即内核中实现一些基本功能,如从模块到内核的接口,内核管理所有模块的方式等等,而系统的可扩展性就留给模块来完成。...3.3 模块实用程序modutils Linux内核模块机制提供的系统调用大多数都是为modutils程序使用的。可以说,是Linux的内核模块机制和modutils两者的结合提供了模块的编程接口。
Linux内核的作用 ? 管理内存 提高效率,管理可用内存的方式,以及物理和虚拟映射所使用的硬件机制。 调度任务 某些机制执行从用户空间到内核的函数调用。...内核模块 ?...arch 表示各种各样的平台 crypto 安全加密 drivers 驱动各种各样的硬件 fs 文件系统 lib 各种各样的库 net 网络功能 sound 声卡 查看所有模块 lsmod...查看指定模块的详细信息 modinfo 模块名 动态加载模块 modprobe 模块名 动态卸载模块 modprobe -r 模块名 ?...详细学习可参考官网: http://www.tldp.org/LDP/tlk/tlk.html https://mirrors.edge.kernel.org/pub/linux/ ?
再仔细一想,恍然大悟——虽然我们没有发短信,但是我们每天收到的短信可不少啊。 ?...不是不想回复,而是没办法回复——因为这货没有发短信的功能。 ? 到了1993年,诺基亚终于推出了全球首部支持发送短信的GSM手机——Nokia 1011。由此,短信时代才算是正式开启。 ?...其实也就是发短信和收短信。 短信之所以称为短信,就是因为它“短”。短信的文本信息最大发送量只有160个字符(字母、数字或拉丁字母中的符号)。如果是中文的话,一条短信的最大发送量为70个汉字。...下面,我们以GSM网络为例,介绍一下短信的具体业务流程。 ? 如果A用户要给B用户发短信。 首先,A用户的手机终端,通过随机接入信道(RACH),申请专用控制信道(SDCCH)。...以上就是GSM网络中,短信的工作流程。 短信的演进 在早期GSM网络中,短消息的信息容量小,而且只能发送文本消息。 到了GSM Phase2+,出现了增强型短消息业务(EMS)。
我们可以直接把锁内的 GSM 模块当成是当年的插了SIM卡的黑白功能手机,10秒内的时间,GSM 搜索网络时间没有这么短,更何况在解锁的过程中,我们仅仅是用手机扫码,没有任何激活单车的操作,所以可以肯定锁是始终与网络保持长连接的...原因其实是最开始的共享单车,开锁并不是使用GPRS流量来控制的,而是服务器通过给自行车发短信(对,就是手机短信),响应然后开锁。6至10秒的延时也正正是短信投递的时间。...显然,定位的问题要用到锁里面GPS 模块(最傻的创业者都不会用基站这种方式定位),单单是实时定位就需要GSM + GPS的方式24小时不间断去追踪单车,耗电不少啊。...我们从SparkFun 上找了个GSM/GPS 模块,通过它显示的参数来预估。...所以我们先把忽略GPS模块的功耗忽略,只计算GSM模块待机功耗。
2G时代是“文本时代”,这个时代我们的通信不仅可以打电话还可以发短信。视角回到1995年,新的通讯技术成熟,国内也在中华电信的引导下,正式挥别1G,进入了2G的通讯时代。...GSM在1990年由欧洲发展出来,另外还有TDMA、CDMA、PDC与iDEN。...第一款支持WAP的GSM手机是诺基亚7110,它的出现标志着手机上网时代的开始,而那个时代GSM的网速仅有9.6KB/s。...2G时代也是移动通信标准争夺的开始,,GSM脱颖而出成为最广泛采用的移动通信制式。...不仅能千里之外给家人朋友打电话,还能千里之外给家人朋友发短信了。但是打电话、发短信这两个简单的功能,怎么可能满足大家的需求呢? ?
安装pip工具 1、首先检查linux有没有安装python-pip包,直接执行 yum install python-pip ?...模块安装 模块安装(三种方式) 1、 pip install 模块名 easy_install 模块名 如果pip安装慢的话,用阿里云的源吧 pip install 模块名 -i http
背景| Linux 内核模块 Linux 内核模块在概念和原理层面与动态链接模块(DLL或so)类似。...正是因为内核模块这种机制,方便了Linux 贡献者选择设备驱动成为进入 Linux 复杂系统的一个入口点,而不会被 Linux 代码的复杂性而压倒。...也正是因为内核模块这个特点,Rust for Linux 项目的目标就是让 Rust 成为Linux内核模块开发的第二语言。...现在这篇文章就是带你了解如何通过 Rust 为 Linux 编写内核模块。...以上就是模块的整个生命周期,也可作为我们编写内核模块的一个宏观的心智模型。 从零编写一个字符驱动 Linux 中设备通常被分为三类,每个驱动模块通常实现为这三类中的其中一种: 字符设备。
02 短信嗅探(GSM嗅探) 1993年,中国有了第一个GSM网络,也就是2G网络,大家才可以用手机进行电话接打、短信收发。...因此在2000年左右就有人提出了GSM网络的这个安全漏洞。 从2011年开始,国内就有利用GSM的漏洞进行犯罪的例子了。...相信大家都听过“伪基站”吧,就是利用GSM网络下用户无法对接入的基站合法性进行验证的漏洞,通过信号发射装置伪装成运营商的基站,欺骗手机用户接入。然后通过群发短信的方式进行广告宣传、短信钓鱼诈骗。...随着运营商和执法部门对伪基站犯罪打击力度的增强,以及4G普及后大量用户将sim卡更换成双向鉴权的usim卡,利用伪基站群发短信作案的团伙也销声匿迹了。...大家可能有疑惑,既然都知道GSM不安全,现在又都是用的4G、5G手机了,为何运营商不直接关闭GSM?
领取专属 10元无门槛券
手把手带您无忧上云