Asking the coders

Post a reply


This question is a means of preventing automated form submissions by spambots.
Smilies
:smile: :sad: :eek: :shock: :cool: :-x :razz: :oops: :evil: :twisted: :wink: :idea: :arrow: :neutral: :mrgreen:

BBCode is ON
[img] is ON
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: Asking the coders

Re: Asking the coders

by Flack » Wed Mar 19, 2025 12:20 pm

Microsoft Access has the ability to run VB scripts. The posted scenario would be as simple as setting up some sort of deadman's code. Put something in the database that checks for the coder's computer to be online once a week or something and if it fails, scramble the database. The hardest part of the entire thing is coding it in a way where it doesn't accidentally go off, like if the original coder changes machines or a network share goes offline which might trigger the code.

When I first started coding at work I would have a subroutine that checked for the existence of a file in my home directory and if it wasn't there, it wouldn't run. The original idea was that if I wanted to stop a bunch of scheduled scripts from running I could just remove or rename that file. But you could easily use the same idea to pull off the presented scenario.

Re: Asking the coders

by AArdvark » Sun Mar 16, 2025 10:07 am

Yes. book, fiction.

It mentioned that the character wrote the entire database program by himself. This makes me think it was before any large scale commercial software was available.

I'm sorry the horseshoe side gig didn't work out long term for you

Re: Asking the coders

by Tdarcos » Sun Mar 16, 2025 7:09 am

This new information changes things. He's not merely a programmer, he's probably chief programmer, and also a manager, quite likely equivalent to system manager or system administrator. He would have access or privileges greater than other people there.

I'm also not sure what he means by 'large company.' There are some metrics to go by, typically its annual sales exceeding some amount (today it's about US$10 million), in the 1970s it probably was 1 or 2 million) or about 300-500 employees. The type of computer you mention they were using still indicates a small company of probably less than 100 people. Beyond that, the person managing programmers in a large company is usually an administrator and almost certainly does not write programs themselves. (Of course, there are always exceptions.)

Also, the book makes a common mistake a lot of people still make, thinking technology is going to take away everyone's jobs. This has not happened, what has happened is the job changed. Consider the following:
  • The Automobile all but destroyed the entire set of horse-related occupations. Farriers¹, blacksmiths, stables, horse-breeders, horse farms, buggy-whip, saddle, and wagon makers, almost all eliminated (except for the very small number who cater to people who ride horses, horses used in farming and ranching (there are some hard-to-reach places where a horse or pack mule is more useful than, say, a Jeep with 4-wheel drive.)) What happened? The farrier's job was replaced with tire technician; blacksmith replaced by auto mechanic; stables by gas stations, garages and parking lots; horse farms, buggy-whip, saddle and wagon makers replaced by auto and truck manufacturers; horse breeders by car salesmen; plus additional people who produce the thousands of parts used to assemble an automobile or truck. Which do you think employs more people, the equuine industry or the automobile industry?
  • The Strowger automatic switch eliminated telephone operators. Which allowed people to dial their own calls and led the way to better switches, and eventually cellular telephony. We would never have had cell phones if calls could not be swapped from cell to cell automatically.
  • Automatic elevators eliminated elevator operators. This opened up more places to have elevators, requiring more elevator technicians.
  • Television eliminated a lot of live acting jobs as fewer plays are produced. But then there are lots more people doing all the things to make TV shows. Plus the local employees of over 7,000 TV stations and dozens of cable networks.
Technology has always caused the creation of even more jobs than the ones it replaced. The problem is it often requires new skills and retraining to do the new jobs. Which often means greater wages.

- - -
¹ A farrier is someone who makes horseshoes.

Re: Asking the coders

by Da King » Sat Mar 15, 2025 9:29 pm

Ice Cream Jonsey wrote: Fri Mar 14, 2025 8:02 am Someone correct me if I am wrong, but I don't think any kind of software repository system was necessarily invented until the 1990s? Video game companies just passed disks along to one another.
Like warezing at Herr Jonsey's?

Re: Asking the coders

