Managing OPA

OPA is a general-purpose policy engine that let’s you offload decisions from your service. To do so, OPA needs to have access to policies and data that it can use to make decisions.

Prior to v0.8, OPA only exposed low-level HTTP APIs that let you push policy and data into the engine. With v0.8, we’re excited to provide new management features in OPA which make it easier to distribute policies (and data) as well as monitor the health of your agents.

Read More

Meet Gloo, the ‘Function Gateway’ That Unifies Legacy APIs, Microservices, and Serverless

Most enterprises still have monolithic applications, but many are exploring the use of microservices. The monoliths are accessible via APIs and monitored by the traditional application performance management (APM) tools, with deep dives provided by Splunk and other log investigation tools. With microservices — usually, run on platforms such as Kubernetes or Cloud Foundry — monitoring is usually done through tools such as Prometheus (scalable monitoring) and Open Tracing (transactional logging).

Read More

More L337 Translations

More L337 Translations

Image
bash

Dave Taylor
Thu, 04/19/2018 – 09:20

Dave continues with his shell-script L33t translator.

In my last
article
, I talked about the inside jargon of hackers and computer geeks
known as “Leet Speak” or just “Leet”. Of course, that’s a shortened version
of the word Elite, and it’s best written as L33T or perhaps L337 to be
ultimately kewl. But hey, I don’t judge.

Last time I looked at a series of simple letter substitutions that allow
you to
convert a sentence like “I am a master hacker with great
skills” into something like this:


I AM A M@ST3R H@XR WITH GR3@T SKILLZ

It turns out that I missed some nuances of Leet and didn’t realize that
most often the letter “a” is actually turned into a “4”, not
an “@”, although as with just about everything about the jargon,
it’s somewhat random.

In fact, every single letter of the alphabet can be randomly tweaked and
changed, sometimes from a single letter to a sequence of two or three
symbols. For example, another variation on “a” is “/-” (for
what are hopefully visually obvious reasons).

Continuing in that vein, “B” can become “|3”, “C” can become “[“,
“I” can become “1”, and one of my favorites, “M” can
change into “[]V[]”. That’s a lot of work, but since one of the
goals is to have a language no one else understands, I get it.

There are additional substitutions: a word can have its trailing “S”
replaced by a “Z”, a trailing “ED” can become
“‘D” or just “D”, and another interesting one is that words
containing “and”, “anned” or “ant” can have that
sequence replaced by an ampersand (&).

Let’s add all these L337 filters and see how the script is shaping up.

But First, Some Randomness

Since many of these transformations are going to have a random element,
let’s go ahead and produce a random number between 1–10 to figure
out whether to do one or another action. That’s easily done with the
$RANDOM variable:


doit=$(( $RANDOM % 10 ))       # random virtual coin flip

Now let’s say that there’s a 50% chance that a -ed suffix is going
to change to “‘D” and a 50% chance that it’s just going to become
“D”, which is coded like this:


if [ $doit -ge 5 ] ;  then
  word="$(echo $word | sed "s/ed$/d/")"
else
  word="$(echo $word | sed "s/ed$/'d/")"
fi

Let’s add the additional transformations, but not do them every time.
Let’s give them a 70–90% chance of occurring, based on the transform
itself. Here are a few examples:


if [ $doit -ge 3 ] ;  then
  word="$(echo $word | sed "s/cks/x/g;s/cke/x/g")"
fi

if [ $doit -ge 4 ] ;  then
  word="$(echo $word | sed "s/and/&/g;s/anned/&/g;
     s/ant/&/g")"
fi

And so, here’s the second translation, a bit more sophisticated:


$ l33t.sh "banned? whatever. elite hacker, not scriptie."
B&? WH4T3V3R. 3LIT3 H4XR, N0T SCRIPTI3.

Note that it hasn’t realized that “elite” should become L337 or
L33T, but since it is supposed to be rather random, let’s just leave this
script as is. Kk? Kewl.

If you want to expand it, an interesting programming problem is to break
each word down into individual letters, then randomly change lowercase to
uppercase
or vice versa, so you get those great ransom-note-style WeiRD LeTtEr
pHrASes.

Next time, I plan to move on, however, and look at the great command-line
tool youtube-dl, exploring how to use it to download videos and even
just the audio tracks as MP3 files.

Read More

Linux Administration – News and Blog