art assignment class 6

Art Lesson Categories

art assignment class 6

Chalk Flowers Art Project – 2 Ways

Chalk is an underused art medium. Too dusty. Too messy. High maintenance. And spraying? Forget it. But with these chalk flowers… I say ignore the bad rap and go for it. Chalk pastels,... Learn More

art assignment class 6

Geometric Hearts | Valentine’s Day Project

Learning how to connect the dots to form lines looks easier than it really is. That is not to say that this project is difficult, but it is best for... Learn More

art assignment class 6

Martin Luther King Jr. Portrait Art Project

Few figures in American history inspire hope in the human spirit quite like civil rights activist, Martin Luther King Jr. His iconic I Have a Dream speech outlined his hopes... Learn More

art assignment class 6

Recycled Tropical Fish Earth Day Project

Have some cardboard lying around? Of course, you do! I make it a point to keep a stack of trimmed cardboard pieces to use in the art room. I find... Learn More

art assignment class 6

Winter Tree Silhouette Art Project

I grew up in a rural area of Prince Edward Island where the land is basically flat with just a few hills. Perfect for cross country skiing. My bestie, Leslie... Learn More

winter tree silhouette landscape using pan watercolors for kids

Winter Folk Art Trees

These Folk Art Trees created with wintery colors is a quick and easy art project to do when days are cold and short. Packed with art standards, this 60-minute project... Learn More

Winter Folk Art Trees | Easy art lesson for kids using marker and watercolor to make colorful simple winter trees

Student Milestones in Art | Middle School

Over and over again, I have been asked, “how do you choose the right lesson for the grade level?” This can be one of the hardest things about lesson planning.... Learn More

art assignment class 6

Just Add Glitter | Simple Bird Project

When a book speaks to you in a very personal — and glittery — way, you know that creating a coordinated art project is of utmost importance. The lovely Angela... Learn More

Just Add Glitter Bird | Easy holiday art project for kids

How to Make a Papel Picado | Mexican Folk Art

TRADITIONAL MEXICAN PAPEL PICADO Papel picado is a traditional Mexican craft that features colorful paper sheets with intricate cut-out details. It was made by stacking many sheets of paper and... Learn More

art assignment class 6


Deep Space Sparkle, 2024

The {lesson_title} Lesson is Locked inside of the {bundle_title}

Unlocking this lesson will give you access to the entire bundle and use {points} of your available unlocks., are you sure, the {bundle_title} is locked, accessing this bundle will use {points} of your available unlocks., to unlock this lesson, close this box, then click on the “lock” icon..

27 Art Activities and Lessons to Try at Home

art assignment class 6

Art Education and the Coronavirus (COVID-19)

In the current situation of the widespread transmission of COVID-19 , the hands of educators are tied. Knowing schools could be the first places to shut down, we’re waiting to see what’s expected of us. Will schools close? What happens if my school closes? Do I need to prepare for virtual learning? What if my students don’t have access to the internet or technology? How do I teach when students have limited access to art materials at home?

These are all questions that have probably been on the top of your mind in recent weeks. We don’t have the answers to all of these things, but we do know that trying to keep some normalcy in the routines of the art room at home is going to be a challenge.

The approach to this situation is not going to be one-size-fits-all. Every single art teacher has a unique situation and different student body they are trying to reach. Keeping that in mind, you, as the educator, will have to develop ways to plan and facilitate learning in a way that meets your specific situation. To help ease the pain of trying to figure out what to teach to your students at home, we’ve created a list of ideas to help inspire your planning. As you look at these ideas, keep in mind the circumstances of your students, and make adaptations to serve your students best.

Have all your curriculum resources available from anywhere: FLEX Curriculum

Alternate Paint Ideas

art assignment class 6

Unfortunately, many students will not have access to paint at home. Consider using this as a time for exploration to introduce students to new types of paint. Challenge students to think about what natural materials they might have, much like the people creating cave art might have used.  Try some of these homemade paint options:

  • Painting with Coffee
  • Fruit and Vegetable Paint
  • Paint Made with Spices
  • Food Coloring Watercolors

Found Object Ideas

art assignment class 6

Found object artmaking is a medium that has been explored by artists throughout the ages. Let your students’ creativity flow by creating with the objects they have around them.

Here is a list of found objects that might help inspire your students. Try one of these found object ideas:

  • Found Object Color Wheel: Using the objects found throughout one’s home, have students collect as many colored objects as they can to create a color wheel. It will become a fun challenge to see how many different objects in different hues one can find at their home.
  • Andy Goldsworthy Found Object Nature Ideas
  • Found Object Cityscape Printmaking Lesson Plan

3-D Lesson Ideas

art assignment class 6

Planning activities and lessons for 3-D classes like ceramics and sculpture might present an extra challenge. It won’t be very easy to truly emulate the happenings of a ceramics class without clay at home. Maybe, you’ll get lucky, and you can send each student home with a pound of clay, but this won’t be the case for everyone. Instead, get creative and keep it simple. Here are some ideas to consider.

  • Create temporary sculptures with household items. Have your students photograph them, and use them as a drawing inspiration. When you eventually get back to the classroom, students can recreate their sculptures with other materials.
  • Have your students create stop-motion videos using clay-like material. This can be done with clay, play-doh, or even cookie dough.
  • Paper Pottery
  • Cardboard Sculptures

Here are some additional clay recipes your students can try to make their own homemade clay:

  • Baking Soda Clay

Lessons with Limited Supplies

When it comes to limited supplies, drawing is going to be the best way to have our students find success. They can simply draw with the materials they have, any type of mark-making and paper will do the trick.

Use these drawing prompts to continue your students’ drawing skills.

  • 100 Silly Drawing Prompts
  • 100 Sketchbook Prompts eBook
  • 100 Sketchbook Prompts
  • Finish the Picture Prompts

art assignment class 6

Observational Drawing

Now is the perfect time to refine observational drawing skills. To encourage your students to take note of the world around them, encourage them to participate in the “ View From My Day ” drawing challenge.

Other Drawing Activities:

  • Turn Your Markers into Paint
  • Stuffed Animal Drawings
  • Drawing the Human Form
  • Digital Drawing Ideas
  • Visual Journaling Ideas
  • Line Drawing Lessons

Additional Art Challenges to Engage Your Students

Use and adapt these art challenges to fit the needs of your students.

  • Summer Art Challenge
  • Supply Challenge
  • Snow Day Challenge

These lists are just a few ideas to help you create lessons or art from home. Just as in times of uncertainty, there are no silver bullets or definitive answers, but there are often options. As art educators, you do have options at your fingertips; at AOEU, we are here to help you find them. 

What are your go-to options when schools close? 

How do your students respond with a variety or lack of options? 

Magazine articles and podcasts are opinions of professional education contributors and do not necessarily represent the position of the Art of Education University (AOEU) or its academic offerings. Contributors use terms in the way they are most often talked about in the scope of their educational experiences.

art assignment class 6

Abby Schukei

Abby Schukei, a middle school art educator and AOEU’s Social Media Manager, is a former AOEU Writer. She focuses on creating meaningful experiences for her students through technology integration, innovation, and creativity.

art heist lasers

Level Up the Fun! 11 Awesome Art Games to End the Year

36 exposures

10 One-Day Photography Activities to Keep Students “Focused” Until the End of the Year

paper mache hands

Go Big Before Going Home: Finish the Year with a Collaborative Paper Mache Sculpture

artist book

5 Art Activities to Unwind After Testing and Portfolio Submissions 

  • Free Resources
  • Register for Free

Art Lesson Plans

The home of quality art lesson plans.

This is just a small snapshot of the hundreds of art lesson plans available on The Arty Teacher website.  Each section highlights some of the best-selling art lessons for that theme. Remember, you don’t have to pay for these resources individually as with a subscription you can download 10 resources a month.

Exciting Techniques and Processes

Experimenting with different media is an essential part of a broad art curriculum.  Many of my resources explore exciting media; the three featured below have been very popular.

art assignment class 6

Complete Units of Work

These complete units of work are each an entire project. It’s wonderful to be able to teach new projects and to not have to spend hours and hours planning. There are many more complete art units on The Arty Teacher.

art assignment class 6

Popular Resources

I never know what resources are going to be popular.  The selection below all have received great reviews!

art assignment class 6


Art lesson plans for teaching portraits.

Most art teachers teach portrait lessons at some point in the year.  Students really seem to love this topic even though it’s really difficult.  Below are three best selling portrait resources.  Click an image to learn more, or click here to see all  art lesson plans about portraits.

art assignment class 6

Art Lesson Plans for Teaching Colour Theory

Color theory is easy to teach with these resources to help you.  Every resource has the different spelling of ‘color’ and ‘colour’ to keep art teachers around the globe happy!  As well as the best selling resources below, there are more  color theory art resources  on The Arty Teacher.  This includes resources that help teach about harmonious, analogous and complementary colours.

art assignment class 6

Engage Boys in Art Lessons

Art teachers have told me that boys have really engaged with the resources below. Of course, many girls would enjoy them too.

art assignment class 6

Art Lesson Plans – Art Literacy

The Arty Teacher is particularly hot on literacy resources because art literacy is integral to most art curriculum’s.  On The Arty Teacher there are resources to do this through discussion, analysis and written tasks.  Click an image below or  browse Art Literacy resources .  You may be interested in art resources that incorporate  Blooms Taxonomy .

