Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Assess safety of website from liquid injections #2141

Closed
10 tasks done
Aveline-art opened this issue Aug 20, 2021 · 26 comments
Closed
10 tasks done

Assess safety of website from liquid injections #2141

Aveline-art opened this issue Aug 20, 2021 · 26 comments
Assignees
Labels
2 weeks inactive An issue that has not been updated by an assignee for two weeks Complexity: Large Feature: Refactor JS / Liquid Page is working fine - JS / Liquid needs changes to become consistent with other pages role: back end/devOps Tasks for back-end developers size: 2pt Can be done in 7-12 hours
Milestone

Comments

@Aveline-art
Copy link
Member

Aveline-art commented Aug 20, 2021

Overview

As a developer, we must investigate new potential sources of attack, so that we can defend against them.

Action Items

  • Read up on this article to understand liquid injections.
  • Investigate the sources of our various JSON data that will be displayed on our website.
  • Find out how easily it would be for an individual to inject html scripts into the JSON data either on purpose or by accident.
  • Conclude whether current measures are enough or if further action should be taken to escape data.
  • Look for other sources of external data besides JSON and investigate whether injections are possible.
  • Generate a report of your findings as a file in our drive (please put the link in this issue-comment).
    • The report must specify the files, and a copy of the vulnerable lines, if any.
    • It must also provide recommended changes to correct the vulnerability, if any.
  • If problems are found, write an issue for another developer to fix the code based on your recommendations.
    • If the fix is too big/complex for one issue, the issue you write should be for another developer instructing them to write an epic and figure out how to break down your recommendations into manageable issues.

Resources/Instructions

Inlining JSON in a Jekyll Liquid Template
escape – Liquid template language
data directory
#2139

@github-actions github-actions bot added Feature Missing This label means that the issue needs to be linked to a precise feature label. role missing size: missing labels Aug 20, 2021
@Aveline-art Aveline-art added Feature: Refactor JS / Liquid Page is working fine - JS / Liquid needs changes to become consistent with other pages role: back end/devOps Tasks for back-end developers Complexity: Large Ready for Prioritization and removed Feature Missing This label means that the issue needs to be linked to a precise feature label. role missing size: missing labels Aug 20, 2021
@ExperimentsInHonesty ExperimentsInHonesty added this to the 02. Security milestone Aug 25, 2021
@GLRJr GLRJr self-assigned this Sep 19, 2021
@SAUMILDHANKAR SAUMILDHANKAR added the size: 2pt Can be done in 7-12 hours label Mar 8, 2022
@tamara-snyder tamara-snyder self-assigned this Mar 18, 2022
@JessicaLucindaCheng

This comment was marked as resolved.

@tamara-snyder

This comment was marked as outdated.

@github-actions github-actions bot added the Status: Updated No blockers and update is ready for review label Mar 25, 2022
@tamara-snyder
Copy link
Member

Progress: I've read up on how Liquid injections can occur and located files where data is read from JSONs on the site and whether they use uri_escape. I still need to look through all the JSON data and gain a clearer understanding of how it is used on the site.
Blockers: None
Availability: 4 hours
ETA: April 10, 2022

@JessicaLucindaCheng

This comment was marked as resolved.

@tamara-snyder

This comment was marked as outdated.

@tamara-snyder
Copy link
Member

Progress: I've checked everywhere that JSON data is used on the site. Everything is covered by uri_escape except for a few spots, and it looks like those render data from an already escaped object (I plan on double-checking this because I'm a little confused right now). As far as I can tell from what I've been reading, since we're not dealing with any HTTP, there's not really any other way for an attack to get through. I'm definitely planning on doing more testing to be sure, though.
Blockers: Just a question: The only content in the external data folder appears to be JSON, which I've already checked. Is there anything else I should be looking for in regards to external data? Thank you!
Availability: 4 hours
ETA: Tuesday, April 12, 2022

