Bug: Site incorrectly parses character algorithms.
BotB Academy Bug Reports and Feature Requests
 
 
31345
Level 24 Chipist
Tilde
 
 
 
post #31345 :: 2013.08.19 12:24am
On Home, Arena, and Barracks pages, footer data is consistent. Most CSS fields return null, which is to be expected, even though it could use cleaning up. But take a look at the footer for the Lyceum page: It specially relies on locally-stored text data to determine its cellspacing. This is fine in theory, but those same fields carry the frame data for the entire site. The problem is this cookie:

< width: 109px; __display: none__; top: 112px; position: absolute; left: 1285px; >

(underscores added for emphasis)

This parameter doesn't show up anywhere else on the site, meaning that when BotB does overhead loading, it doesn't account for this unique call. It's essentially a ghost line. What this means is, when you submit an edit to the Lyceum, it'll usually show up client-side, but certain arguments will be reinterpreted by the display heap, which leads me to believe that many Lyceum edits never went through(this may account for why there's so little information on it...)

Lyceum entry field:
- Can't read code
- Won't render substrings
- Does not have copy protection

Meanwhile, static header variables are used for the entire site. This is a huge security problem. If you look at the IRCApplet, it connects directly to the server, making the HTML redundant. While this works for a MySQL database, Battle of the Bits runs on an interoperated FTP cloud, which needs some serious maintenance. You're probably not in danger of an SQL injection, but almost every text field ends up vulnerable when they all redirect to the same char array, and if they don't end up overflowing the stack, they'll just sink into an endless call loop. If puke is not willing to fix this, one good hacker could cause a DB format, which could theoretically detach the memory pointers for all mp3s, rendering them unlistenable.

What you could do instead is a script a quick node to match the Lyceum tables to the same CSS calls as the rest of the site. Instead of trying to parse character algorithms at all, just have it read the arguments from each page's Update() call. Or, skip the footer entirely and translate the Lyceum to Ruby, to work with the rest of the site. It's one thing to delegate a faux-wiki format to its own subpage, but you have to at least make sure it's an inherited class of whatever you're parenting the site to. That way, you have the same scripts being run the same way. As it is now, anyone savvy enough could (for example) use pre-existing level-up scripts to give themselves an instant 10 levels without anyone being notified. Or they could covertly bump up their vote numbers on their Summer Chip entry by inserting an int normally used for voting.

At the very least, don't keep a link to the IRC channel in the top frame. Esper.net uses unnecessary resources in order to ensure that it loads correctly every single time. You don't need to do a client-side check for default text rendering every time you open PJIRC. It hogs the site's resources and opens up vulnerabilities like the one I've outlined. The Barracks are barely held together as it is with its overuse of linked lists.

Basically -
1. Check the IRC footer's stack for unresolved Lyceum edits.
2. Make sure user input strings all have the same number of arguments.
3. Make sure mp3 pointers are all generated by the same class even when linked to by a Lyceum article.
4. Make it clear that users shouldn't download mariopants or any other developer zip until this is resolved.

I didn't even notice this until Rainwarrior drew my attention to the memory timeline(F12 if you're using Google Chrome, timeline tab). Notice it's completely blank on most pages.
 
 
31346
Level 31 Chipist
Strobe
 
 
 
post #31346 :: 2013.08.19 12:48am
Okay? :o that didn't make much sense.
 
 
31350
Level 25 Chipist
rainwarrior
 
 
 
post #31350 :: 2013.08.19 5:58am
I what? Memory timeline? What is this?
 
 
31360
Level 29 Hostist
puke7
 
 
 
post #31360 :: 2013.08.19 3:31pm
  
  mootbooxle and Tilde liēkd this
I will get right on all of this after I change the blinker fluid on my boss's car I've been borrowing for 2+ months.
 
 
31363
Level 24 Chipist
Tilde
 
 
 
post #31363 :: 2013.08.19 3:38pm
Thanks!
 
 
31364
Level 29 Mixist
goluigi
 
 
 
post #31364 :: 2013.08.19 4:54pm
  
  raphaelgoulart, xterm and mootbooxle liēkd this
strobe, your FACE doesn't make much sense
 
 
31368
Level 30 Mixist
mootbooxle
 
 
 
post #31368 :: 2013.08.19 11:01pm
  
  kleeder, raphaelgoulart, goluigi and xterm liēkd this
golgi ur mom doesn't make much sense
 
 
31370
Level 14 Chipist
ShadowScythe
 
 
post #31370 :: 2013.08.20 1:04am
  
  xterm, raphaelgoulart, goluigi and mootbooxle liēkd this
MAKE SENSE OF THIS [TODO: PUT LONG ASCII PENIS HERE]
 
 

LOGIN or REGISTER to add your own comments!