by AArdvark » Sat Mar 15, 2025 6:39 pm

I feel that this subplot only had to be reasonably believable to advance the story and enhance the character's motivation.

Re: Asking the coders

by Casual Observer » Sat Mar 15, 2025 1:52 pm

RealNC wrote: Sat Mar 15, 2025 3:38 am It is possible, but he couldn't get away with it. The running instance of the software would be destroyed, sure, but the company still has copies of that software they could inspect after the incident and figure out what he did.

I mean, back in the MS-DOS days, if you copied a program from a floppy to a hard drive to run it, the floppy is still there.

Now if the live copy on the HDD was the only one to have that code in it, and it was never reinstalled by someone else, then yeah, this can make sense.

As for whether it's even possible from a programming perspective, absolutely. Backdoors in software have existed since the dawn of computing. Ken Thompson's "cc hack" is a classic famous one.
Maybe he could leave some malware that propagates across the network?

Re: Asking the coders

by AArdvark » Sat Mar 15, 2025 9:19 am

Thank you all for indulging my mild curiosity in this matter. Here's the excerpt from the book:

He could move from one computer language to another with total recall and no hesitation from Fortran to Pascal to COBOL to Basic to Ada but his preference was APL, the sophisticated language he had learned in the beginning, in 1974. He was able to see the shape of a whole program in his mind in any language, and could thus devise uniquely simple shortcuts. He had a knack for locating and eliminating the bugs in any program.

He knew he was lucky to be living during this brief period when these skills were rare and very marketable. Voice synthesis and computer-generated computer programs were going to render him, he believed, as obsolete as a hand-cranked adding machine.

But here and now, they had to keep him around and treat him nicely. He had young programmers working for him, constantly improving and expanding the usefulness of the huge data base of everyone who had ever evidenced any interest in the business, constantly devising new indexes and cross-references so that printouts based on almost any aspect could be ordered.

He knew the younger men who worked for him were good, but not good enough to ever come upon the secret program he had embedded well inside the main data-base program. It operated in real time, and would never begin to take effect unless he failed to access it with a sixteen-digit variable code on the first day of each month at noon. If he ever left under his own power with kindly feelings toward all, he could erase that secret program in minutes. If he was forced out, the program would begin to take effect the next time he missed typing in the code.

It was, he knew, a simple and a deadly way to destroy all the information in a data base. It was founded on random transitions. Once the destruct program began to take effect, it would look at first like some sort of simple microchip failure, but by the time they realized there was no way to backtrack to the original data, all the storage would have turned to garbage. All the names of all the contacts would print out in Lower Slobovian, and all the files and records of the Corporation would be meaningless.

Lately, however, he had begun to wonder if it wasn't a poor way to repay the kindnesses of the company by making his destruct signal so automatic. It wasn't really fair. Suppose one fine day he was run down by a madman in a pickup truck, or died of a sudden heart attack. The data base, product of his own skills and energies, the single essential factor in the company's financial health, would self-destruct. As he smiled benignly at the Sunday shoppers, he suddenly realized how he could send his destruct signal from afar. Some of his best programming ideas came to him with a stunning abruptness.

He could invent an unusual name and address. He could bury that imaginary person so deeply in the data-base program that it could hide there as a dreadful and elegant little trigger mechanism. It would come to life only when one of Martha MacBride's girls typed the new registrant on the terminal screen and sent it through for filing in the main data base. The more he thought about it, the better he liked it. Then if they ever threw him out, he need only mail in a card in that trigger name.

It needed very little refinement, he thought. And it would be a pleasant irony to use Bertha Aaron as the trigger name, giving her two strange middle initials to obviate the chance of any random duplication. Bertha Aaron of 246 State Street, Bridgewell, with the proper ZIP. And the great computer, with its in sectile sense of precision, would suicide the program only when that precise name and precise address were fed into its memory. Poor thing, that she had not lived long enough to see her adored son become a man of the world.

He decided to set it up this coming week, and dismantle the one that needed once-a-month attention to keep it from activating.

Re: Asking the coders

by Tdarcos » Sat Mar 15, 2025 3:39 am

