Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions _data/chapters.json
Original file line number Diff line number Diff line change
Expand Up @@ -6480,13 +6480,13 @@
"meetings": 0
},
{
"name": "Lahore",
"name": "OWASP LAHORE",
"url": "https://owasp.org/www-chapter-lahore/",
"created": "2021-09-15",
"updated": "2021-10-27",
"build": "built",
"codeurl": "https://github.com/OWASP/www-chapter-lahore",
"title": "OWASP Lahore",
"title": "OWASP LAHORE",
"level": "-1",
"type": "",
"region": "Asia",
Expand Down
51 changes: 51 additions & 0 deletions _posts/2026-04-21-owasp-lahore-event-wrapup.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
---

date: 2026-04-21 00:00:00-0500
categories: blog
author: OWASP LAHORE Chapter
layout: blogpost
title: "OWASP LAHORE: Last Event Wrap-Up - 300+ Participants and Counting"
excerpt_separator: <!--more-->

---

OWASP LAHORE's most recent chapter event went smoothly and drew more than 300 participants - our largest turnout to date. From students to industry veterans, attendees filled every seat for an evening of keynotes, panel discussions, and networking focused on modern application security and AI safety.

<!--more-->

### Event Highlights

The event featured prominent speakers discussing critical topics:

- **AI Security Summit 2026** — Celebrating 25 years of OWASP with industry leaders (featured speaker on stage)
- **AI in Cybersecurity** — Exploring opportunity, risk, and responsibility across three panel discussions
- **Genai.AgentiCal** — Panel addressing evolving threats in AI agent security
- **300+ Security Leaders** — One critical conversation bringing together the Lahore security community

### Speakers & Panelists

Our event brought together security researchers, enterprise leaders, government officials, and technologists. Speakers shared their expertise on:

- OWASP Top 10 and secure coding practices
- DevSecOps and threat modeling in production environments
- AI safety, AI security, and emerging threats
- Career opportunities and skill development in cybersecurity

### Attendee Impact

- **300+ participants** including students, professionals, CISOs, and security researchers
- Diverse demographic representation (including strong participation from women in security)
- Attendees ranged from junior developers to senior leadership
- High engagement during Q&A and networking sessions

### Sponsors & Partners

Special thanks to **Tkxel** and other sponsors who made this large-scale event possible.

### What's Next

We are already planning our next gathering with expanded workshop tracks and hands-on labs. If you would like to **sponsor**, **support an upcoming event**, or **collaborate** with OWASP LAHORE, please use our new request form:

**[Submit a Sponsorship / Collaboration Request](/owasp-lahore-request/)**

Stay tuned for the agenda and dates of our next event — and follow [OWASP LAHORE](https://owasp.org/www-chapter-lahore/) for updates!
32 changes: 32 additions & 0 deletions assets/images/content/owasp-lahore/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# OWASP LAHORE Hero Image Assets

The homepage (`/index.md`) uses `owasp-lahore-hero.jpg` from this folder as
its hero background. That final image is produced by stitching the two
event photos together.

## Files expected here

| File | Description |
|---------------------------|------------------------------------------------------------------|
| `OWASP-6.jpg` | LEFT half — "Global Expertise. Stronger Together." group photo |
| `OWASP-7.jpg` | RIGHT half — group photo with OWASP LAHORE + tkxel logos |
| `owasp-lahore-hero.jpg` | GENERATED — combined side-by-side panoramic hero |
| `combine_hero.py` | Script that produces `owasp-lahore-hero.jpg` from the two halves |

## How to generate the hero image

1. Save the two source photos as `OWASP-6.jpg` and `OWASP-7.jpg` in this
directory (`assets/images/content/owasp-lahore/`).
2. Run:

```bash
cd assets/images/content/owasp-lahore
python3 combine_hero.py
```

(Requires `Pillow`: `pip3 install Pillow` if it is not installed.)

3. Commit all three files (`OWASP-6.jpg`, `OWASP-7.jpg`,
`owasp-lahore-hero.jpg`) and push.

The homepage will render the combined image as a full-width background.
52 changes: 52 additions & 0 deletions assets/images/content/owasp-lahore/combine_hero.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
#!/usr/bin/env python3
"""
Combine OWASP-6.jpg and OWASP-7.jpg into a single panoramic hero image.

Expected input files (place in the same directory as this script):
- OWASP-6.jpg -> LEFT half ("Global Expertise. Stronger Together.")
- OWASP-7.jpg -> RIGHT half (group photo with OWASP LAHORE + tkxel logos)

Output:
- owasp-lahore-hero.jpg (side-by-side, same height)

Usage:
cd assets/images/content/owasp-lahore
python3 combine_hero.py
"""
from pathlib import Path
from PIL import Image

HERE = Path(__file__).parent
LEFT = HERE / "OWASP-6.jpg"
RIGHT = HERE / "OWASP-7.jpg"
OUT = HERE / "owasp-lahore-hero.jpg"


def main() -> None:
if not LEFT.exists() or not RIGHT.exists():
missing = [str(p) for p in (LEFT, RIGHT) if not p.exists()]
raise SystemExit(f"Missing input file(s): {missing}")

left = Image.open(LEFT).convert("RGB")
right = Image.open(RIGHT).convert("RGB")

target_height = min(left.height, right.height)

def resize_to_height(img: Image.Image, h: int) -> Image.Image:
if img.height == h:
return img
new_width = int(img.width * (h / img.height))
return img.resize((new_width, h), Image.LANCZOS)

left = resize_to_height(left, target_height)
right = resize_to_height(right, target_height)

combined = Image.new("RGB", (left.width + right.width, target_height))
combined.paste(left, (0, 0))
combined.paste(right, (left.width, 0))
combined.save(OUT, "JPEG", quality=90, optimize=True)
print(f"Wrote {OUT} ({combined.size[0]}x{combined.size[1]})")


if __name__ == "__main__":
main()
4 changes: 2 additions & 2 deletions index.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@ spnews: False

<!-- Rebuild Site Tag 190 -->

<div class="homepage-promo" style='background: url(/assets/images/content/ams-preso-new.jpg) no-repeat center center;background-size: cover;'>
<!--<img src="/assets/images/content/ams-preso-new.jpg" alt="Presentation at Global AppSec AMS">-->
<div class="homepage-promo" style='background: url(/assets/images/content/owasp-lahore/owasp-lahore-hero.jpg) no-repeat center center;background-size: cover;background-color:#000;min-height:420px;'>
<!-- Hero image: OWASP LAHORE x tkxel - AI Security Summit 2026, "Global Expertise. Stronger Together." -->
</div>

<hr class="mobile">
Expand Down
65 changes: 65 additions & 0 deletions pages/owasp-lahore-request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
---

layout: col-generic
title: OWASP LAHORE - Sponsor, Support & Collaborate
permalink: /owasp-lahore-request/

---

# Sponsor, Support an Event, or Collaborate with OWASP LAHORE

Want to **sponsor**, **support an upcoming event**, or **collaborate** with the OWASP LAHORE chapter? Fill out the form below with your request title and details, then click **Submit**. Your message will be emailed directly to the chapter organizer.

<form action="https://formsubmit.co/syedasadrazadevops@gmail.com" method="POST" class="lahore-request-form">
<!-- FormSubmit configuration -->
<input type="hidden" name="_subject" value="OWASP LAHORE - New Sponsor/Collaborate Request">
<input type="hidden" name="_template" value="table">
<input type="hidden" name="_captcha" value="true">
<input type="text" name="_honey" style="display:none">

<p>
<label for="name"><strong>Your Name</strong></label><br>
<input type="text" id="name" name="name" required style="width:100%;padding:8px;">
</p>

<p>
<label for="email"><strong>Your Email</strong></label><br>
<input type="email" id="email" name="email" required style="width:100%;padding:8px;">
</p>

<p>
<label for="organization"><strong>Organization (optional)</strong></label><br>
<input type="text" id="organization" name="organization" style="width:100%;padding:8px;">
</p>

<p>
<label for="request_type"><strong>Request Type</strong></label><br>
<select id="request_type" name="request_type" required style="width:100%;padding:8px;">
<option value="">-- Select one --</option>
<option value="Sponsor">Sponsor</option>
<option value="Support an Event">Support an Event</option>
<option value="Collaborate">Collaborate</option>
<option value="Other">Other</option>
</select>
</p>

<p>
<label for="title"><strong>Request Title</strong></label><br>
<input type="text" id="title" name="title" required style="width:100%;padding:8px;">
</p>

<p>
<label for="details"><strong>Request Details</strong></label><br>
<textarea id="details" name="details" rows="8" required style="width:100%;padding:8px;"></textarea>
</p>

<input type="hidden" name="_next" value="https://owasp.org/owasp-lahore-request/?sent=1">

<p>
<button type="submit" class="cta-button dark">Submit Request</button>
</p>
</form>

---

**Note:** The very first submission to this form will trigger a one-time confirmation email to the chapter organizer. After that confirmation, all future requests will be delivered directly to **syedasadrazadevops@gmail.com**.