Skip to content

Commit

Permalink
Protocols can now be defined in yaml files
Browse files Browse the repository at this point in the history
  • Loading branch information
Thorsten-Sick committed Nov 9, 2023
1 parent 474cab9 commit 0691b8d
Show file tree
Hide file tree
Showing 60 changed files with 562 additions and 296 deletions.
1 change: 1 addition & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ FROM scratch AS files

COPY --from=build --chown=1000:1000 \
/app/threagile \
/app/components \
/app/raa.so \
/app/dummy.so \
/app/demo-rule.so \
Expand Down
1 change: 1 addition & 0 deletions Dockerfile.local
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,7 @@ RUN rm -rf /var/cache/apk/*
WORKDIR /app

COPY --from=build /app/threagile /app/threagile
COPY --from=build /app/components /app/components
COPY --from=build /app/raa.so /app/raa.so
COPY --from=build /app/dummy.so /app/dummy.so
COPY --from=build /app/demo-rule.so /app/demo-rule.so
Expand Down
7 changes: 7 additions & 0 deletions components/imap-encrypted.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: imap-encrypted
description: IMAP mail sync protocol, encrypted
isProcessLocal: false
isEncrypted: true
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/binary-encrypted.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: binary-encrypted
description: Some other binary protocol, encrypted
isProcessLocal: false
isEncrypted: true
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: true
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/binary.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: binary
description: Some other binary protocol
isProcessLocal: false
isEncrypted: false
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: true
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/container-spawning.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: container-spawning
description: Spawn a container
isProcessLocal: true
isEncrypted: false
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/ftp.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: ftp
description: File Transfer Protocol
isProcessLocal: false
isEncrypted: false
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/ftps.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: ftps
description: File Transfer Protocol with TLS
isProcessLocal: false
isEncrypted: true
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/http.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: http
description: HTTP protocol
isProcessLocal: false
isEncrypted: false
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: true
isPotentialWebAccessProtocol: true
7 changes: 7 additions & 0 deletions components/protocols/https.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: https
description: HTTPS protocol (encrypted)
isProcessLocal: false
isEncrypted: true
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: true
isPotentialWebAccessProtocol: true
7 changes: 7 additions & 0 deletions components/protocols/iiop-encrypted.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: iiop-encrypted
description: Internet Inter-ORB Protocol, encrypted
isProcessLocal: false
isEncrypted: true
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/iiop.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: iiop
description: Internet Inter-ORB Protocol
isProcessLocal: false
isEncrypted: false
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/imap.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: imap
description: IMAP mail sync protocol
isProcessLocal: false
isEncrypted: false
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/in-process-library-call.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: in-process-library-call
description: Call to local library
isProcessLocal: true
isEncrypted: false
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/jdbc-encrypted.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: jdbc-encrypted
description: Java Database Connectivity but encrypted
isProcessLocal: false
isEncrypted: true
isPotentialDatabaseAccessProtocol: true
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/jdbc.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: jdbc
description: Java Database Connectivity
isProcessLocal: false
isEncrypted: false
isPotentialDatabaseAccessProtocol: true
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/jms.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: jms
description: Jakarta Messaging
isProcessLocal: false
isEncrypted: false
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/jrmp-encrypted.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: jrmp-encrypted
description: Java Remote Method Protocol, encrypted
isProcessLocal: false
isEncrypted: true
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/jrmp.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: jrmp
description: Java Remote Method Protocol
isProcessLocal: false
isEncrypted: false
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/ldap.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: ldap
description: Lightweight Directory Access Protocol - User directories
isProcessLocal: false
isEncrypted: false
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/ldaps.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: ldaps
description: Lightweight Directory Access Protocol - User directories on TLS
isProcessLocal: false
isEncrypted: true
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/local-file-access.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: local-file-access
description: Data files are on the local system
isProcessLocal: true
isEncrypted: false
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/mqtt.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: mqtt
description: MQTT Message protocol. Encryption via TLS is optional
isProcessLocal: false
isEncrypted: false
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/nfs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: nfs
description: Network File System
isProcessLocal: false
isEncrypted: false
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/nosql-access-protocol-encrypted.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: nosql-access-protocol-encrypted
description: NOSQL access protocol but encrypted
isProcessLocal: false
isEncrypted: true
isPotentialDatabaseAccessProtocol: true
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/nosql-access-protocol.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: nosql-access-protocol
description: NOSQL access protocol
isProcessLocal: false
isEncrypted: false
isPotentialDatabaseAccessProtocol: true
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/nrpe.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: nrpe
description: Nagios Remote Plugin Executor
isProcessLocal: false
isEncrypted: false
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/odbc-encrypted.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: odbc-encrypted
description: Open Database Connectivity but encrypted
isProcessLocal: false
isEncrypted: true
isPotentialDatabaseAccessProtocol: true
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/odbc.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: odbc
description: Open Database Connectivity
isProcessLocal: false
isEncrypted: false
isPotentialDatabaseAccessProtocol: true
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/pop3-encrypted.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: pop3-encrypted
description: POP 3 mail fetching, encrypted
isProcessLocal: false
isEncrypted: true
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/pop3.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: pop3
description: POP 3 mail fetching
isProcessLocal: false
isEncrypted: false
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: reverse-proxy-web-protocol-encrypted
description: Protocols used by reverse proxies but encrypted
isProcessLocal: false
isEncrypted: true
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: true
7 changes: 7 additions & 0 deletions components/protocols/reverse-proxy-web-protocol.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: reverse-proxy-web-protocol
description: Protocols used by reverse proxies
isProcessLocal: false
isEncrypted: false
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: true
7 changes: 7 additions & 0 deletions components/protocols/scp.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: scp
description: Secure Shell to copy files
isProcessLocal: false
isEncrypted: true
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/sftp.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: sftp
description: FTP on SSH
isProcessLocal: false
isEncrypted: true
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/smb-encrypted.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: smb-encrypted
description: Server Message Block, but encrypted
isProcessLocal: false
isEncrypted: true
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/smb.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: smb
description: Server Message Block
isProcessLocal: false
isEncrypted: false
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/smtp-encrypted.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: smtp-encrypted
description: Mail transfer protocol (sending), encrypted
isProcessLocal: false
isEncrypted: true
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/smtp.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: smtp
description: Mail transfer protocol (sending)
isProcessLocal: false
isEncrypted: false
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/sql-access-protocol-encrypted.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: sql-access-protocol-encrypted
description: SQL access protocol but encrypted
isProcessLocal: false
isEncrypted: true
isPotentialDatabaseAccessProtocol: true
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/sql-access-protocol.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: sql-access-protocol
description: SQL access protocol
isProcessLocal: false
isEncrypted: false
isPotentialDatabaseAccessProtocol: true
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/ssh-tunnel.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: ssh-tunnel
description: Secure Shell as a tunnel
isProcessLocal: false
isEncrypted: true
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/ssh.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: ssh
description: Secure Shell to execute commands
isProcessLocal: false
isEncrypted: true
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/text-encrypted.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: text-encrypted
description: Some other text protocol, encrypted
isProcessLocal: false
isEncrypted: true
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/text.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: text
description: Some other text protocol
isProcessLocal: false
isEncrypted: false
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
7 changes: 7 additions & 0 deletions components/protocols/ws.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: ws
description: WebSocket
isProcessLocal: false
isEncrypted: false
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: true
7 changes: 7 additions & 0 deletions components/protocols/wss.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: wss
description: WebSocket but encrypted
isProcessLocal: false
isEncrypted: true
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: true
7 changes: 7 additions & 0 deletions components/protocols/xmpp.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: xmpp
description: Extensible Messaging and Presence Protocol
isProcessLocal: false
isEncrypted: false
isPotentialDatabaseAccessProtocol: false
IsLaxDatabaseProtocol: false
isPotentialWebAccessProtocol: false
Loading

0 comments on commit 0691b8d

Please sign in to comment.