art assignment class 6

Art Assessment Resources

We all have to spend a lot time marking and assessing art work.  Many of the art assessment resources on The Arty Teacher are designed to save you time.  Click the images below or here for all  Art Assessment Resources .

art assignment class 6

Art Sub and Cover Lessons

The Arty Teacher prides itself in having helped hundreds of art teachers access sub/cover lessons when they need them the most.  You’ll find many of them will fit in with what you are teaching and will continue to teach your students the skills they need.  3 popular sub lessons are below or you can find lots of  art sub lessons  here.

art assignment class 6

Zentangles worksheets really seems to engage students.  These three resources are all on the zentangle theme.  Click on the images below, or there are more  Zentangle Art Resources  on The Arty Teacher.

art assignment class 6

Subscribe & save in any currency! I WANT TO PAY IN Australian Dollars ($) Canadian Dollars ($) Euros (€) Pound Sterling (£) New Zealand Dollar ($) US Dollars ($) South African rand Change Currency

Free subscription ***free***.

Register and you can download 3 of the Free Resources Every Month!

Premium Subscription $9.99 Per month $99 Per year

For one teacher. Save money and get 10 resources of your choice every month, and save even more with a yearly subscription.

School Subscription $188 Per year $282 Per year $376 Per year $460 Per year $552 Per year $644 Per year $713 Per year $802 Per year $891 Per year

For departments with 2 or more members. Subscribe and you can add 2 teachers to your account so they can download 10 free resources each month

Privacy Overview

  • Skip to main content
  • Skip to primary sidebar
  • About Art Class Curator
  • Media & Press
  • Programs for Schools
  • Member Login
  • Search this website

Art Class Curator

Hands-on and Minds-curious Art Learning

Finish the year of with ease and connection with the End of the Year Survival Pack from Art Class Curator!

Art printables, worksheets, and powerpoints.

Inside: A collection of printable art worksheets, PowerPoints, and lesson plans to use in art class. (Most of them are FREE!)

art assignment class 6

Art class should be about more than just making art! Art lessons should introduce students to a variety of works of art and allow them to explore the process, the history, and their own personal connections to the artworks they encounter.

Keeping a class full of students engaged while looking at art takes practice, confidence, inventive activities , and a variety of approaches. But most of us weren’t taught how to talk about art with kids . That’s why I’ve gathered some of my best printable art worksheets and downloads in one place! Most of these art lesson plans can be used for any grade level and there’s enough variety to keep elementary, middle, and high school students interested and intrigued.

Free Art Worksheets Bundle-FB

Free Printable Art Worksheets

My favorite go-to art lessons come from the Art Appreciation Worksheet Bundle .

It’s as easy as 1, 2, 3! 1. Pick an artwork 2. Print one of the Art Appreciation Worksheets 3. Watch with joy as your students connect with and interpret art

The bundle includes 25 printable art worksheets, but everyone who signs up for Your Weekly Art Break , my email newsletter full of art inspiration, gets six FREE art appreciation worksheets . Fill out the form below to receive your free art worksheets and weekly art inspiration.

art assignment class 6

Free Worksheets!

Art Appreciation Worksheets

In this free bundle of art worksheets, you receive six ready-to-use art worksheets with looking activities designed to work with almost any work of art.

Below, you’ll find a collection of the Art Class Curator posts that include art printables and downloads. These brains-on art activities will jump-start students’ critical thinking skills and breath new life into their  art projects . All of these art lesson plans are all free unless otherwise marked. Most are printable PDFs, but the ones containing PowerPoints are marked.

Free Elements and Principles Printable Pack

art assignment class 6

This pack of printables was designed to work in a variety of ways in your classroom when teaching the elements and principles of art. You can print and hang in your classroom as posters/anchor charts or you can cut each element and principle of art in its own individual card to use as a lesson manipulative. Click here to download the Elements and Principles Printable Pack.

art assignment class 6

Free Resource!

Elements & Principles Printable Pack

The Elements & Principles of Art are the foundation of every artwork, but teaching them can be a bore. Wake your students up and engage them with full color artworks, easy to understand definitions, and thought-provoking higher level thinking questions. This versatile resource can be hung in the classroom or used as an art manipulative.

Art Appreciation Printables

  • Free Art Appreciation Printable Worksheet Bundle
  • Art Appreciation Worksheet Bundle 25-Pack  
  • I am… Dorothea Lange: Exploring Empathy
  • Character Analysis Art Activity: Twitter Perspectives
  • Haikus about Art
  • I See, I Think, I Wonder
  • “I Feel” Word Wheel: Learning Emotional Literacy in Art Education

Art Appreciation Activities & Art Appreciation Lessons

  • Art Description and Drawing Activity
  • Virtual Art Museum Field Trip
  • Complete the Picture: An Easy Art Appreciation Game for Kids
  • Interpreting the Power of the Kongo Nkisi N’Kondi

Artworks Printables

art class activities

Artworks Worksheets & Artworks Activities

  • Art, Horror, and The Sublime: Symbolism in Pablo Picasso’s Guernica
  • Kollwitz & Cassatt: Two Views of Motherhood in Art
  • Rosa Rolanda Jigsaw Art Learning Activity

Artworks Lessons

  • Elements of Art Examples & Definitions
  • Principles of Design Examples & Definitions
  • Frida Kahlo’s The Two Fridas  Art Discussion Lesson
  • Art Analysis Activity for John Gast’s American Progress
  • Art Around the World in 30 Days – China
  • Masterpiece Monday: Manifest Destiny Art

Art Criticism Printables

Art criticism worksheets.

  • SPARK: 5 Art Criticism Steps for Inspired Art Connections and Conversations
  • Art History Student Study Guide Worksheets

Art Criticism Activities

  • 82 Questions to Ask About Art
  • Photograph Analysis Learning Activities

Art Criticism Lessons

  • 4 Steps of Art Criticism Lesson
  • What is Art? – Aesthetics Lesson Bundle
  • Classical Sculpture Analysis Lesson  
  • Decoding Style: How to Teach Students to Read an Artwork  

Puzzles About Art Printables

art puzzles

Teaching students about  art and aesthetics  is a great way to make them think about art in a new way. Aesthetics puzzles ignite exciting, meaningful classroom art discussions  and flex students’ philosophical and critical thinking skills.

  • Puzzles About Art: The Chimpanzee Painter
  • Puzzles About Art: Call it Driftwood

More Art Printables

You can find more art lesson plans in the Art Class Curator store and on Teachers Pay Teachers . Sign up for  Your Weekly Art Break   to get six free art art worksheets and weekly art inspiration delivered to your inbox!

art assignment class 6

Get Art Inspiration To Your Inbox!

*free bundle of art appreciation worksheets*.


Art Lessons By Grade

Home » Art Lessons By Grade

Here you can browse through our art lesson plans by age or grade, from Preschool through High School.

Preschool Art Lessons.


Preschool/Early Childhood Education art lesson plans. These activities which are best suited for ages 2-5 years.

What to Expect: 2-3 years:

Between their second and third birthdays, children begin to pay attention to prin t, such as the letters in their names. They also begin to distinguish between drawing and writing and start to scribble on paper , making some marks that are like letters. Two and three year olds require activities to help them develop hand coordination (for example, by holding crayons and pencils, putting together puzzles or stringing large beads).

What to Expect: 3-4 years:

By their 3rd and 4th birthdays, children have greater small-muscle control than toddlers, which is reflected in their drawings and scribbles. They can match and sort things that are alike and unalike, recognize and print  and can “write,” or scribble messages.

What to Expect: 4-5 years:

Between their 4th and 5th birthdays, children are active, enjoy more group activities and have better muscle control. They can recognize and write the numerals 1-10, recognize shapes such as circles, squares, rectangles and triangles and can write some letters.

Kindergarten, Grade 1 and Grade 2 Art Lessons.


Primary or Lower Elementary art lesson plans. These activities are best suited for K, Grade 1 and Grade 2 – or – ages 5 to 8 years.

What to Expect: 5-8 years:

Primary grade children (K-2; ages 5-8yrs) are beginning to understand that art is a way to communicate. They consciously create symbols and their pictures feature bold, direct and flat images . There is little detail shown to realistic, spatial concepts. They are eager to share their art with others.

Grade 3, 4 and 5 Art Lessons.


Junior Elementary art lesson plans. These activities are best suited for Grades 3 – 5 – or – ages 8-11 years.

What to Expect: 8-11 years:

Junior grade children (Grades 3-5; ages 8-11yrs) are beginning to search for specific methods for representing subjects and they seek to improve their technical skills. They sometimes draw things as they remember, rather than how they see. They are usually able to remain focused on the creation of art without interruption for ten to twenty minutes and they are still willing to share their work with others.

Grade 6, 7 and 8 Middle School Art Lessons.


Middle School art lesson plans. These activities are best suited for Grades 6-8 – or – ages 11-14 years.

What to Expect: 11-14 years:

Middle School students are comfortable with inventing new images and are flexible with changing visual symbols.

They are comfortable working with a variety of media but are critical of their own work and the work of others. They can often become discouraged with their efforts and may lose interest in art if not redirected.

Emphasis should be on hands-on studio activities and enhancing visual literacy.

High School Art Lessons.


High School (Secondary School) art lesson plans. These activities are best suited for Grades 9-12 – or – ages 14 and up years.