AArdvark wrote: Thu Mar 13, 2025 5:11 pm set in the late 70/ early 80s... wrote the database software for a large company...stealing company funds... that if he ever gets fired ,,, the whole database will... turn... into garbage.
That would be either a backdoor, trojan or a virus, depending on how it was done.
AArdvark wrote: Thu Mar 13, 2025 5:11 pmI was wondering if this could have actually been possible.
TLDR: The answer is yes, it's possible, but no, not under the conditions described. If you're not interested in how and why it's both yes and no, skip the next 6 paragraphs.

Yes, depending on what language was being used. Since it mentions 8" floppies, this sounds more like a minicomputer, say a PDP 11/03 (I have used both myself); or some microcomputer.

Now, how a database could be done depends on what programming language was used. If Cobol, it would use random-access files; if Fortran, it would have used a file in random mode; if it was MU-Basic, it would have used one or more virtual files.

However, a "large company" almost certainly isn't going to use a minicomputer and not using 8" diskettes; the formatted capacity for one is around 256K (512K if double-sided). That's way too small. Even a 10 megabyte disk might be too small. And they'd have more than one programmer.

A 1970s-1980s company large enough to need a computer for, say, back-office operations (payroll, accounts receivable, accounts payable, inventory, etc.) is not going to use a minicomputer of those specifications. You usually use a computer because either the job is becoming too big to continue to be done manually, and/or it is cheaper to do through automation.

That means either a large minicomputer like a PDP 11/70, Hewlett-Packard 3000, or similar machines, or a mainframe like a PDP 10 or DECSystem/20, an IBM 360 or 370, or something from the "seven dwarves", the smaller mainframe manufacturers who competed against IBM: Burroughs, Control Data Corporation, General Electric, Honeywell, NCR, RCA, and UNIVAC. In that case, the company would have had one or more "massive" 100 megabyte disc drives, and 1/2" tape reels in the standard 10" reel with 2400 feet of tape and holding up to 60 megabytes. Also, they would have had regular backups and multiple programmers, he might not have had access to everything.

So while what is described is possible, it's not going to happen at a large company (300-500 or more employees). At a small company (less than 25 employees) or medium sized (25-300 to 500 employees, yes, it is possible. Those are small enough to use a mini using a 10 meg disk and 8" floppies, and only have 1 programmer.
AArdvark wrote: Thu Mar 13, 2025 5:11 pmI kind of could understand how the program could check to see if the name entered into the database matches the self-destruct key word but it sounds too easy. Maybe if the name is spelled a non standard way or something?
Even simpler way: check if his name or SSN is deleted from the payroll, or has not been issued a check in over 30 days.

Re: Asking the coders

by RealNC » Sat Mar 15, 2025 3:38 am

It is possible, but he couldn't get away with it. The running instance of the software would be destroyed, sure, but the company still has copies of that software they could inspect after the incident and figure out what he did.

I mean, back in the MS-DOS days, if you copied a program from a floppy to a hard drive to run it, the floppy is still there.

Now if the live copy on the HDD was the only one to have that code in it, and it was never reinstalled by someone else, then yeah, this can make sense.

As for whether it's even possible from a programming perspective, absolutely. Backdoors in software have existed since the dawn of computing. Ken Thompson's "cc hack" is a classic famous one.

Re: Asking the coders

by Ice Cream Jonsey » Fri Mar 14, 2025 2:46 pm

For a book this is all very reasonable!

Re: Asking the coders

by AArdvark » Fri Mar 14, 2025 1:48 pm

It's a fictional company that the character is siphoning money out of. The character's old safeguard was to reset an internal countdown clock once a month or the entire program would scramble itself into meaningless ones and zeros. His new idea, if he wanted to cover his embezzlement, was to mail the company a registration card in the name of the kill-code. When a secretary types in the name on the card the program self destructs.

I guess the book author had never heard of backups. Or quality assurance audits. I'll copy the section out of the book and post it here

Re: Asking the coders

by Ice Cream Jonsey » Fri Mar 14, 2025 8:02 am

