Skip to content

Instantly share code, notes, and snippets.

View praseodym's full-sized avatar
:shipit:
ship it

Mark Janssen praseodym

:shipit:
ship it
View GitHub Profile
diff --git a/roles/bootstrap-os/tasks/bootstrap-debian.yml b/roles/bootstrap-os/tasks/bootstrap-debian.yml
index aec6d78b..e16b9c6e 100644
--- a/roles/bootstrap-os/tasks/bootstrap-debian.yml
+++ b/roles/bootstrap-os/tasks/bootstrap-debian.yml
@@ -59,9 +59,17 @@
when:
- need_bootstrap.rc != 0
-# Workaround for https://github.com/ansible/ansible/issues/25543
-- name: Install dbus for the hostname module
@praseodym
praseodym / psp-clusterroles.yaml
Last active May 12, 2019 19:01
Kubernetes PodSecurityPolicy configuration
---
kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: psp-safe
rules:
- apiGroups: ['policy']
resources: ['podsecuritypolicies']
verbs: ['use']
resourceNames:
@praseodym
praseodym / openctf2018_24.md
Last active September 3, 2018 21:20
OpenCTF 2018: Challenge 24 (Nightmare-50)

OpenCTF 2018: Challenge 24 (Nightmare-50)

Challenge text:

Nightmare-50 50 ---
Automated home work scoring my ass. https://shades-of-nightmare.openctf.com/nzpoixyucvkjwnerntasdfascdvasdfqwerqwe/nightmare-50/ 

This website hosts a 'homework grading' application as an Xterm.js/Gotty webapp:

#!/bin/bash
set -ex
sudo sysctl -w vm.max_map_count=262144
docker rm -f es1 || true
docker rm -f es2 || true
docker network inspect es || docker network create es
docker run -d --rm --name es1 --net es -e discovery.zen.ping.unicast.hosts=es2 -p 127.0.0.1:9200:9200 docker.elastic.co/elasticsearch/elasticsearch:6.4.0
docker run -d --rm --name es2 --net es -e discovery.zen.ping.unicast.hosts=es1 -p 127.0.0.1:9201:9200 docker.elastic.co/elasticsearch/elasticsearch:6.4.0
@praseodym
praseodym / openctf2018_8.md
Created August 12, 2018 18:34
OpenCTF 2018: Challenge 8 (yodawg.jpg)

OpenCTF 2018: Challenge 8 (yodawg.jpg)

Challenge text:

yodawg.jpg 50 ---
steghide was found on the hackers computer.  https://scoreboard.openctf.com/yodawg.jpg-a5f90bcb58c65886c8b40623ad5bf73ae62545bc

This file is a tar.gz containing yodawg.jpg. From the hint we know that the steghide tool was used hide another file in this jpg. steghide needs a passphrase; the jpg file happens to represent the flag of Gabon and Gabon was indeed the passphrase used to hide the data:

apiVersion: v1
kind: PersistentVolume
metadata:
annotations:
pv.kubernetes.io/bound-by-controller: "yes"
pv.kubernetes.io/provisioned-by: local-volume-provisioner-k8s-01-2bb98394-3734-11e7-956b-00505699a646
volume.alpha.kubernetes.io/node-affinity: '{"requiredDuringSchedulingIgnoredDuringExecution":{"nodeSelectorTerms":[{"matchExpressions":[{"key":"kubernetes.io/hostname","operator":"In","values":["k8s-01"]}]}]}}'
creationTimestamp: 2017-07-02T17:16:17Z
name: local-pv-87b4a99e
resourceVersion: "11478333"
@praseodym
praseodym / hubot.service
Last active May 10, 2017 15:39
Hubot systemd service file
[Unit]
Description=Hubot
Requires=network.target
After=network.target
[Service]
Type=simple
WorkingDirectory=/opt/hubot
User=hubot

Keybase proof

I hereby claim:

  • I am praseodym on github.
  • I am praseodym (https://keybase.io/praseodym) on keybase.
  • I have a public key ASCsOdUAXuPHsb-oDVWoG5RfjSzbwP_or4y2FnmFX9tHIQo

To claim this, I am signing this object:

@praseodym
praseodym / Sample.java
Last active October 7, 2016 19:21
Flux.sample() behaviour in reactor-core 3.0.2.RELEASE
package io.pivotal.literx;
import org.junit.Test;
import reactor.core.publisher.Flux;
public class Sample {
@Test
public void sample() {
Flux<Integer> flux = Flux.just(1, 2, 3);
flux.log().sampleMillis(1000).subscribe(a -> System.out.println("Subscribe: " + a));
package reactor.core;
import org.junit.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import reactor.core.publisher.ConnectableFlux;
import reactor.core.publisher.Flux;
import reactor.core.scheduler.Schedulers;
import reactor.test.TestSubscriber;