What to Expect: 14+ years:

High School students should be given the opportunity to work with a variety of art materials . Often, they will be interested in creating art with a message , or for a cause (political or otherwise). This should be encouraged.

art assignment class 6

Fourth grade art students are ready for new challenges, like trying out perspective or exploring tessellations. These projects are all well within their abilities but will also encourage your students to push themselves to create cool new works of art they’ll be proud to take home and show off!

Collage of simple self-portraits done in bright colors (Fourth Grade Art Projects)

1. Go colorful with Fauve portraits

Artists of the Fauve school favored bright colors and bold lines, so their work really appeals to kids. Use bingo daubers to make the portraits, then oil pastels and liquid watercolors to create the colorful backgrounds.

Learn more: Fourth Grade Fauves

Accordion-folded paper with a regular portrait when viewed from one angle and a weird version from a second angle

2. Fold zigzag selfies

Your fourth grade art students will be wowed by the illusion of this portrait project. They’ll create two different pictures of themselves on accordion-folded paper. When they unfold it, they’ll be able to see each portrait depending on the angle from which they look.

Learn more: Zig Zag Paintings

Painted nighttime winter scene with full moon and snowman and tree silhouettes (Fourth Grade Art Projects)

3. Blend snowy silhouettes

Learn to blend tints and shades with these winter landscapes, featuring full moons and silhouettes of trees, snowmen, and other wintry objects.

Learn more: Snowy Silhouettes

Landscape drawings made with simple lines and bright colors

4. Learn the parts of a landscape

Teach your students terms like foreground, middle ground, and horizon as they create these patterned landscapes. They’ll also learn to use warm colors to make some elements pop and cool colors when they want something to recede into the background.

Learn more: Landscapes

Collage of construction paper pirate ships with painted patterned backgrounds (Fourth Grade Art Projects)

5. Sail mighty pirate ships

Students will have fun painting textured waves to back their fearsome construction paper pirate ships. Challenge them to personalize their sails with their own insignia too.

Learn more: Pirate Ships

Butterfly made with glue lines on foil, colored in with markers

6. Add texture with glue

Aluminum foil makes a really cool canvas for art projects. Use school glue to “draw” insect art, then fill in the colors with Sharpies.

Learn more: Butterfly Art

Kid-drawn background resembling The Scream, with photo of kid pretending to scream in front (Fourth Grade Art Projects)

7. Put your students in The Scream

Munch’s  The Scream is one of the most well-known pieces of art in the world. Learn more about the original painting, then have kids paint their own backgrounds. Finish it off by taking “Scream selfies” and pasting them on!

Learn more: The Scream

Boldly drawn tiger head with a rainbow background (Fourth Grade Art Projects)

8. Make Dean Russo–inspired animals

Dean Russo’s vivid pet portraits have become incredibly popular, and they’re exactly the kind of style that appeals to kids. This is another fourth grade art lesson that’s perfect for using bingo daubers to make the bold outlines.

Learn more: Dean Russo–Inspired Animals

Seahorse in pastel colors pasted on black construction paper

9. Assemble colorful seahorses

These dreamy seahorses are made using bleeding tissue paper to achieve the soft watercolor effect. When you glue them onto black construction paper, the colored panels practically seem to glow.

Learn more: Seahorse Art Project

Watercolor seascape painted on torn book pages with construction paper ships (Fourth Grade Art Projects)

10. Turn book pages into a seascape

Collect some old textbooks and turn them into bounding ocean waves! Dab the torn pages with watercolors, then add boats of various sizes to create the illusion of depth.

Collage of animals on cloth made using toothpaste batik method (Fourth Grade Art Projects)

11. Try a toothpaste batik

The traditional batik process involves wax, but this version uses a surprise substitute: toothpaste! Learn how it works at the link.

Learn more: Toothpaste Batik

Two figures sculpted from aluminum foil, with their shadows drawn below

12. Sculpt figures from foil

Turn a box of aluminum foil into cool sculpted figures. After your students make their figures, have them draw and shade the shadows the figures make.

Learn more: Gesture Drawings in 3D

Collage of colorful folded paper patterns (Fourth Grade Art Projects)

13. Craft radial paper relief sculptures

Explore the concept of radial symmetry with this intriguing folded-paper project. Visit the link below to learn some basic folds, but don’t be afraid to try out creative shapes of your own.

Learn more: Paper Relief Sculptures

Pizza slices made of fabric and covered with colorful toppings

14. Sew giant pizza pillows

Who’s ready for a pizza party? Let your creative juices (and taste buds!) run wild with this tasty fourth-grade art project that looks fun and delicious.

Learn more: Fourth Grade Pizza Pillows

Large wave painted in shades of blues and green (Fourth Grade Art Projects)

15. Mix paint for giant Hokusai waves

Japanese artist Hokusai is best known for his series of woodblock prints of Mount Fuji, including  The Great Wave off Kanagawa . Fourth grade art students will enjoy mixing acrylic paints to get the proper shades to re-create this iconic marine scene.

Learn more: Hokusai Wave Art Lesson

Tessellated dogs bright colors with the image of a child's handing holding a pencil pasted on top

16. Draw Escher-inspired tessellations

Get ready to see your students’ eyes widen when you show them M.C. Escher’s mind-bending illustrations. Then challenge them to create their own tessellations, which are repeating patterns that cover a page with no gaps or overlaps. It’s tricky, but oh-so satisfying!

Learn more: MC Escher Tessellations

Art showing a student falling backward with the feet and hands large in the foreground (Fourth Grade Art Projects)

17. Put together free-fall foreshortening art

Fourth grade art students are ready to tackle some more advanced concepts, like foreshortening an object to produce the illusion of distance. These free-falling portraits emphasize hands and feet, creating an interesting, foreshortened perspective.

Learn more: Make Free-Fall Foreshortening Art

Portrait of a fourth grade art student made using words

18. Write typography self-portraits

Make some time in your curriculum for graphic arts like typography. This self-portrait is a combination of poetry and art, and the results are truly special.

Learn more: Typography Self-Portraits

Close-up of a dragon eye made with watercolor resist and colored pencil

19. Shade close-up dragon eyes

Your fourth grade art students will develop a whole bunch of new skills with this project. Plus, those dragon eyes are simply mesmerizing!

Get tutorial: Dragon Eye Painting at Art With Mrs. F on YouTube

Abstract paper sculpture in red, white, and blue

20. Cut out Dubuffet sculptures

Dubuffet took great inspiration from watching kids create, eventually coining the term  art brut , sometimes called outsider art. After looking at some of his work, ask kids to use paper to make a free-flowing abstract sculpture of their own.

Learn more: Dubuffet Sculptures

Four different patterned circles, split into quarters and reassembled (Fourth Grade Art Projects)

21. Split and share circles

Collaborative art projects give kids a chance to work together and share their creativity. For this one, each student creates one Kandinsky-inspired circle and cuts it into four pieces. Then kids mix and match with each other to put together unique compositions.

Learn more: Concentric Circles

Colorful 3-D gems outlined and filled in with paint

22. Outline and paint 3D gems

Use the magic of crystals and gems to inspire students for this watercolor project. Show them the basic steps, then let them compose their own valuable collections.

Learn more: 4th Grade Gems & Crystals

Collection of clay sculptures of rocks with sea stars and urchins (Fourth Grade Art Projects)

23. Dive deep for undersea sculptures

Everything’s better under the sea, including these gorgeous clay sculptures. Use photos of tide pools to inspire fourth grade students to mold starfish, urchins, seaweed, and more.

Learn more: Underwater Clay Sculptures

Collage of drawings of various shapes, exploding out from a central point (Fourth Grade Art Projects)

24. Create a shape explosion

Here’s another lesson in perspective, this one focusing on the vanishing point. For a personalized twist on this idea, have kids sketch the letters of their name instead of using shapes.

Learn more: Shape Explosion

Collage of watercolor paintings with dandelion seed heads

25. Float away with dandelion puffs

One look at these paintings and you’ll feel like you’re sitting in a sunny meadow on a warm summer’s day. Kids use the wet-on-wet technique to create those soft misty backgrounds.

Learn more: Dandelion Puffs

Six colorful donuts made from papier-mâché sitting on a silver tray

26. Snack on papier-mâché donuts

These donuts look yummy, but don’t be tempted to take a taste! Instead, drop by the link below for some donut art inspiration, then shape your own sweet treats from papier-mâché.

Learn more: Papier-Mâché Donuts

Drawing of a snowman, looking down from the top in a birds-eye view (Fourth Grade Art Projects)

27. Look down on birds-eye view snowmen

Viewed from the top, snowmen are just a series of concentric circles. Practice shading to add depth to each circle, then add a scarf, arms, and snowman features to finish it off.

Learn more: Bird’s-Eye View Snowmen

Colorful construction paper totem poles showing a variety of animals

28. Explore indigenous art with totem poles

Make this art lesson meaningful by learning why and how some Native American tribes make totems. Then have each student choose an animal that’s important to them and build their own class totem poles.

Learn more: Totem Pole Animals

Flat castle made of textured clay painted silver

29. Construct clay castles

Have some royal fun with these textured clay castles. Metallic glazes and glittering pennants make this a project that really shines.

Learn more: Clay Castles

Penguin and hot chocolate mug painted and stitched on burlap

30. Stitch and paint on burlap