AArdvark wrote: Thu Mar 13, 2025 5:11 pm He devises a secret computer routine hidden in the software so that
If there was obscurity here and it was the 1980s, I guess. Someone correct me if I am wrong, but I don't think any kind of software repository system was necessarily invented until the 1990s? Video game companies just passed disks along to one another. Maybe they kept a copy on a central hard drive. Right now if you work at a company, you can look up the source code to any repository you have access to. But back then, maybe.
if he ever gets fired or caught all he has to do is enter a particular name into the database (or have someone else inadvertently enter the name)
Sure. There is the concept of a SQL trigger. If you read this, you'll know more about SQL than the wealthiest Nazi to ever live.
and the whole database will initiate a random substitution virus and turn the entire program into garbage.
Hmmm. So a SQL trigger could corrupt a database, I guess, but I don't know if it could destroy the underlaying program that calls it? Since you mentioned that the program was on floppies, it would be easier if the guy got fired to get someone to put a giant magnet into the server room.

None of what is described is crazy. I don't think a kill switch like described necessarily happened, but it's more feasible than this scene in The Matrix.

Re: Asking the coders

by Da King » Thu Mar 13, 2025 9:53 pm

I have never done such a thing. (Of course, I've only worked in the same place for 37 years now, so I'm sure my code would have been outdated by now anyways).

HOWEVER... one of my favorite work stories... I was working on something once, and DETESTED how we were told to do it. It was 100% the wrong approach, and was going to eventually cause us more headaches than it resolved. I littered that code with comments explaining why it was all wrong and bad and how I didnt endorse it.

I eventually moved off that project to something else, but a couple years later, a friend of mine who was working in that same code started chatting me up, and told me about how he ran across all my comments, and told me I was 100% right and how much time they spent refactoring the code to make it work "correctly". The time I put into those comments was well spent.

Which leads me to another favorite story. I used to work with a guy who was a big Star Trek fan. Someone pissed him off at work one day, and I think he knew he was going to get fired, so he went thru a bunch of his programs and started renaming all of his variables to Star Trek references. I never saw the code myself, but apparently it ran fine, but was damn near unmaintainable because none of the variables made sense to anyone.

Ah the good old days.

This does not answer your question about manipulating programs, but I'd guess it can be done. I dont see why not. I think I could sabotage stuff if I wanted. Which I do not. Because 37 years.

Re: Asking the coders

by Casual Observer » Thu Mar 13, 2025 9:08 pm

This just happened, someone convicted for this.

https://www.bleepingcomputer.com/news/s ... s-systems/

Re: Asking the coders

by Jizaboz » Thu Mar 13, 2025 6:45 pm

Interesting! I suppose in theory it could work, but not in the "bobby tables" sense exactly. The reason being that the database software is completely fictional; so the possibilities are endless.

A more common tactic (one actually mentioned in many IT company contracts) is the "time bomb". Basically, you have a program or script that runs constantly in the background on any major system. It quite possibly exists within software you wrote yourself. This program has a "cron" or other sort of clock/calendar system which basically says "If I don't get any input from the person that knows how to find me within X time duration, I destroy everything in the system."

That's my take, but I bet Commander TDarcos could write a small novel on the subject.

Asking the coders

by AArdvark » Thu Mar 13, 2025 5:11 pm

I was reading a book set in the late 70/ early 80s. In a subplot, a computer programmer who wrote the database software for a large company is secretly stealing company funds and moving them into an offshore account. He devises a secret computer routine hidden in the software so that if he ever gets fired or caught all he has to do is enter a particular name into the database (or have someone else inadvertently enter the name) and the whole database will initiate a random substitution virus and turn the entire program into garbage. It was mentioned that he was using 8 inch floppies and a new state-of-the-art 10 meg hard drive. I was wondering if this could have actually been possible. I kind of could understand how the program could check to see if the name entered into the database matches the self-destruct key word but it sounds too easy. Maybe if the name is spelled a non standard way or something?

THE
HANGING UP
AND LISTENING NOW
AARDVARK

Top