Author Topic: YASS (Yet Another Security Suite)  (Read 6310 times)

0 Members and 1 Guest are viewing this topic.

Offline lookitsan00b

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 173
  • Rating: +37/-3
    • View Profile
YASS (Yet Another Security Suite)
« on: December 15, 2010, 06:14:25 pm »
ok how many does this make it? :P

I just wanted to do it for the fun of it (and experience), but these are the features of SECURITE: (name subject to change)

 blocks APPS, PRGM, MEM, LINK, and CATALOG.
   why CATALOG? because that contains the Asm(prgm tokens, which can be used to re-run the program and reset the key.

 currently supports a 5 (or less) keypress 'string'. Could be longer (would actually only have to delete code ;) ), but it might be too easy to forget.
   Automatically disables security when the keystring is entered.
   Sorry, no [Enter] in the keystring. That is used to confirm it.

 Re-enables everything with [2nd][TBLSET] (thats on F2, for quick reference)
   What does that do anyways? :P
   If you really want TBLSET, just re-enable it and try again. TBLSET is enabled when the security is.

 Installs a raw key hook to appbackupscreen, so running virtually any ASM program will disable it...
   Hey, its not an app... (could use appvars... <- possible future update)
   Disables with any method that disables any raw key hook, only way I know of is PTT... (saved me the trouble of pulling batteries quite often earlier...)
   ↑↑↑ possible future update, blocking PTT
   are there any other methods of breaking a raw key hook?

 Virtually unbreakable with a good key, and followed by 'Clear Entries' (or 2.53MP and up scrolling up and manually deleting)
   Only way out I know of is PTT.
      Does that have a key value associated with it?

 size. that is its awesomeness factor. 170 bytes on-calc, and 229 on computer. Almost smaller than a one-line BASIC program!

I am having trouble with:
  displaying the prompt for the keystring. Oddly, I cannot get b_call(_puts) to work. :banghead:

I had trouble with:
  not initializing the keystring length. lol I almost posted about it working on wabbit but not on-calc :P

Edit:
wrote it from scratch today :P

