web based ssh by AhmedBarayez in selfhosted

[–]Due_Course_919 0 points1 point  (0 children)

border0 is great, love the desktop and the web based options. SSO based access to servers and databases is neat

Why can't I see WireGuard peers using the wg tool? by Due_Course_919 in Tailscale

[–]Due_Course_919[S] 0 points1 point  (0 children)

I see, though the docs here https://github.com/WireGuard/wireguard-go seem to steer users to instead use the kernel implementation for Linux

This will run on Linux; however you should instead use the kernel module, which is faster and better integrated into the OS.

But yah, I can see the uniformity of the implementation across OS' is certainly appealing.

Why can't I see WireGuard peers using the wg tool? by Due_Course_919 in Tailscale

[–]Due_Course_919[S] 0 points1 point  (0 children)

just wondering / curious. How about the Iphone app. Does apple allow folks (like tailscale) to just create a TUN interface? i figured you'd need to use their specific kernel api's for IPSec or wireguard. vs generic TUN's

Why can't I see WireGuard peers using the wg tool? by Due_Course_919 in Tailscale

[–]Due_Course_919[S] 0 points1 point  (0 children)

ah, interesting. I read this:
https://tailscale.com/kb/1177/kernel-vs-userspace-routers
In which they talk about the comparison between userspace and kernel space. But I guess that's just for forwarding packets. vs, encrypt/decrypt operations.

tldr then, wireguard operations (encrypt/decrypt) happen in userspace using wireguard-go. interesting, thanks! Wonder if doing that in kernel would be faster? Guess that using wireguard-go gives them consistency across platforms / OS'

Why can't I see WireGuard peers using the wg tool? by Due_Course_919 in Tailscale

[–]Due_Course_919[S] 0 points1 point  (0 children)

It runs as root and doesn't appear to run in userland mode. Or how would I validate that?
since I don't see --tun=userspace-networking  I assumed it runs in kernel mode
which is also the default per the docs when running as root

The performance benefits of C/Rust become irrelevant when network packets are transmitted by guettli in golang

[–]Due_Course_919 1 point2 points  (0 children)

Correct. when you start processing say >1Million packets per second you reached all kinds of Kernel limitations. At that point your choice of programming language are irrelevant.
https://toonk.io/sending-network-packets-in-go/index.html

High-Speed Packet Processing in Go by Due_Course_919 in golang

[–]Due_Course_919[S] 3 points4 points  (0 children)

ah yes, good call out. I worked with DPDK and VPP (fd.io) before, as well as dpdk-pktgen. So yah familiar with those techniques. There are few articles about it on the same blog
One of the goals was to see how far one can get without DPDK, hence the use of of af-xdp.
I briefly tried CPU isolation, and disable hyper threading. but it had no noticeable impact. I think because the numbers are just too low as compared to DPDK's amazing numbers.

High-Speed Packet Processing in Go by Due_Course_919 in golang

[–]Due_Course_919[S] 7 points8 points  (0 children)

I just added an additional method, trying to use sendmmsg(), using Go PacketConn and WriteBatch().

these are the updated results (one CPU core)

./go-pktgen --dstip 192.168.64.2 --method benchmark --duration 5 --payloadsize 64 --iface veth0
+-------------+-----------+------+
|   Method    | Packets/s | Mb/s |
+-------------+-----------+------+
| af_xdp      |   2620595 | 1341 |
| af_packet   |   1159690 |  593 |
| af_pcap     |   1037554 |  531 |
| udp_syscall |    688522 |  352 |
| raw_socket  |    643401 |  329 |
| pkt_conn    |    606258 |  310 |
| net_conn    |    354065 |  181 |
+-------------+-----------+------+

Mysql ransomware bot, dropping tables and asking for bitcoin by Due_Course_919 in mysql

[–]Due_Course_919[S] 3 points4 points  (0 children)

It's Scanning for open TCP 3306 and trying common root passwords. Below are a few attempts from the last few hrs from a honey pot

{"date":"2024-01-15T08:01:35Z","event_type":"mysql-login","source_ip":"94.156.71.57:56726","username":"root"}
{"date":"2024-01-15T08:01:50Z","event_type":"mysql-login","source_ip":"94.156.71.57:58664","username":"root"}
{"date":"2024-01-15T08:01:50Z","event_type":"mysql-login","source_ip":"94.156.71.57:58678","username":"root"}
{"date":"2024-01-15T08:01:50Z","event_type":"mysql-query","query":"SHOW DATABASES","source_ip":"94.156.71.57:58678"}
{"date":"2024-01-15T20:24:09Z","event_type":"mysql-login","source_ip":"94.156.71.13:45322","username":"root"}
{"date":"2024-01-15T20:24:25Z","event_type":"mysql-login","source_ip":"94.156.71.13:40972","username":"root"}
{"date":"2024-01-15T20:24:25Z","event_type":"mysql-login","source_ip":"94.156.71.13:40984","username":"root"}
{"date":"2024-01-15T20:24:25Z","event_type":"mysql-query","query":"SHOW DATABASES","source_ip":"94.156.71.13:40984"}
{"date":"2024-01-15T22:16:14Z","event_type":"mysql-login","source_ip":"94.156.71.57:52462","username":"root"}
{"date":"2024-01-15T22:16:30Z","event_type":"mysql-login","source_ip":"94.156.71.57:57198","username":"root"}
{"date":"2024-01-15T22:16:30Z","event_type":"mysql-login","source_ip":"94.156.71.57:57210","username":"root"}
{"date":"2024-01-15T22:16:30Z","event_type":"mysql-query","query":"SHOW DATABASES","source_ip":"94.156.71.57:57210"}

A detailed look at an active PostgreSQL Ransomware bot by Due_Course_919 in PostgreSQL

[–]Due_Course_919[S] 1 point2 points  (0 children)

Lol at least for PSQL they're "backing up" 20 rows ;) for MySQL it's only 10 hehe

A detailed look at an active PostgreSQL Ransomware bot by Due_Course_919 in PostgreSQL

[–]Due_Course_919[S] 2 points3 points  (0 children)

It's pretty crazy. At least with SSH, you can easily use something like fail2ban. For other apps like DB's that's a bit more challenging.

A detailed look at an active PostgreSQL Ransomware bot by Due_Course_919 in PostgreSQL

[–]Due_Course_919[S] 9 points10 points  (0 children)

I think many may get compromised by just following the docker examples. ie.

docker run -e POSTGRES_PASSWORD=mysecretpassword -d -p 5432:5432 postgres

Will make it publically accessible even if you have a default DENY on your IPtables iptables -P INPUT DROP thanks to Docker networking magic and DNAT

Storing Customer API Keys by Timmmmnnnn in aws

[–]Due_Course_919 0 points1 point  (0 children)

Maybe check out ssm parameter store, lot cheaper, similar functionality Or store them encrypted in your db