this post was submitted on 24 Feb 2025
419 points (100.0% liked)

Technology

67151 readers
3710 users here now

This is a most excellent place for technology news and articles.


Our Rules


  1. Follow the lemmy.world rules.
  2. Only tech related news or articles.
  3. Be excellent to each other!
  4. Mod approved content bots can post up to 10 articles per day.
  5. Threads asking for personal tech support may be deleted.
  6. Politics threads may be removed.
  7. No memes allowed as posts, OK to post as comments.
  8. Only approved bots from the list below, this includes using AI responses and summaries. To ask if your bot can be added please contact a mod.
  9. Check for duplicates before posting, duplicates may be removed
  10. Accounts 7 days and younger will have their posts automatically removed.

Approved Bots


founded 2 years ago
MODERATORS
top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 136 points 3 weeks ago (4 children)

I’ve been doing web development for something like 20 years now and I just can’t imagine how shitty your backend is if this is an issue.

[–] [email protected] 55 points 3 weeks ago (1 children)

This was my thought as well, sanitize your inputs! Are they not quoting/casting to string before input?

[–] [email protected] 50 points 3 weeks ago (4 children)

Unless you’re coding from scratch it’s hard to not do this with any modern framework.

[–] [email protected] 41 points 3 weeks ago (2 children)

Legacy systems still handle more traffic than modern ones, I’d wager

[–] [email protected] 5 points 3 weeks ago

And it's probably not seen as urgent enough an issue to need replacing the whole system for.

[–] [email protected] 4 points 3 weeks ago

any govt system.

[–] [email protected] 22 points 3 weeks ago (1 children)

Word press code, and plugins, do not sanitize out of the box. You have to call an additional function, each time, that is not provided automatically. Many home made plugins miss that; many popular plugins used to be home made ones

[–] [email protected] 15 points 3 weeks ago (7 children)

Wordpress is a sin against mankind.

[–] [email protected] 13 points 3 weeks ago* (last edited 3 weeks ago) (1 children)

Let's take a blog and slap a whole e-commerce system on it through a plugin and let it auto translate with another one, what could go wrong. wait why is everything so slow, oh i need additional plugins for caching and one more for functionality XYZ why is everything broken now?!?

Edit: Sorry, my app had a hiccup and posted my comment several times

[–] [email protected] 9 points 3 weeks ago

Maybe your app is based on WordPress :'D

[–] [email protected] 6 points 3 weeks ago

Yet here we are, it and the plugins handle too much of my daily traffic. It’s easy to dismiss the piss poor coding, but is done at our peril.

Everyone of us has personal data stored in those God awful plugins, in their thousands of basic security holes

load more comments (5 replies)
[–] [email protected] 13 points 3 weeks ago (1 children)

A couple years ago I wanted to write a simple website with SQL injection vulnerability, so I could demonstrate sqlmap to someone

It was surprisingly difficult (and every fiber in my body screamed)

[–] [email protected] 9 points 3 weeks ago

Imagine how hard it is to be this bad. Yet still people manage to do it.

[–] [email protected] 7 points 3 weeks ago* (last edited 3 weeks ago) (3 children)

Unless you’re coding from scratch it’s hard to not do this with any modern framework.

I think that word modern is doing a lot of heavy lifting there.

A lot of systems simply aren't modern. There's always that mentality of "well, it's been working for the last 12 years, let's not mess with it now", despite all the valid objections like "but it's running on Windows2000” or "it's a data breach waiting to happen"...

load more comments (3 replies)
[–] [email protected] 14 points 3 weeks ago

It happened to a friend who wasn't passing in the proper types into their stored procedures, all strings, and "null" (not case sensitive) conflicted with actual null values. Everything in the web interface were strings, and so was null.

For some people it takes this mistake before they learn to always care about the data types you're passing in.

[–] [email protected] 11 points 3 weeks ago

With LLM coding increasing, it might be going up. Idk am no pro, just worried.

Tangential, but I find it hilarious how Gemini's syntax fucks up all the time.

I ask it to change my light called "CX2" to red. It complies, like usual, and it reads Okay, changing "CX2" to red., but what it says out loud is Okay, changing "CX two inches to red.

[–] [email protected] 4 points 3 weeks ago (2 children)

As a backbend dev, I blame DBAs. We were forced to support CSV imports from out support team so they could fix data issues on their own, and now we have some wonky data in prod...

[–] [email protected] 4 points 3 weeks ago

Lately I’ve been dealing with tons of invalid byte sequences in MySQL dumps and it makes me question what the hell they’re allowing in there.

load more comments (1 replies)
[–] [email protected] 67 points 3 weeks ago (1 children)

I was NaN years old when I learned this.

[–] [email protected] 10 points 3 weeks ago* (last edited 3 weeks ago) (1 children)

It's funny because I also learned on [Object object].

[–] [email protected] 8 points 3 weeks ago (1 children)

And here I am at undefined years old, learning for the first time.

[–] And009 5 points 3 weeks ago

I'm a year old undefined and I find it [redacted]

[–] [email protected] 64 points 3 weeks ago (8 children)

/me changes name to '); DROP TABLE STUDENTS; --.

[–] [email protected] 42 points 3 weeks ago (1 children)
[–] [email protected] 4 points 3 weeks ago

That boy ain't right

[–] [email protected] 34 points 3 weeks ago

Oh. Yes. Little Bobby Tables, we call him.

