Skip to content

Commit 14e3b86

Browse files
authored
Merge pull request #61 from commjoen/ease-configuration
make accounts configurable
2 parents 0ce8ada + 36e42a3 commit 14e3b86

File tree

6 files changed

+24
-11
lines changed

6 files changed

+24
-11
lines changed

aws/build-an-deploy-aws.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,4 +109,4 @@ wait
109109
DEFAULT_PASSWORD=thankyou
110110
#TODO: REWRITE ABOVE, REWRITE THE HARDCODED DEPLOYMENT VALS INTO VALUES AND OVERRIDE THEM HERE!
111111
echo "default password is ${DEFAULT_PASSWORD}"
112-
helm upgrade --install mj ../helm/wrongsecrets-ctf-party --set="imagePullPolicy=Always" --set="balancer.env.K8S_ENV=aws" --set="balancer.env.REACT_APP_ACCESS_PASSWORD=${DEFAULT_PASSWORD}" --set="balancer.cookie.cookieParserSecret=thisisanewrandomvaluesowecanworkatit" --set="balancer.repository=jeroenwillemsen/wrongsecrets-balancer" --set="balancer.tag=0.87aws" --set="balancer.replicas=4" --set="wrongsecretsCleanup.repository=jeroenwillemsen/wrongsecrets-ctf-cleaner" --set="wrongsecretsCleanup.tag=0.2"
112+
helm upgrade --install mj ../helm/wrongsecrets-ctf-party --set="imagePullPolicy=Always" --set="balancer.env.K8S_ENV=aws" --set"balancer.env.IRSA_ROLE=arn:aws:iam::${ACCOUNT_ID}:role/wrongsecrets-secret-manager" --set="balancer.env.REACT_APP_ACCESS_PASSWORD=${DEFAULT_PASSWORD}" --set="balancer.cookie.cookieParserSecret=thisisanewrandomvaluesowecanworkatit" --set="balancer.repository=jeroenwillemsen/wrongsecrets-balancer" --set="balancer.tag=0.87aws" --set="balancer.replicas=4" --set="wrongsecretsCleanup.repository=jeroenwillemsen/wrongsecrets-ctf-cleaner" --set="wrongsecretsCleanup.tag=0.2"