PTT = Push to test, triggered by pressing ON while holding left and right arrows.
Compiled with 100% MIMAS 0.2.
« Last Edit: December 15, 2010, 06:21:38 pm by lookitsan00b »
My TI-94+SE is broken.  I used some flawed existential conditioning on it, and it crashed. :(

Activity level:
{====______}

Spoiler For Securite:
{=========_}

A couple security flaws
Need a good backdoor short of reinstalling the OS
Completely immobilized and invalidated by Zstart. And rendered incompatible.
Spoiler For FFTATIA:
{====______}

framework: mostly done
graphics engine: undergoing complete rewrite
still need character and enemy sprites!!! :P

Offline c.sprinkle

  • LV5 Advanced (Next: 300)
  • *****
  • Posts: 221
  • Rating: +23/-1
  • There ain't no rest for the wicked? True indeed.
    • View Profile
    • The Corread on NationStates.
Re: YASS (Yet Another Security Suite)
« Reply #1 on: December 15, 2010, 06:19:53 pm »
This is nice. I made a program that locks the calc so you have to enter a password when you turn it on. It has to have Start-Up to work, though. :( Here it is:

souvik1997

  • Guest
Re: YASS (Yet Another Security Suite)
« Reply #2 on: December 15, 2010, 06:21:40 pm »
The input for the bcall PutS is the pointer to the string to be dispayed in hl.

Example:
Code: [Select]
ld hl,Text
bcall PutS
ret

Text:
DB "TO BE DISPLAYED",0

Offline lookitsan00b

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 173
  • Rating: +37/-3
    • View Profile
Re: YASS (Yet Another Security Suite)
« Reply #3 on: December 15, 2010, 06:25:20 pm »
The input for the bcall PutS is the pointer to the string to be dispayed in hl.

Example:
Code: [Select]
ld hl,Text
bcall PutS
ret

Text:
DB "TO BE DISPLAYED",0


I know that. but it doesn't seem to be working:

Code: [Select]
LD HL,0
LD (penCol),HL
LD HL,StrGetKeys
BCALL PutS
...scrolls down to StrGetKeys...
StrGetKeys:
DB "Enter PassCode",0

It seems to do nothing most of the time, and spit out a tiny bit of garbage the rest of the time.
« Last Edit: December 15, 2010, 06:26:35 pm by lookitsan00b »
My TI-94+SE is broken.  I used some flawed existential conditioning on it, and it crashed. :(

Activity level:
{====______}

Spoiler For Securite:
{=========_}

A couple security flaws
Need a good backdoor short of reinstalling the OS
Completely immobilized and invalidated by Zstart. And rendered incompatible.
Spoiler For FFTATIA:
{====______}

framework: mostly done
graphics engine: undergoing complete rewrite
still need character and enemy sprites!!! :P

souvik1997

  • Guest
Re: YASS (Yet Another Security Suite)
« Reply #4 on: December 15, 2010, 06:27:01 pm »
It should be ld (curcol),hl ;(or currow, I don't remember exactly)

Offline lookitsan00b

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 173
  • Rating: +37/-3
    • View Profile
Re: YASS (Yet Another Security Suite)
« Reply #5 on: December 15, 2010, 06:28:54 pm »
well thats not what "Learn TI-83+ Assembly in 28 Days" had to say about it :P

I'll try curCol first...

EDIT: nope, its curRow :P
« Last Edit: December 15, 2010, 06:31:33 pm by lookitsan00b »
My TI-94+SE is broken.  I used some flawed existential conditioning on it, and it crashed. :(

Activity level:
{====______}

Spoiler For Securite:
{=========_}

A couple security flaws
Need a good backdoor short of reinstalling the OS
Completely immobilized and invalidated by Zstart. And rendered incompatible.
Spoiler For FFTATIA:
{====______}

framework: mostly done
graphics engine: undergoing complete rewrite
still need character and enemy sprites!!! :P

Offline Deep Toaster

  • So much to do, so much time, so little motivation
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 8217
  • Rating: +758/-15
    • View Profile
    • ClrHome
Re: YASS (Yet Another Security Suite)
« Reply #6 on: December 15, 2010, 06:42:40 pm »
Hmm, if it's at appBackUpScreen and an ASM program messes it up, wouldn't it cause the hook to run random data as code? That might get ugly.

Not sure if that's how it works, though.




Offline lookitsan00b

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 173
  • Rating: +37/-3
    • View Profile
Re: YASS (Yet Another Security Suite)
« Reply #7 on: December 15, 2010, 06:45:53 pm »
nope. the OS automatically checks the first byte to see if it is $83 before running it.

also, my previous post was #100000 :D
My TI-94+SE is broken.  I used some flawed existential conditioning on it, and it crashed. :(

Activity level:
{====______}

Spoiler For Securite:
{=========_}

A couple security flaws
Need a good backdoor short of reinstalling the OS
Completely immobilized and invalidated by Zstart. And rendered incompatible.
Spoiler For FFTATIA:
{====______}

framework: mostly done
graphics engine: undergoing complete rewrite
still need character and enemy sprites!!! :P

Offline Runer112

  • Moderator
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2289
  • Rating: +639/-31
    • View Profile
Re: YASS (Yet Another Security Suite)
« Reply #8 on: December 15, 2010, 06:46:30 pm »
This is like the second topic in the past 24 hours mimicking my raycaster's subject format! ;)


Regarding the topic at hand, I don't know much about hooks but I'll throw out a wild guess here. Is this problem possibly due to the same reason that PutS doesn't work in Apps? In which case the solution would be to use a PutC loop?

Another possible cause: Is your source code set to originate at the location the hook will exist in RAM? If not, StrGetKeys would be compiled to an incorrect value.
« Last Edit: December 15, 2010, 06:50:14 pm by Runer112 »

Offline Deep Toaster

  • So much to do, so much time, so little motivation
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 8217
  • Rating: +758/-15
    • View Profile
    • ClrHome
Re: YASS (Yet Another Security Suite)
« Reply #9 on: December 15, 2010, 06:50:31 pm »
nope. the OS automatically checks the first byte to see if it is $83 before running it.

also, my previous post was #100000 :D

Oh, right, forgot.

And nice :hyper:

* Deep Thought loses the Game because of its alt-text
« Last Edit: December 15, 2010, 06:50:36 pm by Deep Thought »




Offline lookitsan00b

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 173
  • Rating: +37/-3
    • View Profile
Re: YASS (Yet Another Security Suite)
« Reply #10 on: December 15, 2010, 09:59:19 pm »
This is like the second topic in the past 24 hours mimicking my raycaster's subject format! ;)


Regarding the topic at hand, I don't know much about hooks but I'll throw out a wild guess here. Is this problem possibly due to the same reason that PutS doesn't work in Apps? In which case the solution would be to use a PutC loop?

Another possible cause: Is your source code set to originate at the location the hook will exist in RAM? If not, StrGetKeys would be compiled to an incorrect value.

Well I thought it was a neat title, so I copied it. (and you weren't the only one working on a raycaster before squigetx's, mine works AND has a maze generation program attached :P)

The puts problem is fixed, I was setting penCol instead of curRow :P

Now I wonder: any way to detect kOn with b_call(_getkey) without the error message? I know kOn=0 in the current situation...

Oh, and you can now put kEnter in your keystring! The input is now terminated by On. (since that doesn't return anything anyways) it does throw an error, but don't worry, it won't interfere, and pushing either gives the same effect of successful installation.
« Last Edit: December 15, 2010, 10:05:26 pm by lookitsan00b »
My TI-94+SE is broken.  I used some flawed existential conditioning on it, and it crashed. :(

Activity level:
{====______}

Spoiler For Securite:
{=========_}

A couple security flaws
Need a good backdoor short of reinstalling the OS
Completely immobilized and invalidated by Zstart. And rendered incompatible.
Spoiler For FFTATIA:
{====______}

framework: mostly done
graphics engine: undergoing complete rewrite
still need character and enemy sprites!!! :P

Offline lookitsan00b

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 173
  • Rating: +37/-3
    • View Profile
Re: YASS (Yet Another Security Suite)
« Reply #11 on: December 16, 2010, 12:40:08 am »
I hate to double-post, even in my own topic but...

I have it creating an appvar (87 bytes + length(kStr)) and archiving it, deleting it if it already exists, all that. But I seem to lose it in the mess that is ROM, because when it ought to run the hook, it uninstalls it.

But wow: all this to get rid of occasional uninstall on APD, as well as enabling asm programs.

I had to add like 20 b_calls to get this working... wow.

I'm gonna try incrementing past entire pages now... see ya on the flip side :hyper: :hyper: :hyper:

EDIT: nope. grr what do I need to do to convert ChkFindSym to install_raw_key_hook?
My TI-94+SE is broken.  I used some flawed existential conditioning on it, and it crashed. :(

Activity level:
{====______}

Spoiler For Securite:
{=========_}

A couple security flaws
Need a good backdoor short of reinstalling the OS
Completely immobilized and invalidated by Zstart. And rendered incompatible.
Spoiler For FFTATIA:
{====______}

framework: mostly done
graphics engine: undergoing complete rewrite
still need character and enemy sprites!!! :P

Offline lookitsan00b

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 173
  • Rating: +37/-3
    • View Profile
Re: YASS (Yet Another Security Suite)
« Reply #12 on: December 16, 2010, 02:44:38 pm »
Well I realized that appvar + hook = fail.

It works nice in an app, because apps always begin at the start of a page. Not so with an appvar. This makes referencing them interesting.

Also, I forgot about SMC: that fails.

So how do I compile an app with Mimas (0.2 :P)? I can LDIR my keystring and length every keypress (before checking to block it)... It shouldn't take much time at all. (after all, the hook has already loaded the rom page)

Any 8xp -> 8xk converters that would make my job easier?
My TI-94+SE is broken.  I used some flawed existential conditioning on it, and it crashed. :(

Activity level:
{====______}

Spoiler For Securite:
{=========_}

A couple security flaws
Need a good backdoor short of reinstalling the OS
Completely immobilized and invalidated by Zstart. And rendered incompatible.
Spoiler For FFTATIA:
{====______}

framework: mostly done
graphics engine: undergoing complete rewrite
still need character and enemy sprites!!! :P

Offline yunhua98

  • You won't this read sentence right.
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2718
  • Rating: +214/-12
  • Go take a dive in the River Lethe.
    • View Profile
Re: YASS (Yet Another Security Suite)
« Reply #13 on: December 16, 2010, 02:47:46 pm »
wow, a triple post.  O.O  although it is outside of time limit.  could you send the appvar with the source and convert to a text file and compl to an APP and the comp?  or compile it to a 8xp, send to comp, use the ASM file unsquisher, copy and paste the Hex into Sourcecoder, and compile with Axe?  (yeah, complicated)

also, according to your sig, you have a TI-94 SE.  :o  :P

Spoiler For =====My Projects=====:
Minor setback due to code messing up.  On hold for Contest.
<hr>
On hold for Contest.


Spoiler For ===Staff Memberships===:






Have you seen any good news-worthy programs/events?  If so, PM me with an article to be included in the next issue of CGPN!
The Game is only a demo, the code that allows one to win hasn't been done.
To paraphrase Oedipus, Hamlet, Lear, and all those guys, "I wish I had known this some time ago."
Signature Last Updated: 12/26/11
<hr>

Offline lookitsan00b

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 173
  • Rating: +37/-3
    • View Profile
Re: YASS (Yet Another Security Suite)
« Reply #14 on: December 16, 2010, 04:47:35 pm »
what is this on-computer compiler you speak of ???
closest thing I have is wabbitsign.

EDIT: yeah that's actually been there a while. :P

EDIT2: then again, does Axe support Asm(prgmBLAHBLAH)? I gotta try ;)
« Last Edit: December 16, 2010, 05:19:41 pm by lookitsan00b »
My TI-94+SE is broken.  I used some flawed existential conditioning on it, and it crashed. :(

Activity level:
{====______}

Spoiler For Securite:
{=========_}

A couple security flaws
Need a good backdoor short of reinstalling the OS
Completely immobilized and invalidated by Zstart. And rendered incompatible.
Spoiler For FFTATIA:
{====______}

framework: mostly done
graphics engine: undergoing complete rewrite
still need character and enemy sprites!!! :P