Here’s a project that’s likely different from anything kids have tried before. First, paint a design on burlap. Then, stitch on some embellishments with colored thread. The results are unique and awesome!

Learn more: Stitching on Burlap

Craft with recycled Shrinky Dinks (Fourth Grade Art Projects)

31. Craft with recycled Shrinky Dinks

Turn recycling into a fun art lesson with DIY recycled Shrinky Dinks. This project allows students to repurpose plastic into vibrant, shrinkable art, teaching sustainability alongside creativity.

Learn more: DIY Recycled Shrinky Dinks

Doodle desert masterpieces

32. Doodle desert masterpieces

This project combines art fundamentals like concentric circles, contour lines, line variety, color blending, and watercolor control. Students start by sketching cacti and landscapes, then outline their drawings with permanent markers, filling it in with detailed doodles and color washes for a stunning effect.

Learn more: Doodle Desert

Sow succulent garden still lifes (Fourth Grade Art Projects)

33. Sow succulent garden still lifes

Inspire students with the resilience of desert life. This project blends art with nature, as students study succulents and their adaptations to create beautiful, vivid artworks.

Learn more: Succulent Garden Still Lifes​

Create drip paintings like Pollock (Fourth Grade Art Projects)

34. Create drip paintings like Pollock

Dive into the action-packed world of abstract art with drip paintings inspired by Jackson Pollock. This project lets students splash, drizzle, and pour paint, embracing spontaneity and movement to create their own vibrant masterpieces.

Learn more: Jackson Pollock Drip Painting/Weaving Revisited

Craft mixed media leaf collages

35. Craft mixed-media leaf collages

Explore the beauty of nature with a twist by creating mixed-media leaf collages from photocopies. This project invites students to collect leaves, then use photocopies of these leaves as the basis for vibrant, layered art pieces. By adding paint, texture, and creativity, each collage turns into a stunning exploration of the natural world’s intricate patterns and shapes.

Learn more: Mixed-Media Leaf Art Collage

Make chalk pastel jellyfish art

36. Make chalk pastel jellyfish art

Brighten up the classroom with a colorful chalk pastel jellyfish art project. Using black paper, students will draw and color their own jellyfish, learning to blend colors and create light-and-shadow effects that make their art pop.

Learn more: Chalk Pastel Jellyfish Art Project

Explore paper-weaving techniques

37. Explore paper-weaving techniques

Introduce students to the world of weaving with an easy and colorful paper-weaving project. They’ll start by cutting slits in one piece of paper and weaving strips of different-colored paper through the slits. This project not only teaches basic weaving patterns but also allows for creativity in color and texture combinations.

Learn more: Paper Weaving

Learn to draw landscapes in perspective

38. Learn to draw landscapes in perspective

Introduce students to perspective drawing with a landscape art project. They’ll learn how to create depth by drawing a road that narrows into the distance, along with trees that gradually decrease in size, resulting in a captivating scene that looks like it’s far away.

Learn more: How To Draw Landscapes in Perspective

Assemble 3D paper doodlebug insects

39. Assemble 3D paper doodlebug insects

Create intricate 3D paper doodlebugs that spring to life on a leaf. This crafty project encourages students to design, color, and construct their own doodlebug using a printable template, fostering a blend of artistic creativity and scientific curiosity.

Learn more: 3D Paper Doodlebug Insect Craft

Create bird silhouette art

40. Create bird silhouette art

Capture the beauty of a sunset with bird silhouette art. This project encourages children to observe color changes in the sky, blend paints to create depth, and use templates for striking bird silhouettes against a vibrant background.

Learn more: Bird Silhouette Art Project

Craft Victorian houses

41. Craft Victorian houses

Dive into history and architecture by designing Victorian houses. Using colored pencils, students draw houses with detailed gables, turrets, and trim, learning about this historic style’s unique features.

Learn more: Victorian Architecture

Draw half portraits

42. Draw half portraits

Learn to draw half portraits with a step-by-step guide that simplifies facial features. This project encourages attention to detail in drawing one side of the face, making it perfect for understanding symmetry and proportions.

Learn more: Half Portraits

Sketch mythical dragons

43. Sketch mythical dragons

Unleash creativity by sketching mythical dragons, following a simple tutorial that breaks down the process into easy steps. This activity encourages students to play with shapes and details, creating their own dragon characters.

Learn more: How To Draw a Dragon

Paint a watercolor flower garden

44. Paint a watercolor flower garden

This project invites kids to draw and paint a vibrant watercolor flower garden. Starting with simple flower shapes drawn on watercolor paper, they outline their designs with a white crayon or oil pastel before painting over them with liquid watercolors, allowing for a beautiful resist effect.

Learn more: Watercolor Flower Garden

Make bunny paper bag puppets

45. Make bunny paper bag puppets

Craft adorable bunny paper bag puppets using simple materials. This engaging project sparks creativity and provides a playful arts-and-crafts experience for kids.

Learn more: Bunny Paper Bag Puppet

Create winter tree silhouettes

46. Create winter tree silhouettes

Capture the quiet beauty of winter with silhouetted trees against a vivid watercolor sunset. This project teaches color blending and contrast.

Learn more: Winter Tree Silhouette

Weave Mexican sun and moon artworks

47. Weave Mexican sun and moon artworks

Craft stunning Mexican sun-and-moon weavings, blending metal relief art with colorful yarn weaving. This project celebrates Mexican culture and introduces students to mixed-media art, combining sculpture, painting, and weaving techniques.

Learn more: Mexican Sun and Moon Weavings

Craft folk art winter trees

48. Craft folk art winter trees

This project has students creating vibrant winter trees using Sharpies and watercolors, embodying folk art’s charm. A simple yet engaging activity perfect for exploring line, pattern, and color techniques during the chilly months.

Learn more: Winter Folk Art Trees

Create funny balloon faces

49. Create funny balloon faces

Float into a world of laughter with funny balloon faces. With these adorable fourth grade art projects, kids explore their creativity by attaching colorful card-stock facial features to balloons to craft whimsical characters.

Learn more: Funny Balloon Faces Craft

Craft 4th grade snowflakes

50. Craft papel picado snowflakes

Explore papel picado –inspired snowflakes, merging this traditional Mexican art with a fun, wintry twist. Students create unique paper designs, enhancing their cutting skills and cultural appreciation.

Learn more: Snowflakes

Keep the creativity flowing with these 4th Grade Writing Prompts .

For more articles like this, subscribe to our newsletters to find out when they’re posted.

Learn about well-known artists and explore creative concepts with these fourth grade art projects. Paint, draw, sculpt, and more!

You Might Also Like

Fifth grade art projects

35 Unique Fifth Grade Art Projects To Tap Into Kids’ Creativity

Inside every kid lies the heart of an artist. Continue Reading

Copyright © 2024. All rights reserved. 5335 Gate Parkway, Jacksonville, FL 32256

art assignment class 6

  • Art Lessons
  • Pre-School Lessons
  • Elementary Lessons
  • Jr./Middle Lessons
  • High Sch. Lessons
  • College Art Lessons
  • Substitute Lessons
  • Art/Drama Lessons
  • Art Activities
  • Art Lesson Links
  • Cartoon Lessons
  • Files for Teachers
  • Submit a Lesson
  • Art Jobs & Careers
  • Advertising Art
  • Animation Careers
  • Art School Search
  • Art Career Advice
  • Desktop Publishing
  • Fashion Design
  • Graphic Design
  • Illustration
  • Art Job Openings
  • Art Job Search
  • Special Effects
  • Video Game Design
  • Art Departments
  • Art Room Home
  • Elem. Art Depts.
  • Secondary Art Depts.
  • Art Schools
  • World Art Schools
  • Art Resources
  • Great Architects
  • Activities & Games
  • Art Advocacy
  • Artist Encyclopedia
  • Art Associations
  • IAD Art Gallery
  • List of Art Galleries
  • Art of India
  • Art of Mexico
  • Art Periods & Styles
  • Art Magazines
  • IAD Art Awards
  • Art Blogs & Podcasts
  • Cartoon Gallery
  • Christmas Art
  • Clip Art & Images
  • Constitution Day Art
  • Great Art Sites
  • Halloween Art
  • Holi Festival Art
  • Impressionator
  • John Lloyd Wright
  • Mayan Art Culture
  • List of Art Museums
  • Native American Art
  • Pet Peeves in Art
  • U.S. Art Museums
  • Great Photographers
  • Pointillator Game
  • St. Patrick's Day Art
  • Student Art Galleries
  • Art Tessellations
  • Thanksgiving Art
  • Valentine's Day Art
  • Art Video & Cameras
  • Art Teacher Toolkit
  • Art Activitites
  • Art Assessment
  • Art Community
  • Best Practices
  • Brain Research
  • Common Core Art
  • Art Contests
  • Art Curriculum
  • Classroom Discipline
  • Flipped Classroom
  • Free Art Things
  • Art Instruction
  • NCLB & the Arts
  • PBIS & the Arts
  • Art Rubrics
  • Special Education

High School Art Lessons

Lessons by grade level.

HOME | ABOUT | CONTACT | ADVERTISE | NEWSLETTER | © Incredible Art Department

Additional Info

  • Incredible Art Home

privacy policy

art assignment class 6

Electrostal History and Art Museum - All You MUST Know Before You Go (2024)

Due: Sat May 25 11:59 pm Late submissions accepted until Sun May 26 11:59 pm

