mniedermaier / cybics Goto Github PK
View Code? Open in Web Editor NEWUnderstanding industrial Cybersecurity.
License: MIT License
Understanding industrial Cybersecurity.
License: MIT License
To use the CybICS as a standalone device without Internet / existing Wi-Fi it should be in AP mode
Create a training section for reconning.
Ideas:
The USB-C power connector does not work if USB-C to USB-C is used.
USB-C to USB-A is working.
Tework hardware like e.g. suggested in https://www.pcbway.com/blog/PCB_Design_Tutorial/How_to_add_USB_C_to_your_projects.html
Implementing an attack on the user/admin account management of OpenPLC / FUXA:
The attack should be a man-in-the-middle attack between the PLC and the HMI.
So the operator is tricked to see a normal behavior on the HMI, but in the real world something else is happening (e.g. too high pressure).
Tasks:
Possibility to use the "./installRPI.sh " without a VScode dev container.
Warning message:
bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8) /bin/bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)
The build of the containers should be ensured:
./installRPI.sh failed
Output:
=> ERROR [ 6/10] RUN export GNUMAKEFLAGS=-j$(nproc --all) && alias make='make -j$(nproc --all)' && ./install.sh docker 0.3s
------
> [ 6/10] RUN export GNUMAKEFLAGS=-j$(nproc --all) && alias make='make -j$(nproc --all)' && ./install.sh docker:
0.148 /bin/sh: 1: ./install.sh: not found
------
Dockerfile:16
--------------------
15 | WORKDIR /CybICS/OpenPLC_v3/
16 | >>> RUN export GNUMAKEFLAGS=-j$(nproc --all) \
17 | >>> && alias make='make -j$(nproc --all)' \
18 | >>> && ./install.sh docker
19 |
--------------------
ERROR: failed to solve: process "/dev/.buildkit_qemu_emulator /bin/sh -c export GNUMAKEFLAGS=-j$(nproc --all) && alias make='make -j$(nproc --all)' && ./install.sh docker" did not complete successfully: exit code: 127
For the trainings, there should be a flag, when the task was completed successfully.
Examples Ideas:
The STM32 is not flashed anymore after the last merge with PIGPIO.
Maybe due to I/O blocked by PIGPIO before the openocd can access it?
The OpenPLC can not write outputs anymore if the OpenPLC Docker container restarts.
docker@MLB-T14s:/CybICS/software$ ssh pi@$DEVICE_IP sudo docker compose -f /home/pi/CybICS/docker-compose.yaml logs openplc -f
openplc-1 | cp: cannot stat '/workdir/webserver/dnp3_default.cfg': No such file or directory
openplc-1 | cp: cannot stat '/workdir/webserver/openplc_default.db': No such file or directory
openplc-1 | cp: cannot stat '/workdir/webserver/st_files_default/*': No such file or directory
openplc-1 | 2024-03-09 16:57:20 initMboxBlock: init mbox zaps failed
openplc-1 | WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
openplc-1 | * Running on all addresses (0.0.0.0)
openplc-1 | * Running on http://127.0.0.1:8080
openplc-1 | * Running on http://172.19.0.2:8080
openplc-1 | Press CTRL+C to quit
openplc-1 | 2024-03-09 16:57:20 gpioSetMode: pigpio uninitialised, call gpioInitialise()
openplc-1 | 2024-03-09 16:57:20 gpioSetMode: pigpio uninitialised, call gpioInitialise()
openplc-1 | 2024-03-09 16:57:20 gpioSetMode: pigpio uninitialised, call gpioInitialise()
openplc-1 | 2024-03-09 16:57:20 gpioSetPullUpDown: pigpio uninitialised, call gpioInitialise()
openplc-1 | 2024-03-09 16:57:20 gpioSetMode: pigpio uninitialised, call gpioInitialise()
openplc-1 | 2024-03-09 16:57:20 gpioSetMode: pigpio uninitialised, call gpioInitialise()
openplc-1 | 2024-03-09 16:57:20 gpioSetMode: pigpio uninitialised, call gpioInitialise()
openplc-1 | 2024-03-09 16:57:20 gpioSetMode: pigpio uninitialised, call gpioInitialise()
openplc-1 | 2024-03-09 16:57:20 gpioRead: pigpio uninitialised, call gpioInitialise()
Implement a possibility to e.g. forward all network traffic between the containers to a remote host (attack machine).
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.