load more comments (6 replies)
[–] [email protected] 62 points 3 weeks ago (6 children)

NULL != 'NULL'

How do devs make this mistake

[–] [email protected] 11 points 3 weeks ago

Code is easy in a vacuum. 50 moving parts all with their own quirks and insufficient testing is how you get stuff like this to happen.

[–] [email protected] 10 points 3 weeks ago* (last edited 3 weeks ago) (2 children)

How do devs make this mistake

it can happen many different ways if you're not explicitly watching out for these types of things

example let's say you have a csv file with a bunch of names

id, last_name
1, schaffer
2, thornton
3, NULL
4, smith
5, "NULL"

if you use the following to import into postgres

COPY user_data (id, last_name)
FROM '/path/to/data.csv'
WITH (FORMAT csv, HEADER true);

number 5 will be imported as a string "NULL" but number 3 will be imported as a NULL value. of course, this is why you sanitize the data (GIGO) but I can imagine this happening countless times at companies all over the country

there are easy fixes if you're paying attention

COPY user_data (id, last_name)
FROM '/path/to/data.csv'
WITH (FORMAT csv, HEADER true, NULL '');

sets the empty string to NULL value.


example with js

fetch('/api/user/1')
  .then(response => response.json())
  .then(data => {
    if (data.lastName == "null") {
      console.log("No last name found");
    } else {
      console.log("Last name is:", data.lastName);
    }
  });

if data is

data = {
  id: 5,
  lastName: "null"
};

then the if statement will trigger- as if there was no last name. that's why you gotta know the language you're using and the potential pitfalls

now you may ask -- why not just do

if (data.lastName === null)

instead? But what if the system you're working on uses JSON.parse(data) and that auto-converts everything to a string? it's a very natural move to check for the string "null"

obviously if you're paying attention and understand the pitfalls of certain languages (like javascript's type coercion and the particularities of JSON.parse()) it becomes easy but it's something that is honestly very easy to overlook

load more comments (2 replies)
[–] [email protected] 5 points 3 weeks ago
load more comments (3 replies)
[–] [email protected] 39 points 3 weeks ago (1 children)

My academic advisor in college was named Null

Even I kept running into trouble because the system thought I didn't have a registered advisor.

[–] [email protected] 27 points 3 weeks ago* (last edited 3 weeks ago) (4 children)

I have never seen this happen, and I don't know what tools would confuse the strings "null" or "Null" with NULL. From the comments in this thread, there are evidently more terribly programmed systems than I imagined.

[–] [email protected] 15 points 3 weeks ago

Shit happens, mistakes are sometimes made. Valve once had code that could delete your entire drive.

[–] [email protected] 13 points 3 weeks ago

I'm pretty sure at least some of the university's systems were designed by students.

[–] [email protected] 12 points 3 weeks ago (1 children)

As long as there's javascript somewhere, anything can happen

load more comments (1 replies)
load more comments (1 replies)
[–] [email protected] 26 points 3 weeks ago (1 children)

Lmao, I knew a guy from grade school with the last name Null.

load more comments (1 replies)
[–] [email protected] 25 points 3 weeks ago (1 children)

Knew a guy who had the license plate ‘NULL’ and he was telling me how he never got a toll bill or red light ticket.

[–] [email protected] 52 points 3 weeks ago (1 children)

The article talks about a guy with a “NULL” license plate who gets tons of tickets for things he didn’t do so probably not the best plan

[–] [email protected] 30 points 3 weeks ago (1 children)

Yep. For the curious, any time a license plate photo couldn’t be fully read by the automated system, it was marked as “NULL” and he was flagged as the driver. So every single red light camera and speeding camera in the area was sending him to court every day.

[–] [email protected] 19 points 3 weeks ago (2 children)

It got worse than this, the ticketing company really wanted to get the money from him so when he got hold of a copy of the records and pointed out that one ticket was for a completely different car they modified the records on their end to change the make of car so it would match his. iirc he only got out of it because he had paper copies.

[–] [email protected] 16 points 3 weeks ago

Isn't that falsifying legal documents? In many countries that would land you in jail? Am I wrong, did the people really run that risk?

[–] [email protected] 8 points 3 weeks ago (1 children)

Don't they have to prove it with a photograph? In GermanyI'd laugh in theirface withput a photograph as evidence.

[–] [email protected] 5 points 3 weeks ago

Hey AI can you swap this 2015 corolla with a green 2019 Mazda 2.

Keep the license plate the same!

And remember THERE ARE FOUR PASSENGER DOORS NOT 6

[–] [email protected] 24 points 3 weeks ago

How about XÆa-12? Asking for a friend.

[–] [email protected] 16 points 3 weeks ago

Ah yes, little Nell=%00\u0000'\0'""'0'0x000x30'';

Nellie Null we call her.

She and her cousin Bobby Tables love to scamper around, but they are good kids. They would never break anything intentionally

[–] [email protected] 11 points 3 weeks ago (6 children)
load more comments (6 replies)
[–] [email protected] 8 points 3 weeks ago

Mandatory xkcd:

[–] [email protected] 5 points 3 weeks ago* (last edited 3 weeks ago)

There is an infosec guy in California who had NULL as his car license plate. If a license-plate reader detects a ticketable event but the license plate is unreadable, guess how the system handles those events?

Infosec guy was not a happy bunny.

load more comments
view more: next ›