Assignment by Michael Chang & Julie Zelenski idea originated by Randal Bryant & David O'Hallaron (CMU). Modifications by Nick Troccoli, Brynne Hurst, Kathleen Creel and Jonathan Kula.

Learning Goals

This assignment focuses on understanding assembly code representations of programs. You will be building your skills with:

  • reading and tracing assembly code
  • understanding how data access, control structures, and function calls translate between C and assembly
  • reverse-engineering
  • understanding the challenges of writing secure and robust systems
  • understanding privacy, trust, and the role of the ethical penetration tester
  • mastering the gdb debugger!

You have been hired as a security expert for Stanford Bank (a fictional on-campus bank). They need you to investigate reports of infiltration and security issues and replicate the issues so that they can fix them.

There are three parts to this assignment, each of which can be completed independently:

  • an ATM withdrawal program containing some vulnerabilities - you'll need to use your C and assembly skills to find and demonstrate how to exploit these vulnerabilities.
  • A dataset that you will use to deanonymize bank users.
  • The SecureVault program, a new product designed by the bank to provide increased security to the master vault. You'll be given an executable of the SecureVault program (no C code provided!) to show that it is possible to reverse engineer this program and break into the master vault without being told the passwords.

These problems are like C/assembly "puzzles" to solve, and we hope you enjoy solving them and exploring this material as much as we enjoyed creating them!

Note: check out our assignment overview video on Canvas ; it goes over the different parts of the assignment, what to expect, and tips and tricks! Note the overview video is from this quarter last year, but the assignment is the same (save for the fact that questions 2 and 3 are exchanged).

Spring 2024: Lecture 22 (Mon 5/20) is necessary to work on questions 3 and 4 in part 2 of this assignment.

A few reminders:

  • The working on assignments page contains info about the assignment process.
  • The collaboration policy page outlines permitted assignment collaboration, emphasizing that you are to do your own independent thinking, design, writing, and debugging. Even without any code being submitted, you should not be doing any joint debugging/development, sharing or copying written answers, sharing specific details about SecureVault behavior, etc. If you are having trouble completing the assignment on your own, please reach out to the course staff; we are here to help!

To get started on this assignment, clone the starter project using the command

View Full Starter File List

  • vault : Your SecureVault executable program, custom-generated for each student.
  • custom_tests : The file where you will add custom tests to reproduce vulnerabilities in the provided ATM withdrawal program.
  • input.txt : A blank text file where you should add the passwords for each SecureVault level, one per line. See the section on SecureVault for more information.
  • readme.txt : A file where you should add answers to short written questions for all three parts of the assignment.
  • .gdbinit : A gdb configuration file you can optionally use to run certain gdb commands each time gdb launches. See the section on using GDB in SecureVault for more information.
  • samples : A symbolic link to the shared directory for this assignment. It contains:
  • atm : The executable ATM program, which you will explore for vulnerabilities.
  • atm.c : The C source code for the ATM program, which you will explore for vulnerabilities. Note that you're not able to edit or recompile this code/executable.
  • checkins.csv : A file containing public social media location check-in data for various locations on Stanford campus over the past three months.
  • search_checkins : An executable program to search the check-in data.
  • bank : a folder containing the following:
  • customers.db : A file with the list of all users and balances for the ATM program.
  • transactions.csv : A file with ATM transaction information from the past three months at the Stanford campus ATM.
  • SANITY.INI and : Files to configure and run sanity check. You can ignore these files.
  • wordlist : A list of dictionary words used for SecureVault.
  • tools : Contains symbolic links to the sanitycheck and submit programs for testing and submitting your work. ( codecheck is not needed on this assignment)

You will be using gdb frequently on this assignment. Here are essential resources as you work - note that you should make sure you have downloaded the CS107 GDB configuration file mentioned in the Getting Started Guide if you didn't previously do so.

Open Getting Started Guide Open GDB Guide Open Lab5 GDB Tips Open Lab6 GDB Tips

1. ATM Security

Stanford Bank recently updated the ATM software to a version with some additional features. The IT team reviewed the new code and thought it all looked good, but having now installed it in production, they are observing some suspicious activity. The bank has called you because your superior C and assembly skills are just what's needed to investigate and resolve these problems!

In the samples folder, they have provided you the code ( atm.c ) and compiled executable ( atm ), which you can examine/run but cannot recompile or edit (since they want to ensure you work with the same executable installed on the ATMs themselves). The ATM program is invoked with an amount and the credentials for a particular account. If the credential is authorized and the account has sufficient funds, the amount is withdrawn and dispersed in cash. Accounts must maintain a minimum balance of $50, and the ATM is supposed to maintain bank security by rejecting unauthorized access. Every time you run the program, it will print out information to the terminal about the transaction that took place, or the error that occurred, if any. For example, if you ask to withdraw $100 from your account balance of $107, it should be denied with an error message because that would bring your current $107 balance below the required minimum of $50. If you try to sneak cash from another account or use a fake name, your credential should get rejected as unauthorized.

Here are a few examples - try it out yourself! Note that $USER automatically acts as your SUNET ID, and every account balance is set to be $107. Also, each time you run the program anew, all balances return to their original starting levels. No money actually changes hands in this ATM, which is a blessing given its security flaws.

Expand ATM Sample Runs

The bank has identified three anomalies in the ATM program behavior that they need your help investigating. For each of the anomalies (a), (b), and (c) below, you will need to do the following:

  • include a test case in your custom_tests file to showcase how to reproduce the vulnerability. Note that there may be more than one way to trigger a vulnerability.
  • A concise description of the underlying defect in the code.
  • An explanation of exactly how you constructed your test case to exploit it.
  • Your recommendation for fixing it. The bank is not looking for a major rewrite/redesign, so in your proposed changes you should directly address the vulnerability with minimal other disruption. Note that there may be more than one possible remedy for fixing each issue. Also make sure you do not remove intended functionality of the bank program, and account for any potential additional security issues introduced by your proposed fix .

NOTE: when running your own custom tests, make sure to inspect the output to ensure your tests are causing the behavior you expect! The sanitycheck tool itself does not verify that the tests cause the specified exploits.

As you work through your investigation, you will need to review the source code for the atm program. The program is roughly 175 lines of C code of similar complexity to what you have been writing this quarter, and is decomposed and fairly readable, though sorely lacking in comments. You should find that the program's approach seems reasonable and the code is sincere in its attempt to operate correctly. As you're reading, take a minute to reflect on how far your awesome C skills have come to let you read through this provided program!

NOTE: when running the ATM program under GDB, make sure you are in the samples folder first before running gdb atm .

a) Negative Balances

A prior version of the ATM program restricted a withdrawal to be at most the full account balance, allowing the customer to drain their account to $0, but no further. The current version has changed the withdraw function to require a non-zero minimum balance. The expected behavior should be that all account balances stay above this minimum. However, the bank saw an (otherwise ordinary) withdrawal transaction that not only caused an account to go below the minimum, but also overdrew so far as to end up with a negative balance. Oops, that's definitely not supposed to happen! Review the C code for the withdraw function, specifically the changes from the old version. It seems to work in many cases, but apparently not all. Read carefully through this function to try and discover the flaw - your understanding of signed and unsigned integers will be useful here! Once you have found the vulnerability, determine a command to make a withdrawal as yourself that withdraws more money than is present in your account . Put this command in custom_tests , and answer the specified readme questions.

b) Unauthorized Account Access

The bank has also received a customer complaint about an unauthorized withdrawal from their account. It seems that another user with different credentials was able to successfully withdraw money from the aggrieved customer's account. Moreover, the credential used appears to be entirely fake - no such user exists in the database! A user should not be able to access a different customer's account and especially not by supplying a bogus credential! Review the C code for the find_account function that is responsible for matching the provided username to their account number. It seems to work properly when the username matches an existing account, but not when the username doesn't match an existing account. Trace through line by line how the function executes when called with an invalid username that is not in the database. What lines are executed? Once you do this, you'll find that the function appears to behave unpredictably. Your next task is to examine the generated assembly to determine precisely how the function will behave - your understanding of the %rax / %eax register will be useful here! Once you have found the vulnerability, determine a command with a designed bogus name credential to withdraw $40 from one of the CS107 staff member's accounts. Put this command in custom_tests , and answer the specified readme questions. (The samples/bank/customers.db file contains information about all valid users and their balances, and the first 15 users in the database are staff accounts.)

c) Accessing The Master Vault

The most worrisome issue is repeated illicit withdrawals from the master vault account, account number 0. The name on the master account is not an actual user, so this account cannot be accessed using the simple username-based credential. Instead, the user must specify two account arguments, the account's number and its secret passcode, as a form of heightened security, like this:

At first the bank thought the vault passcode had been leaked, but changing the passcode did nothing to thwart the attack. In a fit of desperation, the bank removed the vault passcode file altogether, figuring this would disable all access to the vault, yet the rogue user continues to make withdrawals from it! It seems that the high-security passcode authentication may have its own security flaw! The code that handles this authentication is in the lookup_by_number and read_secret_passcode functions. These functions work correctly in many situations, but fail in certain edge cases. Remember that it seems that in certain cases supplied credentials are accepted despite the lack of a saved passcode file . The vulnerability is subtle in the C code, so you should also use GDB to examine the code at the assembly level and diagram out the memory on the stack for these functions . This problem is similar to the stack diagramming/exploit problem from lab6 - revisit that problem if you need a refresher! Your exploit should not involve reading from any file. Once you have found the vulnerability, determine a command to withdraw $300 from the bank vault despite its disabled passcode . Put this command in custom_tests , and answer the specified readme questions.