aws/main.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ module "eks" {
8787
disk_type = "gp3"
8888
disk_throughput = 150
8989
disk_iops = 3000
90-
instance_types = ["t3a.large"]
90+
instance_types = ["t3a.xlarge"]
9191

9292
iam_role_additional_policies = [
9393
"arn:aws:iam::aws:policy/AmazonEKSWorkerNodePolicy",

helm/wrongsecrets-ctf-party/templates/wrongsecrets-balancer/deployment.yaml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,13 @@ spec:
5555
- name: K8S_ENV
5656
value: {{ .Values.balancer.env.K8S_ENV }}
5757
- name: IRSA_ROLE
58-
value: "arn:aws:iam::233483431651:role/wrongsecrets-secret-manager" #REPLACE WITH THE ACTUAL AWS ROLE IF IN AWS MODE
58+
value: {{ .Values.balancer.env.IRSA_ROLE }} #REPLACE WITH THE ACTUAL AWS ROLE IF IN AWS MODE
59+
- name: WRONGSECRETS_TAG
60+
value: {{ .Values.wrongsecrets.tag}}
61+
- name: SECRETS_MANAGER_SECRET_ID_1
62+
value: {{ .Values.balancer.env.SECRETS_MANAGER_SECRET_ID_1 }}
63+
- name: SECRETS_MANAGER_SECRET_ID_2
64+
value: {{ .Values.balancer.env.SECRETS_MANAGER_SECRET_ID_2 }}
5965
- name: COOKIEPARSER_SECRET
6066
valueFrom:
6167
secretKeyRef:

helm/wrongsecrets-ctf-party/values.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,9 @@ balancer:
6969
REACT_APP_S3_BUCKET_URL : 's3://funstuff'
7070
K8S_ENV: 'k8s' #oraws
7171
REACT_APP_ACCESS_PASSWORD: '' #DEFAULT NO PASSWORD, PLAYING THIS IN PUBLIC? PUT A FANCY STRING HERE, BUT BE GENTLE: USERS NEED TO BE ABLE TO COPY THAT STUFF...
72+
IRSA_ROLE: arn:aws:iam::233483431651:role/wrongsecrets-secret-manager
73+
SECRETS_MANAGER_SECRET_ID_1: 'wrongsecret'
74+
SECRETS_MANAGER_SECRET_ID_2: 'wrongsecret-2'
7275
metrics:
7376
# -- enables prometheus metrics for the balancer. If set to true you should change the prometheus-scraper password
7477
enabled: true
@@ -93,7 +96,7 @@ wrongsecrets:
9396
maxInstances: 500
9497
# -- Juice Shop Image to use
9598
image: jeroenwillemsens/wrongsecrets
96-
tag: 1.5.3-no-vault
99+
tag: 1.5.5-no-vault
97100
# -- Change the key when hosting a CTF event. This key gets used to generate the challenge flags. See: https://github.com/commjoen/wrongsecrets#ctf
98101
ctfKey: "[email protected]!9uR_K!NfkkTr"
99102
# -- Specify a custom Juice Shop config.yaml. See the JuiceShop Config Docs for more detail: https://pwning.owasp-juice.shop/part1/customization.html#yaml-configuration-file

wrongsecrets-balancer/src/kubernetes.js

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,9 @@ const k8sCustomAPI = kc.makeApiClient(CustomObjectsApi);
1616
const k8sRBACAPI = kc.makeApiClient(RbacAuthorizationV1Api);
1717
const k8sNetworkingApi = kc.makeApiClient(NetworkingV1Api);
1818
const awsAccountEnv = process.env.IRSA_ROLE || 'youdidnotprovideanirsarole,goodluck';
19+
const secretsmanagerSecretName1 = process.env.SECRETS_MANAGER_SECRET_ID_1 || 'wrongsecret';
20+
const secretsmanagerSecretName2 = process.env.SECRETS_MANAGER_SECRET_ID_2 || 'wrongsecret-2';
21+
const wrongSecretsContainterTag = process.env.WRONGSECRETS_TAG || '1.5.4-no-vault';
1922
const heroku_wrongsecret_ctf_url = process.env.REACT_APP_HEROKU_WRONGSECRETS_URL || 'not_ets';
2023

2124
const { get } = require('./config');
@@ -136,8 +139,7 @@ const createK8sDeploymentForTeam = async ({ team, passcodeHash }) => {
136139
containers: [
137140
{
138141
name: 'wrongsecrets',
139-
//TODO REPLACE HARDCODED BELOW WITH PROPPER GETS: image: `${get('wrongsecrets.image')}:${get('wrongsecrets.tag')}`,
140-
image: 'jeroenwillemsen/wrongsecrets:1.5.5RC1-no-vault',
142+
image: `jeroenwillemsen/wrongsecrets:${wrongSecretsContainterTag}`,
141143
imagePullPolicy: get('wrongsecrets.imagePullPolicy'),
142144
// resources: get('wrongsecrets.resources'),
143145
securityContext: {
@@ -285,8 +287,7 @@ const createAWSSecretsProviderForTeam = async (team) => {
285287
spec: {
286288
provider: 'aws',
287289
parameters: {
288-
objects:
289-
'- objectName: "wrongsecret"\n objectType: "secretsmanager"\n- objectName: "wrongsecret-2"\n objectType: "secretsmanager"\n',
290+
objects: `- objectName: "${secretsmanagerSecretName1}"\n objectType: "secretsmanager"\n- objectName: "${secretsmanagerSecretName2}"\n objectType: "secretsmanager"\n`,
290291
},
291292
},
292293
};
@@ -393,8 +394,7 @@ const createAWSDeploymentForTeam = async ({ team, passcodeHash }) => {
393394
containers: [
394395
{
395396
name: 'wrongsecrets',
396-
//TODO REPLACE HARDCODED BELOW WITH PROPPER GETS: image: `${get('wrongsecrets.image')}:${get('wrongsecrets.tag')}`,
397-
image: 'jeroenwillemsen/wrongsecrets:1.5.4-no-vault',
397+
image: `jeroenwillemsen/wrongsecrets:${wrongSecretsContainterTag}`,
398398
imagePullPolicy: get('wrongsecrets.imagePullPolicy'),
399399
// resources: get('wrongsecrets.resources'),
400400
securityContext: {

wrongsecrets-balancer/ui/src/pages/JoinPage.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,10 @@ export const JoinPage = injectIntl(({ intl }) => {
5252

5353
async function sendJoinRequest() {
5454
try {
55+
if(!teamname || teamname.length === 0){
56+
setFailed(true);
57+
return;
58+
}
5559
if (dynamics.enable_password) {
5660
const hmacvalue = cryptoJS
5761
.HmacSHA256(`${teamname}`, 'hardcodedkey')
@@ -207,7 +211,7 @@ export const JoinPage = injectIntl(({ intl }) => {
207211
<FormattedMessage id="password" defaultMessage="Password" />
208212
</Label>
209213
<Input
210-
type="text"
214+
type="password"
211215
id="password"
212216
data-test-id="password-input"
213217
name="password"

0 commit comments

Comments
 (0)