@github-actions github-actions bot added 2 weeks inactive An issue that has not been updated by an assignee for two weeks and removed Status: Updated No blockers and update is ready for review labels Apr 15, 2022
@github-actions

This comment was marked as resolved.

@SAUMILDHANKAR SAUMILDHANKAR added To Update ! No update has been provided and removed 2 weeks inactive An issue that has not been updated by an assignee for two weeks labels Apr 16, 2022
@tamara-snyder
Copy link
Member

Progress: Just need to finish my write-up. Had some interviews this week, so I didn't have as much time to work on this issue as originally anticipated.
Blockers: None
Availability: 3 hours
ETA: Tuesday, April 19, 2022

@tamara-snyder tamara-snyder removed the To Update ! No update has been provided label Apr 17, 2022
@Sparky-code
Copy link
Member

Good Morning @tamara-snyder Write up looks good, I really don't know much about liquid so it was cool to learn some things. I added a couple comments that might be helpful for organization / clarification but over all, great job!

@github-actions github-actions bot added 2 weeks inactive An issue that has not been updated by an assignee for two weeks and removed Status: Updated No blockers and update is ready for review labels Apr 29, 2022
@github-actions
Copy link

@tamara-snyder

Please add update using the below template (even if you have a pull request). Afterwards, remove the 'To Update !' label and add the 'Status: Updated' label.

  1. Progress: "What is the current status of your project? What have you completed and what is left to do?"
  2. Blockers: "Difficulties or errors encountered."
  3. Availability: "How much time will you have this week to work on this issue?"
  4. ETA: "When do you expect this issue to be completed?"
  5. Pictures: "Add any pictures of the visual changes made to the site so far."

If you need help, be sure to either: 1) place your issue in the developer meeting discussion column and ask for help at your next meeting, 2) put a "Status: Help Wanted" label on your issue and pull request, or 3) put up a request for assistance on the #hfla-site channel.

You are receiving this comment because your last comment was before Tuesday, April 26, 2022 at 12:21 AM PST.

@tamara-snyder
Copy link
Member

tamara-snyder commented Apr 29, 2022

Progress: I need to make updates according to the feedback in the Google doc.
Blockers: None
Availability: Monday morning, 2 hours (traveling this weekend)
ETA: 05/03/2022

@github-actions github-actions bot added Status: Updated No blockers and update is ready for review and removed 2 weeks inactive An issue that has not been updated by an assignee for two weeks labels May 6, 2022
@github-actions github-actions bot added 2 weeks inactive An issue that has not been updated by an assignee for two weeks and removed Status: Updated No blockers and update is ready for review labels May 13, 2022
@github-actions
Copy link

@tamara-snyder

Please add update using the below template (even if you have a pull request). Afterwards, remove the 'To Update !' label and add the 'Status: Updated' label.

  1. Progress: "What is the current status of your project? What have you completed and what is left to do?"
  2. Blockers: "Difficulties or errors encountered."
  3. Availability: "How much time will you have this week to work on this issue?"
  4. ETA: "When do you expect this issue to be completed?"
  5. Pictures: "Add any pictures of the visual changes made to the site so far."

If you need help, be sure to either: 1) place your issue in the developer meeting discussion column and ask for help at your next meeting, 2) put a "Status: Help Wanted" label on your issue and pull request, or 3) put up a request for assistance on the #hfla-site channel.

You are receiving this comment because your last comment was before Tuesday, May 10, 2022 at 12:23 AM PST.

@tamara-snyder
Copy link
Member

@Sparky-code @JessicaLucindaCheng Thank you both for your feedback on this doc! I've edited it based on your comments and left a clarification question for Devin. Would love to get a re-review when you get the chance.

@Sparky-code
Copy link
Member

@tamara-snyder Sounds great, I'll take a look in the timeframe below
Avail: 1-2hrs
ETA: 5/18-19 EOD