2. Dataset Aggregation

Separate from the faulty ATM software, Stanford Bank believes that someone was able to gain access to their account logs and get a list of ATM transaction information for their Stanford campus ATM. The company believes that this poses little threat because the transaction logs have limited recorded data. However, you are concerned that this data can be combined with other available data in dangerous ways, such as to learn private information. For instance, knowing someone's history of large (or small) transactions might tell you about their financial situation; knowing memberships in clubs or organizations might tell you about social relationships and webs of networks. Your task is to combine this data with another dataset you have found of public location check-ins to show the harms of a potential data breach. To aid in investigating your concerns, the bank has made the ATM transaction data available to you in the samples/bank/transactions.csv file. This file has one account transaction per line, and each transaction occurred at the Stanford campus ATM. Each line has the following format:

For example, here is one line from the file that represents a withdrawal of $15 on 2/15/21 at 4:54PM:

Transactions with the same account identifier are guaranteed to be for the same bank account, but the identifier doesn't give any information about whose account it is (intentionally done by the bank to obfuscate the data).

You have already downloaded a publicly-available location checkins dataset from an online social network, in the file samples/checkins.csv . It is too large to read through manually, so you also already created a program search_checkins that displays that checkin data and lets you search through it more easily. Run the program ( samples/search_checkins ) for instructions on how to use it.

Show the risks of dataset aggregation and express your concerns to the bank managers by answering the following questions in your readme.txt . Note that you are not expected to create any additional programs to parse or otherwise process these datasets with code - the intent is for you to skim the transactions.csv file by hand and use it along with the search_checkins program to answer the following questions.

  • a) The likely user who made multiple large transactions?
  • b) Two (there may be more, but you must identify only two) likely members of the Stanford SecurityStars Club, which has a club meeting on the 15th of each month where people must bring $15 to pay their membership dues? (Assume they are procrastinators in withdrawing the money)
  • How were you able to de-anonymize the transactions data?
  • Beyond encrypting the data, what recommendations would you give to Stanford Bank to further anonymize or obfuscate the account data in the case of accidental data breaches?
  • Use one or more of the four models of privacy discussed in lecture to explain why disclosure of the information that can be aggregated here is (or is not) a violation of privacy.

3. SecureVault

Stanford Bank is rolling out a new tool, SecureVault, to provide increased security at the master vault at each of their branches. Employees must enter four secret passwords into this program to gain access to the master vault. For extra security, the bank creates a different SecureVault program for each branch with different expected passwords; the bank headquarters does not give the source code to any of the branches; and the program triggers an alarm that notifies the central system each time an incorrect password is entered. They are confident that this means only someone who is told the password can get access, and any potential intruders will be detected by the alarm system. They have hired you to test this. Your task is to show that you can reverse engineer the program to gain access to the bank vault without being told the password, and without alerting central security.

Do not start by running SecureVault and entering passwords to "see what will happen" . You will quickly learn that what happens is the alarm goes off and it deducts points :-) When started, SecureVault waits for input and when you enter the wrong password, it will raise the alarm and notify the central system, deducting points. Thoroughly read the SecureVault information below before attempting to enter any passwords! There is a lot of information below, but it is included to help provide useful tips for you to work through this part of the assignment.

Without the original source code, all you know is that SecureVault has four "levels" of security, each with a different password. If the user enters the correct password, it deactivates the level and the program proceeds on. But given the wrong input, SecureVault raises an alarm by printing a message, alerting central security and terminating. To reach the master vault, one needs to successfully disarm each of its levels.

This is where the bank needs your help. Each of you is assigned a different generated SecureVault executable unique to you, generated just as they would be for each bank branch. Your mission is to apply your best assembly detective skills to reverse engineer the SecureVault executable to work out the input required to pass each level and reach the master vault, thus proving the insecurity of the bank's approach.

Specifically, you must fill in your input.txt file with the passwords to defuse each level in order, 1 per line, for each level you have solved. You must also answer the following questions in your readme.txt file. Make sure to verify your input.txt file (with appropriate protections!) to ensure proper formatting and that all lines are entered correctly before submitting! We will test by running ./vault input.txt on your submission, using the original SecureVault program generated for you. Here are the readme questions to work through as you go:

  • What tactics did you use to suppress/avoid/disable alarms?
  • level_1 contains an instruction near the start of the form mov $<multi-digit-hex-value>,%edi . Explain how this instruction fits into the operation of level_1 . What is this hex value and for what purpose is it being moved? Why can this instruction reference %edi instead of the full %rdi register?
  • level_2 contains a jg that is not immediately preceded by a cmp or test instruction. Explain how a branch instruction operates when not immediately preceded by a cmp or test . Under what conditions is this particular jg branch taken?
  • Explain how the loop in the winky function of level_3 is exited.
  • Explain how the mycmp function is used in level_4 . What type of data is being compared and what ordering does it apply?
  • How would you describe Stanford Bank’s trust model? (In other words: who among the bank headquarters, the bank branches, and you was trusted?) Justify your answer.

SecureVault Information

From the SecureVault assembly, you will work backwards to construct a picture of the original C source in a process known as reverse-engineering . Note that you don't necessarily need to recreate the entire C source; your goal is to work out a correct input to pass the level. This requires a fairly complete exploration of the code path you follow to deactivate the level, but any code outside that path can be investigated on a need-to-know basis. Once you understand what makes your SecureVault program "tick", you can supply each level with the password it requires to disarm it. The levels get progressively more complex, but the expertise you gain as you move up from each level increases as well. One confounding factor is that SecureVault raises an alarm whenever it is given invalid input. Each time the alarm goes off (except for a free pass the first time), it notifies central security (the CS107 staff) and points are deducted from your score. Thus, there are consequences to setting off the alarm -- you must be careful!

The bank has confirmed to you a few things about how the SecureVault programs operate:

  • If you start SecureVault with no command-line argument, it reads input typed at the console.

If you give an argument to SecureVault, such as input.txt :

SecureVault will read all lines from that file and then switch over to reading from the console. This feature allows you to store inputs for solved levels in input.txt and avoid retyping them each time.

Alarms can be triggered when executing at the shell or within gdb. However, gdb offers you tools you can use to intercept the alarms, so your safest choice is to work under gdb and employ preventive measures.

  • It is not possible to know for sure whether the central system (course staff) is notified about an alarm. You must use your investigative skills and best defensive measures!
  • The central system will give you a free pass (no point deduction) the first time they are notified about an alarm.
  • The SecureVault program in your repository was lovingly created just for you and is unique to your id. It is said that it can detect if an impostor attempts to run it and won't play along.
  • The SecureVault program is designed for the myth computers (running on the console or logged in remotely). There is a rumor that it will refuse to run anywhere else.
  • It seems as though the function names were left visible in the object code, with no effort to disguise them. Thus, a function name of initialize_vault or read_five_numbers can be a clue. Similarly, it seems to use the standard C library functions, so if you encounter a call to qsort or sscanf , it is the real deal.
  • There is one important restriction: Do not use brute force!   You could write a program to try every possible input to find a solution. But this is trouble because a) you lose points on each incorrect guess which raises an alarm, b) trying all possible inputs will take an eternity and risk saturating the network, and c) part of your submission requires answering questions that show you understanding of the assembly code, which guessing will not provide :)

Using tools such as gdb , objdump and new tools nm and strings is critical to effectively investigating and disarming each level. Once you are familiar with the tools at your disposal, first work to reliably prevent alarms from triggering , then proceed with disarming each of the levels .

Step 1: Familiarity with Tools

Here are some helpful tools to gather general information:

  • nm : use the nm utility ( nm vault ) to print what's called the "symbol table" of the executable, which contains the names of functions and global variables and their addresses. The names may give you a sense of the structure of the SecureVault program.
  • strings : use the strings utility ( strings vault ) to print all the printable strings contained in the executable, including string constants. See if any of these strings seem relevant in determining the passwords.
  • gdb lets you single-step by assembly instruction, examine (and change!) memory and registers, view the runtime stack, disassemble the object code, set breakpoints, and more. Live experimentation on the executing SecureVault program is the most direct way to become familiar in what's happening at the assembly level.
  • Compiler Explorer : pull up tools like the Compiler Explorer interactive website from lab, or gcc on myth , to compile and explore the assembly translation of any code you'd like. For example, if you're unsure how to a particular C construct translates to assembly, how to access a certain kind of data, how break works in assembly, or how a function pointer is invoked by qsort , write a C program with the code in question and trace through its disassembly. Since you yourself wrote the test program, you also don't have to fear it setting off any alarms :-) You can compile directly on myth using a copy of a Makefile from any CS107 assignment/lab as a starting point, and then use gdb or objdump to poke around.

GDB Suggestions

GDB is absolutely invaluable on this assignment. Here are some suggestions on how to maximize your use of gdb in addition to the tips in lab5 and lab6 :

  • Expand your gdb repertoire. The labs have introduced you to handy commands such as break , x , print , info , disassemble , display , watch , and stepi/nexti . Here are some additional commands that you might find similarly useful: jump , kill , and return . Within gdb, you can use help name-of-command to get more details about any gdb command. See the quick gdb reference card for a summary of many other neat gdb features.

Get fancy with your breakpoints. You can breakpoints by function name, source line, or address of a specific instruction. Use commands to specify a list of commands to be automatically executed whenever a given breakpoint is hit. These commands might print a variable, dump the stack, jump to a different instruction, change values in memory, return early from a function, and so on. Breakpoint commands are particularly useful for installing actions you intend to be automatically and infallibly completed when arriving at a certain place in the code. (hint!)

gdb kill workaround : gdb 9.2 (current version on myth as of 04/2021) has a bug when attempting to use kill in the commands sequence for a breakpoint that creates a cascade of problems --can cause gdb itself to crash or hang. The gdb command signal SIGKILL can be used as an alternate means to kill a program from a commands sequence that doesn't trip this bug.

Use a .gdbinit file . The provided file named .gdbinit in the assignment folder can be used to set a startup sequence for gdb. In this text file, you enter a sequence of commands exactly as you would type them to the gdb command prompt. Upon starting, gdb will automatically execute the commands from it. This will be a convenient place to put gdb commands to execute every time you start the debugger. Hint: wouldn't this be useful for creating breakpoints with commands that you want to be sure are always in place when running the SecureVault program? The .gdbinit file we give you in the starter repo has only one command to echo Successfully executing commands from .gdbinit in current directory . If you see this message when you start gdb, it confirms the .gdbinit file has been loaded. If you see an error message about auto-loading .gdbinit being declined when starting gdb, this means you haven't installed the CS107 GDB configuration file - see the top of this page for instructions.

  • Custom gdb commands . Use define to add your own gdb "macros" for often-repeated command sequences. You can add defines to your .gdbinit file so you have access to them in subsequent gdb sessions as well.
  • Fire up tui mode (maybe...). The command layout asm followed by layout reg will give you a split window showing disassembly and register values. This layout will display current values for all registers in the upper pane, the sequence of assembly instructions in the middle pane, and your gdb command line at the bottom. As you single-step with si , the register values will update automatically (those values that changed are highlighted) and the middle pane will follow instruction control flow. This is a super-convenient view of what is happening at the machine level, but sadly, you have to endure a number of quirks and bugs to use it. The tui mode can occasionally crash gdb itself, killing off gdb and possibly the SecureVault program while it's at it. Even when tui is seemingly working, the display has a habit of turning wonky, often fixable by the refresh command (use this early and often!) but not always. A garbled display could cause you to misunderstand the program state, misidentify where your SecureVault is currently executing, or accidentally execute a gdb command you didn't intend. Any alarm suppression mechanism that requires you, the fallible human, to take the right action at a critical time could easily be waylaid by interference, so don't attempt tui before you have invincible automatic protection against alarms. Selective use of auto-display expressions (introduced in lab6) is a great alternative with less disruption. You can exit tui using ctrl-x a and re-enter it again (this doesn't require leaving gdb and losing all your state).

Step 2: General Investigation and Preventing Alarms

Once you are familiar with the tools at your disposal, your next step is to gather general information about how the SecureVault program works to figure out how to reliably prevent alarms from triggering . There are simple manual blocks that give some measure of protection, but it is best to go further to develop an invincible guard. Feel free to use any technique at your disposal, such as leveraging gdb features, tweaking the global program state, modifying your setup, tricking the SecureVault program into running in a safe manner, etc. Avoiding the alarm entirely is one straightforward approach to ensure that we won't hear about it, but there are ways to selectively disable just the transmission portion to the central system (course staff) . Once you figure how to set up appropriate protection against alarms, you will then be free to experiment with the levels without worry. Note that the program can only trigger an alarm when it is "live", i.e., executing in shell or running with gdb .

Step 3: Disarming Levels

Your next task is to approach each level individually to figure out a password that disarms it. There may be more than one password for each level; your task is to enter your 4 passwords, one per line, starting with level 1, into your input.txt file. Here are key tips for how to approach your reverse engineering exploration:

  • Run the program live in GDB (with appropriate alarm protections!) and step through to better understand its behavior. Reading and diagramming the assembly by hand is useful to an extent, but quickly becomes infeasible with larger programs.
  • Break the assembly into chunks. For instance, if it calls any functions, that's a good stopping point to orient yourself and understand the assembly just up to that point.
  • Use gdb to verify your hypotheses. Verify key assumptions you make about the vault behavior to ensure you're on the right track. One helpful trick is you can change register contents while running gdb. E.g. if you think "I believe if %rdi stored this, it would do that", then try it! You can do p $rdi = val to change register contents mid-program. Or if you think something is a char * , cast and print it out, e.g. p (char *)$rdi .
  • Document your knowns and unknowns. If you run into a situation where you are stuck due to seemingly-conflicting assumptions, document them and re-verify them. If you have multiple conflicting assumptions, at least one must not be the case.
  • Use compiler explorer to see what code looks like in assembly. If you think you happened upon e.g. a loop, if statement, etc. try using compiler explorer to type in some code quickly and see what that code looks like in assembly. If it resembles the assembly you're seeing, perhaps that can help you better understand its structure.
  • Use library functions to your advantage. If you spot a call to what looks like a library function, it's the real deal. Use the man page for that function to learn about what parameters it takes in, what it does, and what it returns. This can give you key information about the types of data in different registers - e.g. if you see a call to strlen , then the value put into %rdi must be of type char * , and what's stored in %rax afterwards must be a size_t string length.
  • When tracing an unknown function, before dissecting its behavior first learn about the input/output of the function and what role it plays. Does it return anything? What parameters does it take in? If it has a return value, is it checked to be something in particular? Going into a function with an idea of what must be returned for you to continue with the vault can help you focus on understanding how to achieve that.

Sanity Check

The default sanitycheck test cases are ATM inputs and one test case that reports the line count of your input.txt file. This sanitycheck is configured to only allow test cases for ATM in your custom_tests file. The SecureVault executable is not run by sanitycheck.

Once you are finished working and have saved all your changes, check out the guide to working on assignments for how to submit your work. We recommend you do a trial submit in advance of the deadline to allow time to work through any snags. You may submit as many times as you would like; we will grade the latest submission. Submitting a stable but unpolished/unfinished version is like an insurance policy. If the unexpected happens and you miss the deadline to submit your final version, this previous submit will earn points. Without a submission, we cannot grade your work.

We would also appreciate if you filled out this homework survey to tell us what you think once you submit. We appreciate your feedback!

For this assignment, here is a tentative point breakdown (out of 119):

  • custom_tests (24 points) Each successful attack test case earns 8 points. We will test by running tools/sanitycheck custom_tests on your submission. Your custom_tests should contain 3 test cases, one for each ATM attack.
  • readme.txt (55 points) The written questions will be graded on the understanding of the issues demonstrated by your answers and the thoroughness and correctness of your conclusions.
  • Input.txt (40 points) Each SecureVault level you have solved earns 10 points. We will test by running ./vault input.txt on your submission. The input.txt file in your submission should contain one line for each level you have solved, starting from level 1. Malformed entries in your input.txt or wrong line-endings will cause grading failures. To avoid surprises, be sure that you have verified your input.txt in the same way we will in grading (i.e., ./vault input.txt ).
  • SecureVault alarms triggered (up to 6 points deducted) Each alarm notification (beyond the first one) that reaches the staff results in a 1 point deduction, capped at 6 points total.

Post-Assignment Check-in

How did the assignment go for you? We encourage you to take a moment to reflect on how far you've come and what new knowledge and skills you have to take forward. Once you finish this assignment, your assembly skills will be unstoppable, and you will have a better understanding of trust, privacy and security! You successfully found vulnerabilities in a program using its source and assembly, and reverse engineered a complex program without having access to its source at all. Rock on!

To help you gauge your progress, for each assignment/lab, we identify some of its takeaways and offer a few thought questions you can use as a self-check on your post-task understanding. If you find the responses don't come easily, it may be a sign a little extra review is warranted. These questions are not to be handed in or graded. You're encouraged to freely discuss these with your peers and course staff to solidify any gaps in you understanding before moving on from a task.

  • What are some of the gdb commands that allow re-routing control in an executing program?
  • What is the main indication that an assembly passage contains a loop?
  • What makes someone a trustworthy fiduciary or guardian of personal data? How and why should an institution like a bank protect the privacy of its customers?
  • Explain the difference between a function's return value and its return address.
  • Consider the mechanics of function pointer work at the assembly level. How is a call through a function pointer the same/different when compared to an ordinary function call?
  • For performance reasons, the compiler prefers storing local variables in registers whenever possible. What are some reasons that force the compiler to store a local variable on the stack instead?
  • For the instruction sequence below, what must be true about values of op1 and op2 for the branch to be taken? What changes if ja is substituted for jg ? cmp op1,op2 jg target

Best Resorts Near Electrostal History and Art Museum, Elektrostal, Russia