@github-actions github-actions bot added Status: Updated No blockers and update is ready for review and removed 2 weeks inactive An issue that has not been updated by an assignee for two weeks labels May 20, 2022
@tamara-snyder
Copy link
Member

tamara-snyder commented May 20, 2022

@Sparky-code @JessicaLucindaCheng I believe I have resolved Devin's last comment. If you get a chance, a final review of the doc would be helpful. In the meantime, I can get to work writing the issues to make these fixes. Realistically, that will probably be done next week.

@Sparky-code
Copy link
Member

@tamara-snyder looks great! Reads very clearly now. 👍

@JessicaLucindaCheng
Copy link
Member

@tamara-snyder Sorry for the delay in reviewing your write up again. Everything looks good now. The write up is clear and concise. Good job.

@github-actions github-actions bot removed the Status: Updated No blockers and update is ready for review label Jun 3, 2022
@github-actions
Copy link

github-actions bot commented Jun 3, 2022

@tamara-snyder

Please add update using the below template (even if you have a pull request). Afterwards, remove the 'To Update !' label and add the 'Status: Updated' label.

  1. Progress: "What is the current status of your project? What have you completed and what is left to do?"
  2. Blockers: "Difficulties or errors encountered."
  3. Availability: "How much time will you have this week to work on this issue?"
  4. ETA: "When do you expect this issue to be completed?"
  5. Pictures: "Add any pictures of the visual changes made to the site so far."

If you need help, be sure to either: 1) place your issue in the developer meeting discussion column and ask for help at your next meeting, 2) put a "Status: Help Wanted" label on your issue and pull request, or 3) put up a request for assistance on the #hfla-site channel.

You are receiving this comment because your last comment was before Tuesday, May 31, 2022 at 12:19 AM PST.

@github-actions github-actions bot added the 2 weeks inactive An issue that has not been updated by an assignee for two weeks label Jun 3, 2022
@tamara-snyder
Copy link
Member

Progress: Just need to write the issues. Haven't had time this week and I'm traveling the next couple days, so will work on this next week.
Blockers: None
Availability: 3 hours
ETA: Friday, June 10, 2022

@github-actions github-actions bot added Status: Updated No blockers and update is ready for review and removed 2 weeks inactive An issue that has not been updated by an assignee for two weeks labels Jun 10, 2022
@tamara-snyder
Copy link
Member

tamara-snyder commented Jun 16, 2022

@github-actions github-actions bot removed the Status: Updated No blockers and update is ready for review label Jun 24, 2022
@github-actions
Copy link

@tamara-snyder

Please add update using the below template (even if you have a pull request). Afterwards, remove the 'To Update !' label and add the 'Status: Updated' label.

  1. Progress: "What is the current status of your project? What have you completed and what is left to do?"
  2. Blockers: "Difficulties or errors encountered."
  3. Availability: "How much time will you have this week to work on this issue?"
  4. ETA: "When do you expect this issue to be completed?"
  5. Pictures (optional): "Add any pictures of the visual changes made to the site so far."

If you need help, be sure to either: 1) place your issue in the developer meeting discussion column and ask for help at your next meeting, 2) put a "Status: Help Wanted" label on your issue and pull request, or 3) put up a request for assistance on the #hfla-site channel.

You are receiving this comment because your last comment was before Tuesday, June 21, 2022 at 12:20 AM PST.

@github-actions github-actions bot added the 2 weeks inactive An issue that has not been updated by an assignee for two weeks label Jun 24, 2022
@tamara-snyder
Copy link
Member

My issue has been reviewed, edited, and approved by two people, so I am closing this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
2 weeks inactive An issue that has not been updated by an assignee for two weeks Complexity: Large Feature: Refactor JS / Liquid Page is working fine - JS / Liquid needs changes to become consistent with other pages role: back end/devOps Tasks for back-end developers size: 2pt Can be done in 7-12 hours
Projects
Development

No branches or pull requests

7 participants