Resorts near electrostal history and art museum, property types, distance from, traveller rating, hotel class.

  • Best Value Properties ranked using exclusive Tripadvisor data, including traveller ratings, confirmed availability from our partners, prices, booking popularity and location, as well as personal user preferences and recently viewed hotels.
  • Traveller Ranked Highest rated hotels on Tripadvisor, based on traveller reviews.
  • Distance from Electrostal History and Art Museum See properties located closest to the place of interest first with confirmed availability for your dates from our partners.


  1. How To Art Assignment

    art assignment class 6

  2. Art Assignment Marathon

    art assignment class 6

  3. Art Class Grade 6&7 (2) part 2

    art assignment class 6

  4. Class 6 Arts and Crafts Assignment 2021 (8th week)

    art assignment class 6

  5. Art Activity-I, Class-6th.

    art assignment class 6

  6. Art & Education lesson for class 6th

    art assignment class 6


  1. Assignment project work design, school work page border design #art #drawing #youtubeshorts

  2. Art Integrated Project of Class 6th

  3. Buildings, Paintings and Books

  4. Arts Grade 6 (Quarter 2) Elements and Principles of Arts Present in Digital Arts and Graphic Design

  5. বৃষ্টি ধারায় বর্ষা আসে ১ম পরিচ্ছেদ

  6. Class 6 Bangla Assignment 21th week Class 6 assignment solution assignment Class 6 21th week


  1. Middle school art lesson plans. Grades 6-8 (ages 11-14 years).

    Draw and Paint a Sea Turtle. K-2, Grades 3-5, Grades 6-8, Grades 9-12. Middle school grades art lesson plans. Grade 6-8 (ages 11-14 years). Middle school.

  2. Art Lessons and Lesson Plans for K-12 and College

    11th grade: ages 16-17 (Junior) 12th grade: ages 17-18 (Senior) In case you missed it, the menu for all our lessons is on the side column. You can find lessons according to your grade level as well as cartoon and drama/art lessons. Building an Art Lesson Plan. Step 1: Create Learning Objectives / Goals.

  3. Educational Masterpieces: 70 Creative 6th Grade Art Projects

    Fun 6th-grade art projects. 1. Colorful Teddy Bear. Materials: Oil pastels, white piece of paper. Time Taken: 2 hours.How to do it: Draw a teddy bear on the paper. Use the oil pastels to fill in different parts of the bear with different colors, highlighting the concept of color theory. 2. Picasso Portraits.

  4. 6th Grade Art Projects: Paintings, Floor Plans, Pop Arts, DIYs, And

    10. Still Life Jar. Creating this still life jar is reminiscent of sketchbook drawings. This is a great 6th grade art project because it allows students to practice a variety of vital skills. It looks like a fancy project but the process is easy to achieve for your young learners!

  5. 6th Grade Art Lessons Archives

    Deep Space Sparkle offers art lesson plans and teaching resources that will help you teach art to kids, even if you aren't a great artist. You collect the supplies, round up the artists and watch the creativity unfold. We are located at: 1222 State St. Ste #250 Santa Barbara, CA 93101

  6. 7 Easy Art Lessons For When You're in a Pinch

    The following seven activities are easily adaptable for various grade levels. They also require minimal material prep and use supplies you likely have in your art room. 1. Personal Soda Can Label. We live in a consumer world where new beverages, food, candy, and snacks are constantly introduced to the market.

  7. 6th Grade Art Lessons and Projects

    Surreal Rooms and sketchbook assignment #5 are due next class! April 13-16: Begin CLAY COIL BOWLS! Sketchbook assignments #5 and #6 are assigned. See images below. ... IF YOU HAVE MISSING SILLY DRAWING ASSIGNMENTS, MR. THIELE IN ROOM ART 3 CAN CHECK THEM IN FOR YOU. HE HAS MY LIST AND IS EXPECTING TO SEE YOU. ASK THE SUB WHEN READY TO SHOW YOUR ...

  8. 27 Art Activities and Lessons to Try at Home

    Have your students create stop-motion videos using clay-like material. This can be done with clay, play-doh, or even cookie dough. Paper Pottery. Cardboard Sculptures. Here are some additional clay recipes your students can try to make their own homemade clay: Paper Clay. Salt Dough. Baking Soda Clay.

  9. Art Lesson Plans for Busy Art Teachers

    The Home of Quality Art Lesson Plans. This is just a small snapshot of the hundreds of art lesson plans available on The Arty Teacher website. Each section highlights some of the best-selling art lessons for that theme. Remember, you don't have to pay for these resources individually as with a subscription you can download 10 resources a month.

  10. Art Printables, Worksheets, and PowerPoints

    The pack includes 15 no-mess, ready-to-go art connection activities (with PowerPoints!) featuring our best worksheets that are paired with 5 perfectly curated artworks each (75 total artworks!). The worksheets are ready to print. The PowerPoints are ready to show. Just open the files, pass out the worksheet, and you're ready to go!

  11. Fun Assessment Ideas for Art Lessons

    Whole class assessment ideas for art lessons. Secret Superstar 🤐 🌟 This is a really fun activity that is completely student-led and a lovely way to finish off a lesson. Assign one student with a 'secret job' to find the class superstar. I usually give this job to students who thrive off doing jobs around the classroom or need a bit of ...

  12. Art 1. Lesson plans for beginner Art program.

    6. Unless an assignment specifically requires copying, it will be interpreted in the same manner as plagiarism. 7. You are also graded for your in-class studio work. CLASSROOM RULES. 1. Food, drinks, candy, gum are not allowed in the Art rooms. A bottle of WATER is permitted in room 206 (only). 2. Cell phones are not allowed at any time.

  13. 36 Elementary Art Lessons for Kids

    35 Popsicle Stick Crafts for Kids. 36 Elementary Art Lesson Plans for Kids. Wassily Kandinsky Art Lesson + Circle Collage. Jackson Pollock Art Lesson & Activity. Alien Name Creatures. Piet Mondrian Art Lesson + Activity. Styrofoam Printing. Pointillism Art for Kids. Collaborative Watercolor Painting.

  14. Art lesson plans by age or grade or level.

    What to Expect: 5-8 years: Primary grade children (K-2; ages 5-8yrs) are beginning to understand that art is a way to communicate. They consciously create symbols and their pictures feature bold, direct and flat images. There is little detail shown to realistic, spatial concepts. They are eager to share their art with others.

  15. 50 Inspiring Fourth Grade Art Projects for Creative Kids

    8. Make Dean Russo-inspired animals. Dean Russo's vivid pet portraits have become incredibly popular, and they're exactly the kind of style that appeals to kids. This is another fourth grade art lesson that's perfect for using bingo daubers to make the bold outlines. Learn more: Dean Russo-Inspired Animals.

  16. High School Art lessons

    Seven Ages Tattoos. Quick Lessons Using a Camera. Aluminum and Glue Texture. Your Eye From a Mirror. 1, 2, and 3-Point Perspective. Gesture Drawing. Watercolor Techniques. Exercise the Right Side of the Brain. Transfer Enriched Self-Portrait.

  17. Assignments

    Assignments. SINCE 2013, The Art Assignment has been gathering assignments from a wide range of artists, Each commissioned to create a prompt based on their own way of working. you don't need to have special skills or training in order to do them, and The only materials you'll need are ones you probably already have or can source for free.

  18. Art classes with lesson plans and tutorials.

    6. Unless an assignment specifically requires copying, it will be interpreted in the same manner as plagiarism. 7. You are also graded for your in-class studio work. self-guided adult art classes. Paid online self-guided courses: studio 1. Complete self-guided introductory course for absolute beginners...

  19. Drawing & Painting. Lesson plans for advanced art class

    The class setting is similar to an art college studio class. All advanced art students are welcome! It is recommended to take Drawing & Painting, along with Advanced Drawing & Painting prior to enrolling in AP Studio. semester 1 assignments: ... 6. Unless an assignment specifically requires copying, it will be interpreted in the same manner as ...

  20. Elektrostal

    Elektrostal, city, Moscow oblast (province), western Russia.It lies 36 miles (58 km) east of Moscow city. The name, meaning "electric steel," derives from the high-quality-steel industry established there soon after the October Revolution in 1917. During World War II, parts of the heavy-machine-building industry were relocated there from Ukraine, and Elektrostal is now a centre for the ...

  21. Electrostal History and Art Museum

    19 reviews. #3 of 12 things to do in Elektrostal. Art MuseumsHistory Museums. Write a review. All photos (22) Revenue impacts the experiences featured on this page, learn more. The area. Nikolaeva ul., d. 30A, Elektrostal 144003 Russia. Reach out directly.

  22. CS107 Assignment 5: Banking on Security

    A few reminders: The working on assignments page contains info about the assignment process.; The collaboration policy page outlines permitted assignment collaboration, emphasizing that you are to do your own independent thinking, design, writing, and debugging. Even without any code being submitted, you should not be doing any joint debugging/development, sharing or copying written answers ...

  23. Flag of Elektrostal, Moscow Oblast, Russia : r/vexillology

    Animals and Pets Anime Art Cars and Motor Vehicles Crafts and DIY Culture, Race, and Ethnicity Ethics and Philosophy Fashion Food and Drink History Hobbies Law Learning and Education Military Movies Music Place Podcasts and Streamers Politics Programming Reading, Writing, ...

  24. Resorts near Electrostal History and Art Museum

    Resorts near Electrostal History and Art Museum, Elektrostal on Tripadvisor: Find 1,358 traveller reviews, 1,950 candid photos, and prices for resorts near Electrostal History and Art Museum in Elektrostal, Russia. ... All Elektrostal Hotels Elektrostal Hotel Deals By Hotel Type By Hotel Class Popular Elektrostal Categories More Elektrostal ...